前言
在測試app項目過程中,通常都是需要開發打測試包給到測試,但是無論是iOS還是Android的打包過程都是相當漫長的,頻繁的回歸測試需要頻繁的打包,對於開發同學影響還是蠻大的。因此在這種情況下,開發通常都會搭建一個簡單的自動化打包平台(Jenkins),自動化構建打包或者上傳到蒲公英,firm等分發平台。作為測試也需要了解相關的知識,用以優化提高開發測試效率。
涉及技術點:
- Jenkins的搭建配置,任務構建
- Android開發環境配置
- Android gradle的配置使用
內容包含:
- Java環境配置
- Android環境配置
-
gradle配置
- 下載gradle
- 配置環境變量
-
Jenkins配置
- 插件管理
- 系統設置
- 全局工具配置
- 構建任務配置
-
多渠道打包,360加固(廢棄,直接開發設置gradle腳本)
- 360加固,多渠道打包介紹
- 360打包加固腳本(待優化)
-
上傳蒲公英,顯示下載二維碼
- 添加插件upload to pyger
- 添加插件description setter plugin
- 配置上傳蒲公英參數和顯示二維碼
-
參數化構建之選擇分支構建
- 添加插件Git Parameter
- 配置參數化構建,選擇Git Parameter
- 構建時選擇分支
Java環境配置
下載jdk,安裝即可
Android環境配置
下載安裝配置Android SDK
gradle配置
下載gradle
下載地址:http://services.gradle.org/distributions/
選擇與項目相對應的gradle版本
也可以直接使用brew安裝
配置環境變量
打開終端:
- open -e ~/.bash_profile,使用文本編輯打開它
#gradle的目錄地址
GRADLE_HOME=/Users/louchengwang/Library/gradle-4.10.1
export GRADLE_HOME export PATH=$PATH:$GRADLE_HOME/bin
2. source ~/.bash_profile 更新文件
3. gradle -version 查看gradle 版本
Jenkins配置
Jenkins的安裝部署就不說了,一路next就好
插件管理
插件搜索
gradle
gitlab plugin
系統設置
設置全局屬性,配置android home
全局工具配置
配置gradle
也可以使用自動安裝,但是容易超時,所以還是自己下載安裝好了直接使用
構建任務配置
- 源碼管理選擇 git,輸入git賬號密碼,選擇分支

- 觸發構建器自行選擇
- 構建選擇Invoke Gradle script
-
高級-設置Root Build script和Build file
還需要注意的點,Jenkins提供了一些可用的公共變量,例如${WORKSPACE},就是當前項目的目錄地址
多渠道打包,360加固(廢棄,直接開發設置gradle腳本)
使用360加固寶對安裝包進行加固,並且進行多渠道打包。
360加固,多渠道打包介紹
在GitHub中已經將360加固寶文件上傳上去,就在Android項目的根目錄中,我們使用命令行的方式進行打包加固
360命令行加固打包介紹:
- 使用幫助 java -jar jiagu.jar -help
- 登錄 java -jar jiagu.jar -login <username> <password>
- 簽名配置,導入簽名keystore信息 java -jar jiagu.jar -importsign <keystore_path> <keystore_password> <alias> <alias_password>
- 渠道配置,導入渠道信息 java -jar jiagu.jar -importmulpkg <mulpkg_path> 這個需要看下項目是使用什么樣的方式進行渠道划分
- 配置加固服務 查看當前加固服務配置 java -jar jiagu.jar -showconfig
- 應用加固,如果不是高級用戶服務,普通的加固服務配置就可以 java -jar jiagu.jar -jiagu <inputAPKpath> <outputpath> -autosign -automulpkg
360打包加固腳本(待優化)
apks=${WORKSPACE}/app/build/outputs/apk channel=("official" "tencent") DEST=${WORKSPACE}/reinforce/ for chan in ${channel[@]} do file=$apks"/"$chan/release/sjk_v1.2.0_$chan.apk file=${WORKSPACE}/app/build/outputs/apk"/"$chan/release/sjk_v1.2.0_$chan.apk java -jar ${WORKSPACE}/jiagu/jiagu.jar -login 15154111005 lou4871768 java -jar ${WORKSPACE}/jiagu/jiagu.jar -importsign ${WORKSPACE}/sjk.jks sanjieke.comsjk sanjieke.com java -jar ${WORKSPACE}/jiagu/jiagu.jar -showsign echo $file java -jar ${WORKSPACE}/jiagu/jiagu.jar -jiagu ${file} ${DEST} -autosign done
待優化的點
- 現在打包渠道是固定死的,應該自動識別apk目錄下的包並進行打包加固
- 打包完成后,可以增加壓縮打包並郵件發出等服務
保存,點擊構建,如果構建失敗查看log,看是哪里的問題。
上傳蒲公英,顯示下載二維碼
添加插件upload to pyger
添加插件description setter plugin
配置上傳蒲公英參數和顯示二維碼
配置完成效果
參數化構建之選擇分支構建
添加插件Git Parameter
配置參數化構建,選擇Git Parameter
返回文檔
構建時選擇分支




這里也可以不設置,如果不設置的話,默認項目目錄是在 /Users/louchengwang/.jenkins/workspace



