Android ------ 360加固出现预签名失败align error

Posted 切切歆语

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android ------ 360加固出现预签名失败align error相关的知识,希望对你有一定的参考价值。

项目加固的时候,遇到一个这样的问题:预签名失败align error

360官方给的答案:

align error是指您的app没有做zipalign对齐,用zipalign对齐工具对齐一下:
如果是v1签名,加固-签名-zipalign对齐;
如果是v2签名,加固-zipalign对齐-签名。

最终网上查资料解决


apksigner 的介绍及安装
apksigner 包含在 android SDK Tools 中,可通过 android studio 中 Tools -> Android -> SDK Manager -> SDK Tools 查看是否安装。

如图:每个对应的版本下都有一个apksigner 

使用:cmd 打开命令控制器,进入到该目录下就可以了(当然了也可以直接配置,把这个路径配置到用户变量中,记得重启也可以使用)

我是直接切换到该路径下使用的,使用时注意选择的版本尽量是你项目的最大版本

如图:

通过 sign 命令给 apk 进行签名
通过如下命令对 apk 签名

apksigner sign --ks xxx.jks app.apk

xxx.jks   自己项目的签名文件   .jks (根路径)  
app.apk  要签名的apk  (根路径)  


通过 verify 命令检查 apk 是否被签名
如果不知道 apk 是否被签名,可以通过如下命令来检查

apksigner verify app.apk


官方文档:https://developer.android.google.cn/studio/command-line/apksigner?hl=zh-cn#usage-sign


对齐操作

zipalign -p -f -v 4 app.apk outfile.apk

app.apk  要对齐的apk  (根路径)  
outfile.apk  输出的apk  (根路径)  

尽管在签名前先对app进行了对齐操作,但是并不能保证每次都能成功;因为对齐操作会出现对齐失败的情况。

对于这种失败的情况,通过研究实验得出,只需要针对 对齐失败的apk 进行第二次对齐,就基本能对齐成功,最后再对app进行签名操作。


针对这个问题我们一般只需要对要加固的应用进行签名就好了,签名之后在去加固应用基本就没什么问题了。

官方文档:https://developer.android.google.cn/studio/command-line/zipalign?hl=zh-cn

以上是关于Android ------ 360加固出现预签名失败align error的主要内容,如果未能解决你的问题,请参考以下文章

Android ------ 360加固出现预签名失败align error

Android ------ 360加固出现预签名失败align error

柔弱的APP如何自我保护,浅谈APP防御手段,使用360加固助手加固/签名/多渠道打包/应用市场发布

360加固的自动化处理脚本

Android开发之通过apksigner对apk进行v2签名

经过360加固的apk怎么破解