其他分享
首页 > 其他分享> > gitlab+jenkins自动化打包APK

gitlab+jenkins自动化打包APK

作者:互联网

环境搭建,jenkins的配置,python脚本参照这1篇:

gitlab+jenkins自动化打包IOS

这里只说gradle打包脚本

 1 ## !/bin/sh
 2 ## 项目名
 3 ##使配置文件生效,否则会报gradle:命令找不到
 4 source /etc/profile
 5 
 6 TARGET_NAME="AppFrameWork"
 7 APKPATH="build/outputs/apk"
 8 MODELGRADLEPATH="app"
 9 BUILDTYPE=${ENV}
10 
11 ##打包版本,开发给测试打包默认是release的
12 APKVERSION="release"
13 ##debug版本下,apk无需混淆,可以多一些打印日志的操作。
14 ##release版本下,文件混淆,隐藏日志打印
15 
16 ## 当前目录
17 SORCEPATH=${WORKSPACE}
18 
19 ##gradle目录(model级)
20 GRADLEWORKPATH=${SORCEPATH}/${TARGET_NAME}/${MODELGRADLEPATH}
21 
22 ## apk文件的存放路径
23 EXPORTPATH=${SORCEPATH}/${TARGET_NAME}/${MODELGRADLEPATH}/${APKPATH}
24 
25 ##apk文件的存放路径
26 EXPORTPATHAPK=${EXPORTPATH}/${BUILDTYPE}/${APKVERSION}/${MODELGRADLEPATH}-${BUILDTYPE}-${APKVERSION}.apk
27 
28 ## 新的apk名
29 APKNAME="XXXXAPP"
30 
31 ## 更名后apk路径
32 EXPORTPATHNEWAPK=${SORCEPATH}/${APKNAME}.apk
33 
34 ##切换到gradle工作目录
35 cd ${GRADLEWORKPATH}
36 
37 echo -e "============First Build Clean============"
38 ## 清理缓存
39 gradle clean
40 
41 echo -e "============Export APK============"
42 
43 ## 导出APK包
44 gradle assemble${BUILDTYPE}Release
45 
46 echo -e "============Export APK SUCCESS============"
47 
48 ## 将APK复制到指定目录 
49 cp ${EXPORTPATHAPK} ${EXPORTPATHNEWAPK}
50 echo -e "============APK  Name: ${EXPORTPATHAPK}============"
51 echo -e "============APK  Enviroment: ${BUILDTYPE}============"

准备工作:

熟悉Gradle脚本(可以看成是一门独立的语言的),理解Task的概念

参照:

Gradle 构建基础

https://www.w3cschool.cn/gradle/ms7n1hu2.html

Gradle 入门--只此一篇

https://www.jianshu.com/p/001abe1d8e95

 

Tips:

查看build.gradle中共有多少个task::$ gradle tasks

 

安卓如何构建不同测试环境的apk?

参照:

Gradle之构建变体(BuildVariant)

https://www.jianshu.com/p/98ee75dd49f4

标签:BUILDTYPE,APK,##,gitlab,gradle,apk,jenkins,echo
来源: https://www.cnblogs.com/kaerxifa/p/11251473.html