手机APK加固后二次打包教程

来源:互联网 发布:o2o网络借贷模式的特点 编辑:程序博客网 时间:2024/05/02 00:08

手机APK加固后二次打包教程


说一下背景,在以前apk被反编译是家常便饭,但是现在我们再去反编译会发现很难,那是因为现在的防破解的技术越来越好了。比如说有比较原始的代码混淆,进一步的自我校验、dex变形等等。今天要讲的就是apk经过加固(具体怎么操作不清楚,比较高端),把我们的签名给破坏了,需要用命令行二次打包。

刚开始我也不太明白,于是百度,Google,都描述的不是很详细,那么吸取了他们的精华,我就一步步带大家来进行二次签名。

1.准备JDK(JDK有版本区分,我们公司使用的keystore是用JDK6生成的,用JDK8重新签名的话打不开应用直接闪退,所以需要准备对应的JDK)
准备对应的JDK

2.进入命令行(cmd),并cd到jdk的bin目录下(没切到bin目录下会默认去JAVAHOME下找)
切换到对应的JDK目录下

3.进行打包
键入命令:jarsigner -verbose -keystore (keystore全路径或者相对路径) -signedjar (签名后的apk) (未签名前的apk) keystore别名
(举个栗子:为了方便我把签名apk命名为:a.apk,keystore改为:key.keystore)
回车
输入密码
过程没报错,打包完成

至此,大功告成。以上为绝对路径,想要使用相对路径的,自己去尝试,补充一下几个参数说明

jarsigner:签名命令-verbose 在输出设备上显示虚拟机运行信息-keystore :keystore文件的存储位置my-release-key.keystore:当前目录下的签名证书-signedjar:签名后跟第一个签名后的别名,第二个签名前的apk名字lightpole:证书别名

Thank you!!第一次用MD写文章,感觉都不会用。

0 0