尚拙

一个分享技术、学习成长的个人博客网站

0%

Jenkins实现Android自动化打包并上传至蒲公英

记录一下Jenkins实现Android自动化打包的过程,方便日后查阅。

一、前言

在App开发测试过程中,经常需要重新打包,每次给测试发送apk文件,开发麻烦,测试也麻烦。

通过Jenkins自动化构建打包,并自动上传到蒲公英等分发平台,测试就可以直接扫码下载了,提高了开发测试效率。

本文主要是面向Android开发者的,如果你是测试人员,有不懂的建议寻求Android开发人员的帮助。

二、准备工作

系统环境:win10系统

1、安装Git并配置环境变量

官网https://git-scm.com/

2、安装JDK并配置环境变量

JDK下载地址https://www.oracle.com/cn/java/technologies/javase/javase-jdk8-downloads.html

具体步骤请百度。

3、安装Gradle并配置环境变量

Gradle下载地址https://services.gradle.org/distributions/

选择all.zip结尾的文件下载,我下载的版本是gradle-5.4.1-all.zip,下载完解压,然后就bin目录配置到环境变量path里面。

这里不细述,详情请百度。

4、Android SDK下载,并配置环境变量

Android Studio下载地址https://developer.android.google.cn/studio/

这里推荐直接下载Android studio,安装的时候有个选项会让你下载SDK。具体步骤请百度。

5、环境变量检查

(1)Git 环境变量检查

git --version

输出成功则表示安装配置正确,否则安装配置有问题

(2)JDK 环境变量检查

java -version

输出成功则表示安装配置正确,否则安装配置有问题

(3)Gradle 环境变量检查

gradle -v

输出成功则表示安装配置正确,否则安装配置有问题

(3)Android SDK 环境变量检查

adb version

输出成功则表示安装配置正确,否则安装配置有问题

三、Jenkins下载与安装

1、Jenkins下载安装

下载地址https://www.jenkins.io/download/

选择windows版本下载就行,左边是稳定版,右边是开发版,自行选择。

下载结束后,将压缩包解压,然后安装,一直点下一步就行。

2、Jenkins初始化

(1)浏览器访问http://localhost:8080/
按照提示输入初始密码,点击继续

(2)选择安装插件,然后等待(时间较长)安装完成之后,配置用户名、密码等信息,就可以使用了。

3、修改默认端口号

Jenkins默认端口号为8080,有时会与其他服务端口冲突,可以把默认端口号改下。

进入Jenkins安装根目录,找到jenkins.xml文件,用记事本打开文件,搜索httpPort,httpPort后面的8080就是端口号,这里我改成了8081,保存之后,Jenkins主页地址为http://localhost:8081/

4、Jenkins常见命令

(1)启动Jenkins服务

net start jenkins

(2)关闭Jenkins服务

net stop jenkins

(3)重启Jenkins服务

http://localhost:8081/restart

四、Jenkins环境配置

浏览器访问http://localhost:8081/

输入上一步骤配置好的用户名密码登录进去,就进入Jenkins了。

1、安装插件

点击[系统管理]—>[插件管理],进入插件安装页面,点击[可选插件],在搜索框内输入关键词搜索插件,勾选需要的插件,点击[直接安装],等待安装完成即可。

初始化的时候已经安装好大部分插件了,这里需要另外安装一个叫Git Parameter的插件,如果在可选插件里面搜索不出来,应该是已经安装了,就不用再安装了。

2、全局工具配置

点击[系统管理]—>[全局工具配置],进入全局工具配置页面

(1)JDK配置

别名随便填,下面的JAVA_HOME填你的jdk安装目录

(2)Git配置

别名随便填,下面的路径填你的git.exe路径

(3)Gradle配置

别名随便填,下面的路径填你的Gradle安装目录

3、系统配置

点击[系统管理]—>[系统配置],进入系统配置页面

(1) 环境变量配置

找到[全局属性],勾选[环境变量]选项,点击新增,增加两个键值对

ANDROID_HOME,值为sdk路径

GRADLE_USER_HOME,值为gradle路径

(2)Shell环境配置

找到Shell配置,值为git安装目录下sh.exe文件路径

五、创建Android打包任务,并上传至蒲公英

1、新建任务

(1)打开Jenkins主页,点击左侧[新建任务]

(2)选择构建自由风格的项目,输入任务名,然后点击确定

2、General模块配置

进入配置页面后,找到[General]配置模块下的[This project is parameterized]选项,并勾选,点击添加参数

(1)打包类型参数配置

先选择[Choice Parameter]参数添加,名称为build_type,选项为Debug和Release

(2)打包git分支参数配置

继续添加参数,选择[Git Parameter]参数,名称为branch,参数类型选分支(根据自己的需求选择)

如果找不到[Git Parameter]选项,需要去[管理插件]页面,安装Git Parameter插件

2、源码模块配置

(1)git仓库地址配置

找到[源码管理]配置模块,选择[Git],[Repository URL]输入你的git仓库地址

(2)git仓库账号密码配置

点击[Credentials]右侧的[添加按钮],添加git仓库的账号密码

选择[用户名和密码]选项,输入[用户名],[密码],点击添加

回到[源码管理]模块,[Credentials]选择刚刚添加的账号密码

(3)打包git分支配置

[指定分支]里面输入${branch} ,其中“branch”为[General模块配置]的打包git分支参数

3、构建模块配置

找到[构建]模块,点击增加构建步骤,选择[Invoke Gradle script]

勾选[Invoke Gradle]选项,[Gradle Version]选择之前配置的Gradle版本,[Task]输入”clean assemble${build_type}”,其中build_type为[General模块配置]的打包类型参数

4、构建后操作模块配置,上传至蒲公英

找到[构建后操作]模块,点击新增步骤,选择[Upload to pgyer with apiV1],如果没有这个选项,需要先去[插件管理]页面安装upload to pgyer插件

[pgyer uKey]必填,值为蒲公英user_key

[pgyer api_key]必填,值为蒲公英api_key

[scandir]必填,值为apk相对路径,${WORKSPACE}表示项目根目录,${}可以引用前面定义的参数,每个人项目可能路径略有不同,根据自己项目apk路径调整

${WORKSPACE}/app/build/outputs/apk/${build_type}/

[file wildcard]必填,值为apk文件名,支持通配符

*.apk

[installType]选填,应用安装方式,值为(1,2,3),1:公开,2:密码安装,3:邀请安装,默认为1公开

[password]选填,设置App安装密码,如果不想设置密码,请传空字符串,或不传。

[updateDescription]选填,版本更新描述

5、配置完毕后,点击保存

六、执行打包任务

1、进入Jekins主页,点击创建的任务,任务详情页

2、点击左侧的[Build with Parameters],选择构建参数,这个两个参数,就是之前配置的参数,一个打包类型,一个是git分支,选择完点击开始构建

3、查看控制台输出

点击左侧的正在构建的任务,进入详情

点击左侧的[控制台输出],即可查看控制台日志

七、结语

第一次安装还是有些坑的,但是网上相关资源还是挺多的,遇到问题搜索一下,一般都能找到解决办法。

感谢网络的帮助,因此也记录一下过程,反哺一下网络,方便自己查阅,也为后来人提供一些参考。