http://wenku.baidu.com/view/6fdaf44a852458fb770b5617.html
搞过几天android的朋友都知道,将apk文件解压后有两部分文件需要处理,一种是xml文件,另一种一个dex文件(.dex)。我们可以从.dex文件中得到.class,利用.class再得到大家垂涎已久的java文件。
反编译classes.dex:
1)工具:dex2jax,从dex到class公认dex2jar.bat,实现反编译,公认的强者;下载地址:http://code.google.com/p/dex2jar/downloads/list,然后解压。
方法:<1>.首先找到Android软件安装包中的classes.dex (解压得到),它就是java文件编译再通过dx工具打包成的。
<2>.把classes.dex拷贝到dex2jar.bat所在目录; 在命令行模式下定位到dex2jar.bat所在目录,首先运行:apktool if ***.apk 回车(此步骤是引导用,不用问原因,也就是建立框架)。运行 dex2jar.bat classes.dex ,生成classes.dex.dex2jar.jar
2)工具:JD-GUI,下载地址:http://jd-gui.softpedia.com/
下载到的文件为jd-gui-0.3.5.windows.zip,解压,里面有jd-gui.exe,是个绿色软件,不用安装。
将1)中生成的classes.dex.dex2jar.jar直接用jd-gui.exe打开即可看到所有的源代码。
2.反汇编.xml
对xml文件进行包的解析,一般有两种方式:apktool(推荐)和AXMLPrinter2.jar;