Jenkins 加入android打包项目


 虽然公司的JAVA打包发布已经上线使用Jenkins好久了,但是对于APP的打包编译一直都是在APP开发自己打包,听说每次打包都要20分钟左右,而且打包的过程中机器会很卡,直接处于等待状态的话那就影响了工作了。

所以在考虑使用jenkins加入对安卓app的打包(苹果的还未有研究)。本次使用的是测试环境:

Jenkins:2.7.4

centos:7.2.1511

安装过程很简单这里只记录一些配置方法:

系统需要安装并配置以下环境:

JDK 环境要1.8以上,不然新版本的Jenkins不支持。

以下配置加入到系统的环境变量中:

  1. [root@jenkins ~]# tail -5 /etc/profile 
  2. export JAVA_HOME=/usr/local/java 
  3. export GRADLE_HOME=/usr/local/gradle 
  4. export ANDROID_HOME=/usr/local/android-sdk 
  5. export MAVEN_HOME=/usr/local/maven 
  6. export PATH=$PATH:$JAVA_HOME/bin:$GRADLE_HOME/bin:$ANDROID_HOME/tools:$MAVEN_HOME/bin 

 

其实比较麻烦的就是安装android-sdk的过程;因为版本的不同,需要根据打包时提示的版本安装对应的SDK包即可;

以下几个命令就是安装相应的sdk工具包时用到的。

  1. 列出目前可以安装所SDK包: 
  2. android list sdk -u 
  3. 如果想看到更详细的信息: 
  4. android list sdk -u -e 
  5. 如果想安装全部SDK包: 
  6. android update sdk -u 
  7.  
  8.  
  9. #列出所有的android 工具版本列表: 
  10. android list sdk --all 
  11. #安装指定版本[后面的13就是列表中的序列号] 
  12. android update sdk -u --all --filter 13 

Jenkins上的几张截图,加入一个Git代码版本的选择。

 
传入上面定义的构建参数:version
 
 
构建的命令中,我加入了以下两个,主要是在项目里面app开发组没有定义死环境变量的,还有就是软件版本的不一致,有些人使用的版本不同。
因为我自己在做实验的时候踩了好多坑。
 

 

就是上面这样的配置,就可以实现简单的打包apk了。当然这并不是真正的环境,可能还存在签名等问题。

个人认为,如果app开发组能提供一些资讯可能就更方便入手了。

测试环境在虚拟机上,2G内存,打个包用了13分钟左右。。。。