逆向助手的使用方法就不说明了 是个图形化的界面 很好操作
下面介绍一下反编译apk之后 得到的xml文件乱码问题 是因为反编译工具包里有一个AXMLPrinter2.jar
可用于将XML变为可读文件,但是会引起数组越界的异常;这里提供另一个AXMLPrinter2.S.jar包,可实现解析;
具体的使用方法:
-
将apk后缀改为.zip并解压,发现res文件夹下打开的布局文件乱码;
-
反编译工具包里有一个AXMLPrinter2.jar可用于将XML变为可读文件,但是会引起数组越界的异常;这里提供另一个jar包AXMLPrinter2.S.jar,可实现解析;
-
下载完jar包后,打开命令行,cd到该jar包路径下,运行Java -jar AXMLPrinter2.S.jar 文件所在路径\指定文件名.xml 命令即可反编译出xml文件 这个时候文件实在命令行显示;
-
如果想将反编译出来的内容写入文件中 可执行下面的命令Java -jar AXMLPrinter2.S.jar 文件所在路径\指定文件名.xml > 指定路径\文件名.txt(或XML),则该XML数据将全部写入该文件中;
-
如果想要批量转换 将此BAT文件和AXMLPrinter2.jar放在想要转换的res或者xml文件夹目录下,点击执行文件夹里面的bat文件 文件里面的内容如下 for /r res %%a in (*.xml) do @java -jar AXMLPrinter2.jar "%%a" >>"%%a".txt res是想要转换的xml所在目录 可以做更改
补充:
解决使用“android逆向助手”反编译apk产生文件夹为空的情况(当前链接里的资源已经是我更新一遍之后的了 里面的apktool.jar的版本是2.4.1 如果后期有问题可以去下载最新的)
产生原因:apktool.jar的版本太低,如果使用高版本不会出现异常
前提是被反编译的apk不是那种被正经层层包装的大厂出品app。这种app反编译了也不会出什么有用的东西的。
解决方案:
1.登陆http://ibotpeaches.github.io/Apktool/ 下载最新版本的apktool.jar,(需要翻墙 或者自己百度最新版本)
目前最新版本为2.x
2.将下载到的apktool_xxx.jar文件改名为apktool.jar,然后替换掉老版本的apktool.jar
3.现在可以正常反编译apk文件了