dex2jar工具进行反编译
首先要下载两个东西:
- dex2jar:http://code.google.com/p/dex2jar/downloads/list
- JdGUI:http://java.decompiler.free.fr/?q=jdgui (反编译Jar包,查看Jar包的源代码的GUI工具)
步骤如下:
- 下载一个.apk程序安装包,将其文件名*.apk改为*.zip后进行解压。
- 把其中的class.dex拷贝到dex2jar.bat所在目录。将class.dex拖至dex2jar.bat运行 ,将会在其文件夹下生成classes.dex.dex2jar.jar。
- 运行JD-GUI工具(它是绿色无须安装的),打开上面的jar文件,即可看到源代码。
- 对于xml的文件的编译,需要工具AXMLPrinter2.jar(http://code.google.com/p/android4me/downloads/list)。下载后解压到android sdk tools目录,具体的使用方法,与上面的差不多,可以运用命令:cmd进入到SDK tools目录,运行如下命令即可。
java -jar AXMLPrinter2.jar main.xml > main.txt
按上面操作后,源码可以查看了但是打开资源文件就是乱码,比如布局xml文件。无奈只能用如下工具再进行反编译。
1 , android-apktool 下载地址:http://code.google.com/p/android-apktool/ 需要下载apktool-1.0.0.tar.bz2和apktool-install-windows-2.1_r01-1.zip两个包。下载完成后解压两个包,将解压出来的3个文件复制到C:\Windows文件夹里。
2, 将你要反编译的apk文件复制到C盘更目录。
3, 打开命令窗口 (开始 > 运行,输入cmd,回车。)进入到apktool.bat的文件夹里也就是C:\Windows
4, 输入 apktool d C:\**.apk C:\xxx文件夹 (命令行解释:apktool d 要反编译的文件 输出文件夹),在输出文件夹中就可以看到你想要的资源了。
如果你觉得这个应用某个地方的布局或者广告的嵌入让你不爽,你就可以找到相应文件进行修改,完成后同样用此工具进行打包。