jenkins+Android+gradle持续集成

时间:2023-03-08 15:37:08
jenkins+Android+gradle持续集成

  本文Android自动化打包采用jenkins+gradle+upload to pyger的方式来实现,job执行完后只需要打开链接扫描二维码即可下载apk。

一、环境准备

1.下载Android SDK(最好下载开发工具Android Studio)

2.安装jenkins

二、配置jenkins变量

配置Android自动打包之前需要下载两个插件,gradle和upload to pyger。

1.安装gradle插件:系统管理->管理插件

jenkins+Android+gradle持续集成

2.安装upload_to_pyger插件:系统管理->管理插件

jenkins+Android+gradle持续集成

3.配置gradle插件,gradle版本根据需要选择,点自动安装:系统管理->全局工具配置

jenkins+Android+gradle持续集成

4.设置环境变量:android-sdk 和 java 的环境变量。(1)键:ANDROID_HOME  值:D:\Program Files (x86)\Android\android-sdk(上文下载的SDK)。(2)键:JAVA_HOME  值:D:\Program Files\Java\jdk1.8.0_181

jenkins+Android+gradle持续集成

三、配置jenkins job

1.新建一个job,选择“构建一个*风格的软件项目”

jenkins+Android+gradle持续集成

2.源码管理配置git地址信息。

jenkins+Android+gradle持续集成

3.构建选择“invoke Gradle script”

jenkins+Android+gradle持续集成

4.选择Gradle所需的版本号

# 清除app目录下.apk文件
app:clean
# 打包Release版本的包
app:assembleRelease

jenkins+Android+gradle持续集成

# gradle常用命令
gradle clean # 清除/app目录下的build文件夹
gradle build # 检查依赖并编译打包,Debug和Release都打出来
gradle assembleDebug # 编译并打Debug包
gradle assembleRelease # 编译并打Release的包
gradle installRelease # Release模式打包并安装
gradle uninstallRelease # 卸载Release模式包

5.继续添加构建步骤:

jenkins+Android+gradle持续集成

6.Upload to pgyer

jenkins+Android+gradle持续集成

这里参考GitHub上的参数定义:

需要填写的字段 字段的解释
pgyer uKey (APIV1必填,APIV2无此参数) 用户Key,用来标识当前用户的身份,
对于同一个蒲公英的注册用户来说,这个值在固定的。
点击获取_ukey
pgyer api_key (必填) API Key,用来识别API调用者的身份,
如不特别说明,每个接口中都需要含有此参数。
对于同一个蒲公英的注册用户来说,这个值在固定的。
点击获取_api_key
scandir (必填) 需要上传的apk/ipa文件所在的文件夹或者父文件夹,
当前默认路径是${WORKSPACE},它代表了当前项目的绝对路径。
这个功能的实现使用了ant框架的DirectoryScanner类,点击查看DirectoryScanner类
这个字段就是DirectoryScanner类中的basedir方法的参数点击查看basedir方法
file wildcard (必填) 需要上传的apk/ipa文件的名字,支持通配符,
就像这样: **/Test?/*.apk,
这个功能的实现使用了ant框架的DirectoryScanner类,点击查看DirectoryScanner类
这个字段就是DirectoryScanner类中的includes方法的参数,点击查看includes方法
installType (选填) 应用安装方式,值为(1,2,3)。
1:公开,2:密码安装,3:邀请安装。
默认为1公开
password (选填) 设置App安装密码,如果不想设置密码,请传空字符串,或不传。
updateDescription (选填) 版本更新描述,请传空字符串,或不传。
qrcodePath (选填) 如果你需要下载蒲公英返回的二维码,那么这里填写二维码的存储路径,
如果你不需要下载,那么你不需要在这里填写任何内容。
envVarsPath (选填) 如果你想存储蒲公英返回的上传信息,那么这里填写保存信息的文件路径,
如果你不需要保存,那么你不需要在这里填写任何内容。

GitHub链接:https://github.com/jenkinsci/upload-pgyer-plugin/blob/master/README_cn.md

最后我的配置如下:

jenkins+Android+gradle持续集成

上传完成后在蒲公英平台找到下载链接,以后每次构建后只需要打开链接就能下载apk。

7.构建成功

jenkins+Android+gradle持续集成

打开下载链接,可以看到apk在2分钟前上传了,扫描二维码即可下载APP。

jenkins+Android+gradle持续集成

四、总结

  在配置Android APP自动化打包时候踩过很多坑,SDK里有些build tool和api没有下全,所以我建议下载AS,遇到问题自我分析和调试。