ProtectedApkResignerForWalle一步解决应用加固导致Walle渠道信息失效的自动化脚本工具,自动生成渠道包

最近使用walle+tinker的方式来实现多渠道打包和热修复,但是遇到一个问题:使用walle生产的渠道包进行360加固后获取不到渠道信息!!!
怎么解决?walle官方推荐了两种办法:
方法一:操作步骤http://blog.csdn.net/jason_2016/article/details/58137497
方法二:ay-Goo同学写了一个工具,专门修复类似360加固重签名和批量注入渠道,2秒搞定。支持全平台 https://github.com/Jay-Goo/ProtectedApkResignerForWalle

补充:其中方法一中有个错误,就是V2签名这里这么配置是错误的
ProtectedApkResignerForWalle一步解决应用加固导致Walle渠道信息失效的自动化脚本工具,自动生成渠道包_第1张图片
image.png

应该改为下面这样:

apksigner sign            //执行签名操作
 --ks 你的jks路径                                 //jks签名证书路径
--ks-key-alias 你的alias           //生成jks时指定的alias
--ks-pass pass:你的密码          //KeyStore密码
--key-pass pass:你的密码   //签署者的密码,即生成jks时指定alias对应的密码
--out output.apk                         //输出路径
input.apk                                     //被签名的apk

示例:

apksigner sign  --ks key.jks  --ks-key-alias releasekey  --ks-pass pass:pp123456  --key-pass pass:pp123456  --out output.apk  input.apk

下面回到本篇文章的主题!!!

因为方法一操作步骤过于复杂,而方法二又过于简单。。。so,选择方法二。
下面就讲一下方法二ProtectedApkResignerForWalle的操作步骤:
1、按照config.py文件中的注释改成自己项目配置
2、将已经加固好的包【未签名的包,请不要使用加固客户端签名工具】放到脚本工具根目录下,即app-release.encrypted.apk
3、各种渠道的定义是在channel这个文件中,请根据项目情况修改
4、运行命令 python ApkResigner.py,即可自动生成所有渠道包。

步骤1字段如何填写:
ProtectedApkResignerForWalle一步解决应用加固导致Walle渠道信息失效的自动化脚本工具,自动生成渠道包_第2张图片
image.png

keystorePath、keyAlias、keystorePassword、keyPassword:就按项目中签名那里配置的信息填写
protectedSourceApkName:加固后的apk的名字(记得要带.apk)
protectedSourceApkDirPath、channelsOutputFilePath、channelFilePath:不填写即代表在默认路径上
sdkBuildToolPath:sdk/build-tools目录下的25.0.0以上的版本路径

步骤2:
ProtectedApkResignerForWalle一步解决应用加固导致Walle渠道信息失效的自动化脚本工具,自动生成渠道包_第3张图片
image.png

步骤3:
ProtectedApkResignerForWalle一步解决应用加固导致Walle渠道信息失效的自动化脚本工具,自动生成渠道包_第4张图片
image.png

打开channel,在里面写上渠道

步骤4:进入到脚本的文件夹下,然后运行python ApkResigner.py命令即可。

最后生成的渠道包在此文件夹下
ProtectedApkResignerForWalle一步解决应用加固导致Walle渠道信息失效的自动化脚本工具,自动生成渠道包_第5张图片
image.png

那么,如何验证用此方法生成的渠道包可以获取到渠道信息呢???
通过String umeng_channel = WalleChannelReader.getChannel(mContext);获取渠道信息,然后吐司看下是否有实际信息。


ProtectedApkResignerForWalle一步解决应用加固导致Walle渠道信息失效的自动化脚本工具,自动生成渠道包_第6张图片
image.png

你可能感兴趣的:(ProtectedApkResignerForWalle一步解决应用加固导致Walle渠道信息失效的自动化脚本工具,自动生成渠道包)