Jenkins+Gradle+Github实现Android自动化打包

利用Jenkins搭建Android自动化打包。
参考Jenkins+Git配置Android使用Jenkins持续集成进行整理。

环境搭建

1.首先到Jenkins官网下载安装Jenkins

选择对应系统的稳定版本,这里装的是Mac版本。


Jenkins安装.png
  • 下载完成之后,直接点击安装就可以了。
  • 安装完成之后,在浏览器输入http://localhost:8080/即可打开Jenkins主页。
2.安装插件

可以选择在步骤1安装过程中选择默认的插件安装,也可以在主页系统管理中选择插件管理进行安装。

插件管理.png

  • 确保gitgradle等插件已安装完成,这一步很重要,不然后面会找不到配置按钮或导致构建失败。
3.远程代码仓库配置(这里以GitHub项目为例)
  • 在GitHub上创建一个Repositories,将项目拉取到本地,并在此目录下新建一个Android项目。
    GitHub项目.png
4.进入Jenkins主页开始配置
4.1 新建一个任务
点击新建任务.png
新任务.png
4.2 设置项目配置
  • 配置github项目的URL

image.png

这里填入的URL是在GitHub上面的项目拷贝过来的URL。注意是URL链接,不是SSH
项目url.png

  • 配置构建参数

配置打包类型,这里的参数对应的是Android项目gradle配置里面的buildTypes设置的打包类型。

image.png

  • 配置打包分支

点击Git Parameter(如果没有这个参数检查一下对应的插件是否安装)

image.png

输入名称,如mBranch这个名称后面配置源码管理的时候会用到。
image.png

  • 配置源码管理
image.png
  • Github利用Webhook实现Push代码之后自动构建
(1) Git配置

在GitHub上找到setting

image.png

点击进去Developer settings -> Personal access tokens
image.png

填写token名称,并选中如下的选项
image.png

这时得到一个token,切记保存好,一旦丢失无法找回只能重置或删除了。

(2) 添加Webhooks

在项目下的settings点击进去

image.png

配置服务器地址等信息
image.png

注意!这里的地址必须是服务器的IP地址,如填写localhost或者127.0.0.1将会导致无法自动构建。详见stackoverflow上的回答
(3) Jenkins上配置

先检查插件Gitlab Hook Plugin是否安装
点击系统管理->系统设置->GitHub->添加GitHub服务器

image.png

添加凭据,选择Secret Text,在弹出的窗口中填入步骤1获取到的token
image.png

回到项目的配置中,勾选上GitHub hook trigger for GITScm polling
image.png

自此完成了自动检测GitHub的Push提交,自动打包

  • 配置Gradle

image.png

task 里面输入我们要执行的命令
assemble$BUILD_TYPE表示打对应类型的apk包

注意!这里要勾选上Pass all job parameters as Project properties表示把你上面的那些参数用来当作gradle构建参数,否则的话是不会起作用的。
  • 配置归档成品

image.png

这个路径是apk的输出目录,可以在Android项目中的gradle文件中进行配置。
image.png

自此已配置完成,我们开始来点击构建项目。项目下面点击Build with Parameters,可以看到我们之前设置的配置。打包类型和分支选择。

image.png

点击Build按钮,开始构建。
构建完成之后,可以看到Last Successful Artifacts下面有一个输出的apk,这个就是我们刚刚设置的归档成品。这里设置的是输出apk,还可以根据需求,输出其他的内容。
image.png

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。