一步解决应用加固导致Walle渠道信息失效的自动化脚本,自动生成渠道包
最近很多朋友问我这个脚本和walle的关系,用了这个脚本还用walle吗?在这里我来解释下:
官方walle分为两部分,第一部分是打包部分,包括
plugin
部分和build.gradle
中walle{...}
脚本,另一部分是用于读取渠道号的AAR,如果你使用类似友盟等统计工具,你需要利用walle提供的aar来读取你的渠道信息,然后手动传给友盟渠道信息。在不考虑加固的情况下只需要执行类似./gradlew clean assembleReleaseChannels
,AS会自动执行gradle中的脚本和插件进行多渠道打包。
ProtectedApkResignerForWalle
是用于解决walle产生的加固问题,用的是walle的打包CLI,替代的是第一部分,所以你无须引用plugin
部分和build.gradle
中walle{...}
脚本部分,第二部分还是要正常引用的。多渠道打包时,先加固,然后把未签名的apk使用此脚本进行多渠道打包即可。
- 按照config.py文件中的注释改成自己项目配置
- 将已经加固好的包【未签名的包,请不要使用加固客户端签名工具】放到脚本工具根目录下,即app-release.encrypted.apk
- 各种渠道的定义是在channel这个文件中,请根据项目情况修改
- 运行命令
python ApkResigner.py
,即可自动生成所有渠道包。
更多用法和常见问题讨论请参看wiki
- Windows (Test)
- Mac OS (Test)
- Linux
- Email: [email protected]
- QQ Group: 573830030 有时候工作很忙没空看邮件和Issue,大家可以通过QQ群联系我
大家都知道开源是件很辛苦的事情,这个项目也是我工作之余完成的,平时工作很忙,但大家提的需求基本上我都尽量满足,如果这个项目帮助你节省了大量时间,你很喜欢,你可以给我一杯咖啡的鼓励,不在于钱多钱少,关键是你的这份鼓励所带给我的力量~
支持Android7.0 Signature V2 Scheme 多渠道打包,并解决类似360加固后获取不到渠道信息 - 渠道统计失败的问题