反编译遇到的问题,仅作记录:
准备反编译工具;
将apk后缀改为.zip并解压,发现res文件夹下打开的布局文件乱码;
反编译工具包里有一个
AXMLPrinter2.jar
可用于将XML变为可读文件,但是会引起数组越界的异常;这里提供另一个jar包AXMLPrinter2.S.jar,可实现解析;下载完jar包后,打开命令行,cd到该jar包路径下,运行
Java -jar AXMLPrinter2.S.jar 文件所在路径\指定文件名.xml
命令即可反编译出xml文件;但是如果XML文件很大,一屏看不完,则在命令窗口可能无法看全,这时候可以执行
命令|more
的指令,即Java -jar AXMLPrinter2.S.jar 文件所在路径\指定文件名.xml | more
,发现屏幕最后会有--more--
的字样,按回车键可逐行显示出来,但是无法返回看原先的数据;如果想简单的到处全部数据,可执行下面的命令
Java -jar AXMLPrinter2.S.jar 文件所在路径\指定文件名.xml > 指定路径\文件名.txt(或XML)
,则该XML数据将全部写入该文件中;