集成见官网
注意事项:
1.修改自定义application 有3个地方 ,换成自己的包名即可
2.修改打补丁apk,R,mapping文件,和生成补丁文件的位置
3.生成补丁,打开Terminal ,执行命令
./gradlew tinkerPatchRelease //正式包补丁
./gradlew tinkerPatchDebug //测试包
4.修改补丁版本号,注意这里只能是两位的,我测的1.02是不行的。
5.自定义id
上面可以避免踩很多坑了。
一:多渠道打包借助360加固助手,
1.打开360加固助手--->配置信息 --->签名配置 and 多渠道配置 (ps:左上角有个勾,勾选启用多渠道打包,启用自动签名)
这样直接打完加固包后会自动签名,并且设置好渠道。
2.手动设置在辅助工具里有个渠道打包
二:借助walle
官网:
打包:https://github.com/Meituan-Dianping/walle
- 生成渠道包
./gradlew clean assembleReleaseChannels
- 支持 productFlavors
./gradlew clean assembleMeituanReleaseChannels
-
生成单个渠道包:
./gradlew clean assembleReleaseChannels -PchannelList=meituan
-
生成多个渠道包:
./gradlew clean assembleReleaseChannels -PchannelList=meituan,dianping
加固渠道包失效解决:https://github.com/Jay-Goo/ProtectedApkResignerForWalle
- 按照config.py文件中的注释改成自己项目配置
- 将已经加固好的包【未签名的包,请不要使用加固客户端签名工具】放到脚本工具根目录下,即app-release.encrypted.apk
- 各种渠道的定义是在channel这个文件中,请根据项目情况修改
- 运行命令
python ApkResigner.py
,即可自动生成所有渠道包。