Android 自动化打包Jenkins 配置流程

服务器相关环境配置不做说明,记录下项目配置的流程,方便后续项目操作记录。
服务器的配置可以参考这篇文章Linux配置AndroidSDK&Jenkins远程部署

以下是配置好以后使用的界面

用户操作界面:

Android jenkins 自动化部署 jenkins android打包,发布,部署_Jenkins

构建成功后邮件样式:

Android jenkins 自动化部署 jenkins android打包,发布,部署_自动构建_02


开始项目配置

1. 选择参数化构建过程

相关参数:
APP_NAME:APP名称
BASE_URL:打包地址
APP_VERSION:版本号
LABER:打包备注

这里面的参数要是想动态编译到app里面需要和app 的gradle.properties文件对应,想要全局使用要在build.gradle 文件里面接收下。

BUILD_TYPE = debug
BUILD_TIME= 1970-1-1
BASE_URL = "www.xxxx.com"
IS_JENKINS = true
APP_VERSION = "1.0.0"

APP gradle.properties 文件

Android jenkins 自动化部署 jenkins android打包,发布,部署_上传_03

APP build.gradle 文件

Android jenkins 自动化部署 jenkins android打包,发布,部署_Jenkins_04


Jekins的参数配置

Android jenkins 自动化部署 jenkins android打包,发布,部署_Jenkins_05

Android jenkins 自动化部署 jenkins android打包,发布,部署_服务器_06

Android jenkins 自动化部署 jenkins android打包,发布,部署_服务器_07

Android jenkins 自动化部署 jenkins android打包,发布,部署_上传_08

2.源码管理

要在Git项目中配置Jekins服务器的SSH,用SSH方式拉取代码,账号选git

Android jenkins 自动化部署 jenkins android打包,发布,部署_Android_09

3,构建环境

勾选Set Build Name这是个插件,可以让构建的名称不单独是个版本编号,里面的参数可以是环境变量或者自己上面构建时候自定义的参数

#${BUILD_NUMBER}_${APP_NAME}-${LABER}_v-${APP_VERSION}

Android jenkins 自动化部署 jenkins android打包,发布,部署_上传_10

4.构建

要选择对应的构建gradle的版本,可以多添加几个版本要和项目里面的对应。

//clean项目,打出debug的包,正式包加固包还是自己来处理
app:clean
app:assembleDebug

这个选项要勾选起来,构建时候能入侵到项目的properties文件,动态的修改参数。

Pass all job parameters as Project properties

Android jenkins 自动化部署 jenkins android打包,发布,部署_自动构建_11

5.构建后操作

1.上传到fir上使用的是fir的插件

构建上传给fir的备注模板

Jekins自动构建上传 <br>
构建编号:$BUILD_NUMBER<br>
构建备注:${LABER}<br>
打包地址:${BASE_URL}<br>
2.归档成品

意思是最后这个文件会在构建完成后输出在界面上

app/build/outputs/apk/debug/app-debug.apk
3.ExInclude IPA/APK File Name 这个意思是过滤掉项目空间里面不需要上传到fir的包,否则fir会遍历空间中所有的apk包上传,可能会出现原有项目中存在release包把自己的包覆盖掉的情况。这里我们只需要debug版本的,按如下配置填写就好
**/*unaligned*.apk,**/*unsigned*.apk,**/*release*.apk

Android jenkins 自动化部署 jenkins android打包,发布,部署_Android_12

4.邮件通知

邮件模板编写 在系统管理–系统设置里面

管理监控配置选项

这里系统管理员邮件地址填写要配置的邮箱。以后邮件都会用这个邮箱发送

Android jenkins 自动化部署 jenkins android打包,发布,部署_Android_13

填写邮箱的相关配置

Android jenkins 自动化部署 jenkins android打包,发布,部署_自动构建_14

配置发送模板

Android jenkins 自动化部署 jenkins android打包,发布,部署_Jenkins_15

标题模板

[Jekins构建通知]$PROJECT_NAME - Build # $BUILD_NUMBER - $BUILD_STATUS!

内容模板

(-~~~~~自动构建通知,请勿回复~~~~~~~)
<br>
项目名称:$PROJECT_NAME<br>
构建编号:$BUILD_NUMBER<br>
构建状态:$BUILD_STATUS<br>
触发原因:${CAUSE}<br>
构建地址:<A HREF="${BUILD_URL}">${BUILD_URL}</A><br>

构建后操作选择Editable Email Notification

Project Recipient List 接收邮件的人,默认接收人和传入的自定义邮箱
${MAIL}这个是上面传入的参数,中间空格分开,不加空格会发不出去

$DEFAULT_RECIPIENTS ${MAIL}

Default Content
这里的地址要根据每个项目不同分别填写,fir有个参数但是测试时候都没用,还不知道怎么解决,目前要手动填写

$DEFAULT_CONTENT
点击查看最新二维码:<A HREF="https://fir.im/u56h">https://fir.im/u56h</A>

Android jenkins 自动化部署 jenkins android打包,发布,部署_上传_16

点开高级这里的触发器要选上,成功失败都发邮件。要不然前面工作白做

Android jenkins 自动化部署 jenkins android打包,发布,部署_自动构建_17