Android Studio如何配置CURL指令一键打包apk上传至蒲公英

Android Studio如何配置CURL指令一键打包apk上传至蒲公英

  • 第一步:在所需要打包的模块build.gradle文件中加入如下代码:

     android{
        buildTypes {
             //配置apk名称
            android.applicationVariants.all { variant ->
                variant.outputs.all {
                    outputFileName = getApkName()
                }
            }
        }
    }
    android{
    
          }
    
    //------------以下代码用于配置一键上传蒲公英----------------
    //获取apk路径
    def getApkFullPath() {
        return rootDir.getAbsolutePath() + "/app/build/outputs/apk/release/" + getApkName()
    }
    
    //此处可修改所打包的apk文件名
    def getApkName() {
        return "update-app-example-v${android.defaultConfig.versionName}-${releaseTime()}.apk"
    }
    
    //设定添加打包时间
    static def releaseTime() {
        return new Date().format("yyyy-MM-dd", TimeZone.getTimeZone("UTC"))
    }
    
    //将密钥存在本地 防止泄露 local.properties 在Git的时候不会被上传
    def readProperties(key) {
        File file = rootProject.file(‘local.properties‘)
        if (file.exists()) {
            InputStream inputStream = rootProject.file(‘local.properties‘).newDataInputStream()
            Properties properties = new Properties()
            properties.load(inputStream)
    
        if (properties.containsKey(key)) {
            return properties.getProperty(key)
        }
    }
    
    }
    
    //描述log
    static def getUpdateDescription() {
        return ‘1.修复一些bug;\n2.提升用户体验!‘
    }
    //执行打包上传任务
    task("uploadApk") {
        doLast {
            def command = "curl -F \"[email protected]${getApkFullPath()}\" -F \"uKey=${readProperties(‘pgyer.userKey‘)}\" -F \"_api_key=${readProperties(‘pgyer.apiKey‘)}\" -F \"buildUpdateDescription=${getUpdateDescription()}\" https://www.pgyer.com/apiv2/app/upload"
            try {
                exec {
                    ExecSpec execSpec ->
                        executable ‘curl‘
                        args = [‘-F‘, "[email protected]${getApkFullPath()}", ‘-F‘, "uKey=${readProperties(‘pgyer.userKey‘)}", ‘-F‘, "_api_key=${readProperties(‘pgyer.apiKey‘)}", ‘-F‘, "buildUpdateDescription=${getUpdateDescription()}", "${readProperties(‘pgyer.uploadurl‘)}"]
                }
                println "uploadApk success~"
            } catch (Exception e) {
                e.printStackTrace()
            }
        }
    }
    
    uploadApk.dependsOn("assembleRelease")
  • 第二步:在项目根目录下local.properties文件中配置如下代码:

    #蒲公英配置  apiKey和userKey替换成自己的就行
    pgyer.apiKey=711ea731f7e59d20a6279a884a2c76f8
    pgyer.userKey=61fedceea73bac2bdda4ac76kl8dbcac0
    pgyer.uploadurl=https://www.pgyer.com/apiv2/app/upload
  • 最后:一键上传即可,如图

  • 小结:以上是基本配置,如果嫌麻烦可以直接下载Studio插件 ,在Plugin页面之间搜索pgy即可

关于我

微信公众号:infree6 或者直接扫码

原文地址:https://www.cnblogs.com/songjianzaina/p/11286945.html

时间: 2024-08-05 14:30:01

Android Studio如何配置CURL指令一键打包apk上传至蒲公英的相关文章

jenkins 之 iOS 打包及上传至蒲公英

