关于在mainfest.xml中做重打包校验的学习

前端之家收集整理的这篇文章主要介绍了关于在mainfest.xml中做重打包校验的学习前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

帖子地址:http://bbs.pediy.com/showthread.php?t=194206

android在解析AXML的属性的时候,是通过该属性的res id号而非属性名定位的。所谓的AXML就是AndroidManifest.xml对应的二进制文件,APK包中存储的就是AXML。比如属性

<public type="attr" name="name" id="0x01010003" />

它的属性名为name,id号为0x01010003。

所以,在做防二次打包的时候不妨在axml中添加一些无用的tag信息,将tag里的res id 设置为非法的id,这样在解析mainfest.xml时,这些tag并不会被源apk识别,不过apktool这些反编译软件会识别 这些tag,由于在attr里并没有这些id,所以反编译的时候会报错。另外我们也可以在我们的程序中检索mainfest中是否有这些tag,如果有则退出。这也是个防止二次打包的一种不错的方案。

猜你在找的XML相关文章