参考资料
http://blog.csdn.net/guolin_blog/article/details/49738023
【反编译代码】
到以下两款工具:
dex2jar 这个工具用于将dex文件转换成jar文件
下载地址:http://sourceforge.net/projects/dex2jar/files/
jd-gui 这个工具用于将jar文件转换成java代码
下载地址:http://jd.benow.ca/
java源代码反编译步骤:
1.apk包解压,将dex文件,copy到 dex2java 文件夹中;
2.通过cmd命令行到文件夹 dex2jar,执行命令:d2j-dex2jar xxx.dex; 将得到相应的jar文件
3.通过 gui-jd 查看,第二部得到的jar文件;
【反编译资源】
使用工具:
apktool
apktool 这个工具用于最大幅度地还原APK文件中的9-patch图片、布局、字符串等等一系列的资源。
下载地址:http://ibotpeaches.github.io/Apktool/install/
下载文件1:apktool.bat
下载文件2:apktool_2.2.1.jar
反编译资源步骤:
1.改名 apktool_2.2.1.jar 为 apktool.jar
2.将apk文件,copy到下载的文件的同一目录;
3.cmd进入此目录,执行 apktool d xxx.apk
其中d是decode的意思,表示我们要对Demo.apk这个文件进行解码。那除了这个基本用法之外,我们还可以再加上一些附加参数来控制decode的更多行为:
-f 如果目标文件夹已存在,则强制删除现有文件夹(默认如果目标文件夹已存在,则解码失败)。
-o 指定解码目标文件夹的名称(默认使用APK文件的名字来命名目标文件夹)。
-s 不反编译dex文件,也就是说classes.dex文件会被保留(默认会将dex文件解码成smali文件)。
-r 不反编译资源文件,也就是说resources.arsc文件会被保留(默认会将resources.arsc解码成具体的资源文件)。
的缓存文件,将这个缓存文件删除掉,然后再重新执行反编译命令应该就可以成功了。
网友评论