准備條件
- iMAC,非必須(如果是 安卓 和 蘋果 可以在同一台電腦上打包則要 Mac OS 系統的電腦,如果是只是給安卓打包 windows 電腦也是可以的, window 下 需要把 ls 換成 dir ,grep 換成 findstr)
- Android studio 最新版,生成一個空白項目(主要是要安卓對應的 sdk,如果遇到 jenkins 打包出錯,請看錯誤日志的原因,我這里遇到一個沒有安裝對應的 sdk,只需要用 ide 安裝對應版本的就 ok)
- jenkins (安裝步驟百度一下,然后進入 jenkins 時安裝推薦的插件,系統配置 -> 全局屬性 -> 環境變量 增加 ANDROID_HOME:/Users/xxx/Library/Android/sdk)
- git 命令行工具(拉取代碼使用,全局環境變量)
- gitlab 代碼倉庫(項目的代碼倉庫)
任務配置
1. jenkins 新建自由風格的項目
2. 源碼管理,使用 賬號 和 密碼拉取代碼(有可能會提示無法獲取,你可以重啟 jenkins 試試,如果還不行,重啟電腦,如果還不行,自行解決)
3. 構建觸發器
H/5 * * * *(每五分鍾檢查一次)
4. 構建環境
jenkins 插件管理手動安裝一個插件 changelog-environment.hpi,該插件用來獲取 commit 信息,到時候會提交到 蒲公英的構建版本的描述里面 (下載鏈接:https://pan.baidu.com/s/1jDPuW_q3wmfv5mFcnwBOhA 提取碼:oxuy )
%3$s(at %4$s via %1$s) .
yyyy-MM-dd HH:mm:ss
5. 構建
clean
assembleyybRelease (這條命令因項目有點不同,不過開頭都是 assemble)
###### APK_DIR 因項目有點不同, window 下 需要把 ls 換成 dir ,grep 換成 findstr
apiKey="xxx"
APK_DIR="$WORKSPACE/app/build/outputs/apk/yyb/release"
APK_PATH=`ls ${APK_DIR}|grep .apk`
echo "${SCM_CHANGELOG}"
curl -F "file=@${APK_DIR}/${APK_PATH}" -F "_api_key=${apiKey}" -F "buildUpdateDescription=${SCM_CHANGELOG}" https://www.pgyer.com/apiv2/app/uploa
6. 構建后操作
歸檔成成品填 **
郵箱的地址只需要填寫郵箱即可