Android使用Jenkins打包上传蒲公英

Android环境变量

系统管理 - > 全局属性-> 配置环境变量


设置环境变量
/Users/superman/Library/Android/sdk

系统管理 - > 全局工具配置-> 配置JDK、gradle,git等


jdk
/Applications/Android Studio.app/Contents/jre/jdk/Contents/Home
git
/usr/local/bin/git
gradle

我此处用的是6.5版本,根据自己APP来设置

/Users/superman/.gradle/wrapper/dists/gradle-6.5-all/2oz4ud9k3tuxjg84bbf55q0tn/gradle-6.5

通用

通用

留8个包。。。

源码管理

添加账号就行了

修改添加的账号:系统管理 -> Manage Credentials Configure credentials

构建触发器

构建触发器

每5分钟检测一次代码有新改动就构建

H/5 * * * * 

周一到周五每天10点到晚上8点每隔4小时构建一次

H 10-20/4 * * 1-5
语法表

第一个是代表分钟 H 表示随机
第二个是代表小时 9-15/4 9点到下午三点期间的每隔4个小时
第三个是代表天 * 任意一天
第四个是代表月份 1-11 表示1到11月份
第五个是代表星期 1-5 表示工作日

没有用到 H 随机的话,不要加括号 
H(9-18) 9点到18点 中随机的一个点 
eg: 
* * * * * 表示任何一个时间段,同一个时间都可能会触发执行。不建议使用 
H/30 * * * * 表示每天每隔 30分钟构建一次 
H 4-19/3 * * * 表示,一天的凌晨点到下午7点,每隔3个小时构建一次 
* * 3-5 * * 表示,每个月的3号,4号,5号 都会被构建,具体时间未知 
* * * * 1-5 表示,工作日时会构建,具体时间未知 
H/30 8-19/3 1-28 1-11 1-5 表示 在1月到11月中的1号-28号,每个工作日,早晨的8点到下午7点每隔3.5个小时会触发构建

构建

构建

两种方式上传安装包到蒲公英

蒲公英文档

第一种:


蒲公英Jenkins插件

第二种:
使用shell命令:

curl -F "file=@/tmp/example.apk" -F "uKey=" -F "_api_key=" https://qiniu-storage.pgyer.com/apiv1/app/upload 

命令上传
curl -F "file=@apk/com.bfonline.online1.0.0_server-release.apk" -F "uKey=c263d105c08915a0fb1fa7dec613ef7a" -F "_api_key=5ef6d1c5c5bc931fc5245acdecfb128d" https://qiniu-storage.pgyer.com/apiv1/app/upload

构建后操作

归档

首先在gradle里配置打包完移动到apk目录下

applicationVariants.all {
        //判断是release还是debug版本
        def buildType = it.buildType.name
        def fileName
        //下面的channel是获取渠道号
        def channel = "server"
        //只对Release包起作用,如果不是Release包则不变更输出路径,否则可能导致AS无法自动安装debug包。
        if (buildType == "release") {
            it.getPackageApplication().outputDirectory = new File(project.rootDir.absolutePath + "/apk")
        }
        it.outputs.each {
            //只对Release包起作用,如果不是Release包则不变更名称。
            if (buildType == "release") {
                //我此处的命名规则是:渠道名_项目名_版本名_创建时间_构建类型.apk
                fileName = "com.bfonline.online${defaultConfig.versionName}_${channel}-${buildType}.apk"
                //重新对apk命名。
                it.outputFileName = fileName
            }
        }
    }

企业微信通知

webhook插件

企业微信通知

也可以在蒲公英中设置webhook

你可能感兴趣的:(Android使用Jenkins打包上传蒲公英)