在这篇文章中,我们将介绍如何使用Jenkins构建安卓应用。首先,你需要安装Jenkins,你可以参考这里的教程进行安装:Jenkins安装教程。在这篇文章中,我们假设你的项目使用例如Git或Subversion之类的版本管理工具。接下来,我会花比较大的篇幅讲解Gradle构建系统,但是你也可以在这篇文章的指导下使用Ant进行安卓应用的构建。
安装必须的软件
首先,你需要安装Android SDK,可以通过Android SDK的下载页找到需要的资源,然后点击” Download for other platforms” 并复制Linux版本的链接。
复制完链接之后,切换到SSH回话,进入到/opt目录,然后下载Android SDk:
cd /opt
wget
然后执行下面的命令:
wget http://dl.google.com/android/android-sdk_r22.3-linux.tgz
解压下载的文件:
tar zxvf
你可以将刚刚下载的文件删除:
rm
然后,设置相应的环境变量参数,编辑/etc/profile.d/android.sh (nano /etc/profile.d/android.sh) ,添加以下内容:
export ANDROID_HOME="/opt/android-sdk-linux"
export PATH="$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools:$PATH"
然后重新加载这个文件:
source /etc/profile
如果你打算使用Git,那么需要安装Git:
sudo apt-get install git-core
配置Android SDK:
为了构建你的工程,需要更新你的Android SDK:
android update sdk --no-ui
这个命令会安装所有的Android版本,所以需要很长的执行时间。如果你不想要安装更多的安卓包,请仔细阅读提示。如果你想安装特定的Android包,请阅读这里。
你可以通过以下的命令来安装特定版本的SDK(如android-19):
android update sdk -u --filter platform-tools,android-19
然而,这个命令不会安装Gradle所需要的构建工具。你需要执行以下命令:
android list sdk --all
在返回的列表中找到带有“Android SDK Build-tools,version xx.xx.xx”字眼的栏目,记下这个版本号然后执行下面的命令:
android update sdk -u --all --filter
同样地,你可以用这种方法来安装Android的库和容器。
如果你知道工程所使用的构建工具的版本,那么请下载相应的版本,你可以在build.gradle文件的buildToolsVersion中找到:
android {
buildToolsVersion "18.1.1"
compileSdkVersion 18
}
可以用同样的方法来安装合适的安卓平台(compileSdkVersion)。
现在,我们就可以通过Jenkins来启动Android SDK了,执行下面的命令:
sudo chmod -R 755 /opt/android-sdk-linux
如果你的操作系统是64位,你还需要安装32为的库:
sudo apt-get install ia32-libs
然后重启你的机器:
sudo shutdown -r now
配置你的安卓工程
如果你的程序用Eclipse开发,那么需要创建一个构建脚本。最简单的方法是从Eclipse中生成,在Eclipse中,点击File选项卡的Export一栏,然后选择Android-> Generate Gradle build files,然后选择工程并点击结束。这样,我们就能够创建一个能够被Jenkins执行的Gradle工程了。
如果你不想使用Gradle, 你仍然可以只用Ant。你可以跳过这一步如果你不知道这是什么或者Gradle工程导出失败。在装有Android SDK的机器上唯一需要执行的命令是:
android update project -p .
配置Jenkins
Jenkins也需要被配置。首先,需要安装JDK。你可以通过访问Manage Jenkins -> Configure System来实现,然后找到你需要的JDK并点击“添加JDK”。你需要一个Oracle账户,在JDK部分输入用户名和密码就可以进行身份认证了,然后你需要返回JDK配置输入一个名字,系统就会自动为你安装JDK了。
如果你使用的是Ant,你可以在Ant中执行同样的操作。
想在,请找到Manage Jenkins -> Manage Plugins -> Available选项卡,检查以下插件然后点击“ Install without restart”:
· Gradle Plugin (not needed if using Ant)
· Git Plugin (if using Git)
· Android Emulator Plugin (if you want to use an emulator)
这个操作能够自动的安装其他的插件,如果你准备使用Gradle,执行与安装JDk相同的步骤就可以自动地安装Gradle了。
正式开始工作
一切准备好了之后,我们就可以进入正题了。点击“ New Job”,给作业起一个名字并选择构建一个自由样式的软件工程,然后点击确定。在“Source Code Management”中选择你的工程所使用的版本控制工具并填写相应的信息,然后在“Build ”部分,添加运行Gradle或Ant的脚本,,填写所有的参数。对Gradle来说,参数大概是这样的:
对于Ant来说,是这样的:
这样我们就能够构建Android工程,但是现在还不能保存APK文件,为了对此进行配置,需要添加构建后的被称为“Archive the artifacts”的操作,我们要保存的文件类型应为“**/*.apk”。
点击保存并开始构建吧!在工程的界面上,有一个叫做“Last Successful Artifacts”的标题,下面是工程的样例:
你的第一个在Jenkins实例上运行的Android成功完成了,恭喜!Jenkins实例能够支持多个作业,所以你可以用来构建多个Android项目!Gradle也能对app进行自动化的签名,但是这些敏感的信息不应该保存在build.gradle文件中。下面是一个与Jenkins结合的 build.gradle文件的示例:
【英文原文】https://www.digitalocean.com/community/tutorials/how-to-build-android-apps-with-jenkins
{测试窝原创译文,译者:初心}
译者简介:初心,在读东南大学硕士