前提条件 iMAC(要 Mac OS 系统,安卓 和 苹果 可以在同一台电脑上打包) xcode 最新版,要已安装对应的开发证书(生成一个 Ad-Hoc 类型的包就有了) brew(当前管理员账户安装) jenkins (当前管理员账户用 brew 安装,然后进入 jenkins 时安装推荐的插件) git 命令行工具(拉取代码使用) gitlab 代码仓库(项目的代码仓库) 任务配置 1. jenkins 新建自由风格的项目 2. 源码管理,使用 账号 和 密码拉取代码(有可能会提示无法获取,

android studio+grade配置构建

Android 构建系统编译应用资源和源代码,然后将它们打包成可供您测试.部署.签署和分发的 APK.android Studio 使用 Gradle 这一高级构建工具包来自动化执行和管理构建流程,同时也允许您定义灵活的自定义构建配置.每个构建配置均可自行定义一组代码和资源,同时对所有应用版本共有的部分加以重复利用.Android Plugin for Gradle 与这个构建工具包协作,共同提供专用于构建和测试 Android 应用的流程和可配置设置. Gradle 和 Android 插件独

Android Studio最新配置教程2016

http://blog.csdn.net/wen_demo 一.Android studio 基本简单介绍 1.Android studio和Eclipse的差别: 1.Studio中有Project和Module的概念,Studio中一个窗体仅仅能有一个项目,即Project,代表一个workspace.可是一个Project能够包括多个Module.比方你项目引用的Android Library, Java Library等,这些都能够看做是一个Module. 2.文件夹中将java代码和资

Android Studio环境下代码混淆+签名打包

Android Studio环境下代码混淆+签名打包 作者 Mr_冯先生 关注 2016.08.21 01:10 字数 1040 阅读 734评论 5喜欢 34 注:本文使用的Android Studio版本是 2.1.2. 做公司项目,需要对项目进行代码混淆+签名打包,然后就各种搜集查看资料,算是小有成果吧.周末无事就想着总结一下以后再用可做参考.如有不对的地方烦请各位大神指导-- 一.代码混淆 android studio进行代码混淆需要在两个地方做配置:1.添加自己的混淆规则到对应Modu

Android Studio安装配置详细步骤(图文)

Android studio 教程 为什么要使用Android Studio Android Studio是谷歌推出了新的Android开发环境,其重要性可想而知! 1. 集成了Gradle 打包工具 2. 所见即所得的效果 3. 可拖拽的UI操作 4. 代码自动补全 5. 更多的操作接口 6. Google Cloud的集成 7. 全新的JUnit 8. Maven仓库的集成 下载 到 https://developer.android.com/sdk/index.html (需翻墙)或者ht

Android Studio最新配置教程2015

http://blog.csdn.net/wen_demo 一.Android studio 基本简介 1.Android studio和Eclipse的区别: 1.Studio中有Project和Module的概念,Studio中一个窗口只能有一个项目,即Project,代表一个workspace,但是一个Project可以包含多个Module,比如你项目引用的Android Library, Java Library等,这些都可以看做是一个Module. 2.目录中将java代码和资源文件(

关于android studio的配置JAVA_HOME的问题

关于Android Studio的配置JAVA_HOME的问题 在配置环境变量时,我们一般配置JAVA_HOME的目录值为 C:\Program Files\Java\jdk1.8.0_45\bin 但是我们在打开Android Studio的时候会出现问题,无法打开,提示找不到对应的JVM,此时,我们只需要将值改为 C:\Program Files\Java\jdk1.8.0_45 即可,可能程序会自动去默认的bin目录中寻找相应的程序,因此,以后我们将JAVA_HOME的值配置为上述即可.

在ADT和Android Studio中配置和使用Git

株洲新程IT教育 李赞红 搞了半天,图片居然没上传,直接下载吧:http://download.csdn.net/detail/lifenote/9500827 1.版本控制的作用 A.版本控制 B.项目的基本管理 C.团队协作开发 D.历史记录 E.文件跟踪 2.两个常用的GIT服务商 A.国外:github   https://github.com/ B.国内:[email protected]  http://git.oschina.net/(本文使用这个) 3.GIT的工作原理 A.数据

Android Studio安装配置

Android Studio安装配置: 1.Android Studio可以在官网上下载,由于懒得原因,我直接在百度中心下载. 下载地址:http://rj.baidu.com/soft/detail/27390.html?ald 2.本机系统为window 8 64位,因此,Android Studio默认为64位,由于原有的开发环境JDK1.7是32位的,因此,需要做以下步骤: a.下载安装JDK64位. b.将JDK环境变量指向64位的JDK,并在path中将JDK配置移动到最前位置. c