Android:利用jenkins实现Android自动打包

Android 发表评论

一、下载java,安装好,并配置环境变量;

二、安装tomcat:
访问https://tomcat.apache.org/download-90.cgi地址,最新版本号 ->Binary Distributions -> Core -> zip (pgp, md5, sha1) ,下载最新版tomcat的压缩包,这里解压在E盘根目录下,路径为E:\tomcat。

三、安装并启动jenkins:
访问https://jenkins.io/download/地址,点击Generic Java package(.war)(就是jenkins.war文件)进行下载,这里放在E:\tomcat\webapps目录下,双击E:\tomcat\webapps\startup.bat启动tomcat服务器,打开浏览器,输入http://localhost:8080/jenkins/,就算进入jenkins主页了。

四、配置jenkins系统环境:

1.安装常用插件:
点击左边菜单中的”系统管理” -> 中间的”管理插件” -> 中间Tab第2项”可选插件”,勾选以下名称的插件:
Android Emulator Plugin
Ant Plugin
Apache HttpComponents Client 4.x API Plugin
Credentials Plugin         
Email Extension Plugin
Git client plugin
Git Parameter Plug-In
Git plugin
Gitlab Hook Plugin
GitLab Plugin
Gradle Plugin
Mailer Plugin
Matrix Authorization Strategy Plugin
Maven Integration plugin
Pipeline: SCM Step
Pipeline: Step API
Script Security Plugin
SSH Credentials Plugin

2.配置全局jdk、git、gradle、android sdk:
点击左边菜单中的”系统管理” -> 中间的”全局工具配置”,配置:

(1)JDK配置:
点击新增JDK,去掉自动安装选项,在以下项输入
别名: JDK8                  //jdk别名,随意
JAVA_HOME: D:\Program Files\Java\jdk1.8.0_131    //jdk安装目录

(2)配置git:
Name: git       //git别名,随意
Path to Git executable: D:\Program Files\Git\bin\git.exe    //git.exe文件路径

(3)配置gradle:
点击新增gradle,去掉自动安装选项,在以下项输入
name: gradle:         //gradle别名,随意
GRADLE_HOME: E:\gradle-4.1    //gradle路径

(4)配置jenkins环境变量(系统管理 -> 系统设置 -> 全局属性),勾选”环境变量”,配置如下全局变量:
键: ANDROID_HOME
值: E:\android-sdk-windows

//curl用于上传apk到蒲公英, windows下需要配置,而且需要下载支持ssl的版本
键: curl
值: E:\curl

键: gradle
值: E:\gradle-4.1

键: JAVA_HOME
值: D:\Program Files\Java\jdk1.8.0_131

(5)配置Android SDK(系统管理 -> 系统设置 -> Android):
Android SDK root: E:\android-sdk-windows
勾选”Automatically install Android components when required”

五、配置Android自动打包环境:

1.创建项目
点击首页左侧菜单”新建Item”,在”输入一个任务名称”中输入项目名称,选中下面的”构建一个自由风格的软件项目”,点击”确定”。

2.参数化构建过程
在项目配置页,勾选”配置参数化构建过程”,点击”添加参数”,添加如下参数:

(1)添加一个Git Parameter:
//选择打包分支
Name:  BRANCH
Description: 描述
Parameter Type: Branch     //只拉取分支, 也可以拉取Tag和分支

(2)添加若干Choice Parameter
//选择打包环境
Name:   BUILD_TYPE
Choices:
release
beta
debug
Description: 描述

//选择是否要上报bug到bugtags
Name:   REPORT_BUG  //此名称跟gradle.properties中一样
Choices:
true
false
Description: 描述

//选择是否混淆
Name:   MINIFY_ENABLED      //此名称跟gradle.properties中一样
Choices:
true
false
Description: 描述

(3)添加若干String Parameter:
//修改版本号
名称: VERSION_NAME   //此名称跟gradle.properties中一样
默认值: 1.0.0
描述: 随意输入描述

//邮件接收人
名称: EMAIL_RECIVER
默认值: 接收人邮箱   //a@126.com,b@126.com
描述: 随意输入描述

3.源码管理

(1)配置git地址和帐号
选择Git,在
Repositories -> Repository URL: 项目git地址
Repositories -> Credentials:  点击Add,在弹出界面配置如下:
Add Credentials
Domain: Global credentials(unrestricted)
Kind: Username with password
Scope: Global(Jenkins,nodes,items,all child items, etc)
Username: git帐号
Password: git密码
ID: 可以为空
Description: 可以为空
点击”Add”,然后在原界面选择刚添加的git帐号

(2)配置选择分支
Branches to build -> Branch Specifier (blank for ‘any’): $BRANCH    //BRANCH为上面配置的Dynamic Choice Parameter

4.构建(配置clean、build、上传蒲公英任务)

(1)增加clean与build任务(Invoke Gradle script)
点击”增加构建步骤”, 在弹出框中选择”Invoke Gradle script”,选第2项”Use Gradle Wrapper”:
Tasks:clean assemble$BUILD_TYPE
//在高级中设置
Root Build script: ${WORKSPACE}/主模块名     //一般为app
Build File: ${WORKSPACE}/主模块名/build.gradle

(2)增加上传蒲公英任务(Execute Windows batch command)
点击”增加构建步骤”, 在弹出框中选择”Execute Windows batch command”,在命令框中输入:

curl -F "file=@%WORKSPACE%\主模块名\build\outputs\apk\%BUILD_TYPE%\工程名-%VERSION_NAME%-%BUILD_TYPE%.apk" -F "uKey=用户key" -F "_api_key=apikey" https://qiniu-storage.pgyer.com/apiv1/app/upload

5.构建后(发邮件)

(1)配置邮箱:

系统管理 -> 系统设置 -> Jenkins Location:
系统管理员邮件地址: 管理者邮箱

系统管理 -> 系统设置 -> Extended E-mail Notification:
SMTP server(SMTP服务器): SMTP服务器地址
Default user E-mail suffix(用户默认邮件后缀) : 邮箱后缀,例:@126.com
Default Content Type: HTML(text/html)
Default Recipients: 接收者邮箱
Default Subject: 默认
Default Content: 默认

Default Triggers:点此按钮,在列表中选中”Always”

//用以下测试邮件服务器配置是否正确
勾选”通过发送测试邮件测试配置”
Test e-mail recipient: 收件人邮箱地址

系统管理 -> 系统设置 -> 邮件通知:
SMTP服务器和用默认邮件后缀同上
勾选”使用SMTP认证”,在用户名和密码中输入邮件发送者帐号和密码,
SMTP端口:SMTP服务端的端口     //例如: 587
字符集:UTF-8

当前项目 -> 配置-> 点击”增加构建后操作步骤”,弹出框中点”Editable Email Notification”,配置如下:
Project Recipient List: $EMAIL_RECIVER   //EMAIL_RECIVER为前面配置的收件人
Project Reply-To List: 默认
Content Type: HTML(text/html)
Default Subject:  默认
Default Content: 默认

Advanced Settngs 点此按钮,在列表中增加Triggers项:

点”Add Trigger”在弹出列表中选中Always项,然后在新产生的项中点”高级”按钮,配置如下:

Recipient List:  邮件接收人列表

Subject: 输入邮件主题

Content:输入邮件内容

六、打包:
首页- >中间点击自已创建的项目 -> 左侧菜单Build with Parameters -> 在中间页面选择好参数,点击开始构建,完成后就可以收到构建完成的邮件了,蒲公英上也能看到了。

发表评论

邮箱地址不会被公开。 必填项已用*标注

昵称 *