近期Android的小伙伴们也开始要发测试版本了,由于之前搭建了Jenkins + fastlane自动化打包iOS应用 ,所以这次就想一起解决Android的问题
最先想到的方案当然就是跟iOS一样使用fastlane,查了下相关资料发现fastlane有点重iOS轻Android,于是放弃。找到代替方案,直接使用gradle的方式打包,当然这边自动化分发也只是通过curl命令分发到蒲公英平台。所以本文的Jenkins环境还是在Mac OS X 下,Mac下安装Jenkins的坑已经踩过 有需要的可以再去看下之前的文章Mac下使用Jenkins踩坑 Fastlane自动化iOS打包
准备工作- 安装Jenkins Android Lint插件
- 配置Android sdk 路径
在 系统管理-系统设置
中添加全局变量 ANDROID_HOME
位置可以在Android studio - preference 中找到
-
Jenkins中新建自由风格的项目
-
配置好源码
-
添加构建环境
- 填写参数
- 填写参数
找到build.gradle路径
至此就已经搞定编译,点击构建会生成 output路径 上传指定apk到蒲公英
- 添加curl命令
curl -F "file=@需要上传的APK路径" -F "uKey=蒲公英userKey" -F "_api_key=蒲公英apiKey" http://www.pgyer.com/apiv1/app/upload
如果我们需要一个签名的包,我们需要在Androidstudio的build.gradle中作如下配置:
-
可能会出现Gradel command not found
在 .bash_profile 中添加GRADLE_HOME
sudo vi ~/.bash_profile
最后添加两行
export GRADLE_HOME=/Applications/Android\ Studio.app/Contents/gradle/gradle-4.4
export PATH=${PATH}:${GRADLE_HOME}/bin
保存后执行
source ~/.bash_profile
-
还会可能会出现如下的报错
在全局配置工具中添加Gradle
添加Gradle
回到项目的构建配置中将default更改成刚刚添加的gradle
目前打包只碰到这些问题,有问题再交流~~~