androidkiller的两种异常情况

第一种反编译时异常:

Exception in thread “main” org.jf.dexlib2.dexbacked.DexBackedDexFile$NotADexFile: Not a valid dex magic value: cf 77 4c c7 9b 21 01

修改方法:

编辑 AndroidKiller 的 bin/apktool 目录下有一个 apktool.bat 文件
修改成:在 java -jar “%~dp0\apktool\apktool_2.4.1.jar” 后加上 --only-main-classes 内容
java -jar “%~dp0\apktool\apktool_2.4.1.jar” --only-main-classes %1 %2 %3 %4 %5 %6 %7 %8 %9

第二种回编各种图片之类的异常:这个比较麻烦
还上面那个位置修改成如下:

增加 d -r
java -jar “%~dp0\apktool\apktool_2.4.1.jar” --only-main-classes d -r %1 %2 %3 %4 %5 %6 %7 %8 %9
这里的意思是不反编译资源仅仅反编译smali而不反编译资源

!!!!这样做完,就可以了…那是不可能的。。。。!!!!
上面的方式会导致编译进入的安卓杀手中的apk反编译结果不是一个项目,所以最后回导致无法打包apk
正确的做法是,先在控制台使用apktool d -r命令生产一份反编译项目,然后在把apk导入安卓杀手中,正常一个正常项目,最后把生成的项目内部的资源删除,再把d -r生产的剪切过来,就,刷新一下安卓杀手就可以进行修改,回编了
替换目录就是这里androidkiller的两种异常情况_第1张图片
androidkiller的两种异常情况_第2张图片
导入过安卓杀手的,应该都是这是哪里,就是项目生成的文件夹,
再说一遍,就是:d -r生成的项目,剪切到安卓杀手生成的项目里(先把杀手项目里的内容文件全部删除)别问为什么是剪切,自己试一下复制就知道为啥了

这样回编生产的文件就可以正常运行了
androidkiller的两种异常情况_第3张图片
androidkiller的两种异常情况_第4张图片

最后再说一下查看完整的代码可以用jd-gui,gda等很多工具

你可能感兴趣的:(安卓逆向,安卓杀手)