apktool高版本产生compileSdkVersion等错误

No resource identifier产生compileSdkVersion等错误

自动反编译工具引发了一个错误:

No resource identifier found for attribute ‘compileSdkVersion’ in package ‘android’
No resource identifier found for attribute ‘compileSdkVersionCodename’ in package ‘android’

其实这是 apk高版本去编译后的问题

我们来使用apktool多个版本去编译后查看 AndroidManifest.xml 文件发现没问题,但是再反编译出来的会多出 android:compileSdkVersion=“23” 和 android:compileSdkVersionCodename=“6.0-2438415” 属性,如果是反编译的用户使用还会报错,刚好今天是新的笔记本,新的环境反而会觉得更有问题了,然后检查了build、buildtools、androidsdk、jdk等等的版本,都是正常的,匹配都是OK的,

最后看了下build后的 AndroidManifest.xml 文件,都是乱码,这是肯定的。

python2048微信公众号

用自己编写的DuXML解下乱码,可以看到格式是如下的:

apktool高版本产生compileSdkVersion等错误_第1张图片
无法向下兼容,这样会很蛋疼,换成同个版本也会有问题,这样的话只能去看下引用的流程,这样的话,只能去看下安卓的源码了,compileSdkVersion和 buildtools都是高版本的,最低是23。

所以最后解决的办法就比较简单,对应的dx、apt 等都换成高版本即可解决了。



其它疑难杂症链接:《疑难杂症系列》
可关注微信公众号:python2048


|| 版权声明:本文为博主杜锦阳原创文章,转载请注明出处。

你可能感兴趣的:(Android,技术汇总,Bug,疑难杂症,不分语言)