快乐生活 2012-04-16
需要用到的工具:
1.dex2jar下载地址:http://laichao.googlecode.com/files/dex2jar-0.0.7-SNAPSHOT.zip
2.JD-GUI下载地址:http://laichao.googlecode.com/files/jdgui.zip
3.apktool下载地址:http://code.google.com/p/android-apktool/
首先我们需要从APK得到什么?因为Android程序最重要的是两部分,java代码和资源文件。
一、反编译Apk得到Java源代码
1.首先将apk文件,将后缀改为zip。因为APK文件就是rar文件,可以改后缀名。但是这样解压后是得不到xml文件的,会看到是乱码。后面会讲怎么样得到xml文件。解压,得到其中的classes.dex,它就是java文件编译再通过dx工具打包而成的;
2.解压下载的dex2jar,将classes.dex复制到dex2jar.bat所在目录。在命令行下定位到dex2jar.bat所在目录,运行
dex2jar.batclasses.dex
生成classes.dex.dex2jar.jar
3.运行JD-GUI,打开上面生成的jar包,即可看到源代码了。
二、反编绎资源文件
1.将下载的两个包解压到同一个文件夹下,应该会有三个文件:aapt.exe,apktool.bat,apktool.jar;
在命令行下定位到apktool.bat文件夹,输入以下命令:
apktooldC:\***.apkC:\***文件夹
命令行解释:apktool d [要反编译的apk文件 ] [输出文件夹]<!-- google_ad_section_end -->