Android Killer反编译失败:No resource identifier found for attribute 问题解决方法
1 问题
最近博主在用Android Killer反编译自己写的一个App的时候,反编译正常,回编译的时候失败,这个App就是简单的Hello World,所以,可以断定是Android Killer的问题,报错如下:
当前 Apktool 使用版本:Android Killer Default APKTOOL
正在编译 APK,请稍等...
>I: Using Apktool 2.3.1
>I: Smaling smali folder into classes.dex...
>I: Building resources...
>W: E:\software\AndroidKiller_v1.3.12018整合版By吾爱论坛昨夜星辰2012\projects\hello_so\Project\AndroidManifest.xml:1: error: No resource identifier found for attribute 'compileSdkVersion' in package 'android'
>W:
>W: E:\software\AndroidKiller_v1.3.12018整合版By吾爱论坛昨夜星辰2012\projects\hello_so\Project\AndroidManifest.xml:1: error: No resource identifier found for attribute 'compileSdkVersionCodename' in package 'android'
>W:
>W: E:\software\AndroidKiller_v1.3.12018整合版By吾爱论坛昨夜星辰2012\projects\hello_so\Project\AndroidManifest.xml:2: error: No resource identifier found for attribute 'appComponentFactory' in package 'android'
>W:
报错很多,但是我们只需要看error 后面的内容:
1 error: No resource identifier found for attribute 'compileSdkVersion' in package 'android'
2 error: No resource identifier found for attribute 'compileSdkVersionCodename' in package 'android'
3 error: No resource identifier found for attribute 'appComponentFactory' in package 'android'
报错的大致意思就是说,AndroidManifest.xml 中的属性 compileSdkVersion、compileSdkVersionCodename、appComponentFactory 在 android 包中找不到,但实际上根本不是这个原因
2 原因
经过一番搜索,发现是因为C:\Users\{你的用户名}\AppData\Local\apktool\framework\1.apk 这个文件导致的
3 解决方法
简单的删除 1.apk 并不能解决问题,因为每次回编译的时候又会自动生成这个文件,正确的解决方法是先进入Android Killer 所用的 Apktool 的目录
这里博主用的是 Apktool_2.4,可以看到对应的文件是 apktool_2.4.0.jar 这个文件,不过在 Android Killer 中我们无法直接查到这个 apktool_2.4.0.jar 所在的目录,如果你忘记了 apkltool 的文件路径没关系,我们可以到下面的apktool官网地址下载最新版的apktool:
https://ibotpeaches.github.io/Apktool/
如果打不开没关系,随便在网上下载一个就可以了,目前最新版的是v2.4.1,接着我们把下载好的 apktoo_2.4.1.jar 导入 Android Killer:
打开命令行cmd进入刚才 apktool_2.4.1.jar 所在的目录,这里博主的目录是 E:\software:
cd /d E:\software
接着执行以下命令:
java -jar apktool_2.4.1.jar empty-framework-dir
执行完上面的命令后,再次回编译就ok了
4 总结
就是进入 apktool 所在的目录执行下面的命令:
java -jar apktool_2.4.1.jar empty-framework-dir
如果还是无法解决的话,就尝试更换最新版本的 apktool:
ApkTool官网:https://ibotpeaches.github.io/Apktool/
或者使用下面的 ShakaApktool_3.0.0-20170503-release.jar:
ShakaApktool_3.0.0-20170503-release.jar
还是不行的话,请换用下面的 Android Killer:
AndroidKiller_v1.3.1.zip
目录 返回
首页