APK文件破解
1.获取apk的资源图片
直接用
WinRAR打开,res/drawable直接拖拽出来即可。
2.获取xml文件信息
虽然能用WinRAR看到里面的xml文件,但是xml是经过优化的,无法直接查看,需要使用apktool工具,下载apktool-1.3.1.tar.bz2和apktool-install-windows-2.2_r01-2.tar.bz2解压到同一个目录,然后把待破解的apk文件拷贝到同一目录,DOS在cmd下进入apktool所在路径,然后输入apktool
d "XXX" 则在目录下多出一个XXX的文件夹。
命令说明:apktool d DJ.apk
apktool d为反编译命令,其中d代表decode
DJ.apk为被反编译的apk安装包的文件名
编译打包:(重新把修改过的文件打包为APK格式)
打包命令:apktool b DJ(DJ为刚才的文件夹名称)
重新编译完成后,DJ文件夹内会新增一个dist文件夹,里面的DJ.apk文件就是重新编译好的apk安装包,签名后即可安装。
3 .反编译dex获取Java源代码
Apktool工具只能反编译成smali的中间代码文件,这里需要借助另外一个开源工具:dex2jar。
下载地址:http://code.google.com/p/dex2jar/。这个工具不能直接翻译成java文件,但是可以把dex文件转换成jar文件。
然后可以通过jad工具把jar文件反编译成Java源文件,jd-gui下载地址:http://java.decompiler.free.fr/jd-gui/downloads/jd-gui-0.3.3.windows.zip 。
解压apk文件,直接拖拽(rar解压软件),找到classes.dex文件
在cmd下进入dex2jar.bat所在路径,然后输入“dex2jar.bat XXX”,XXX指的是你要反编译的apk中的classes.dex文件所在路径及名称(classes上面解压得到),
如:dex2jar.bat D:\classes.dex;
这样会生成一个jar文件,然后用jd-gui工具将jar文件反编译成java文件,选择保存所有,它会生成一个压缩文件,所有的源码都在这个压缩文件中,解压了就可以看到详细的代码了。