您的位置:首页 > 其它

apk文件反编译工具和步骤小结

2013-03-07 10:34 190 查看
apk文件反编译工具和步骤小结

APK反编译工具下载:

1. apktool下载后解压即可使用。

下载地址: http://code.google.com/p/android-apktool/downloads/list
2. dex2jar下载后解压即可使用。

用途:将apk或者dex转化为可以用gui查看的class文件

下载地址:http://code.google.com/p/dex2jar/downloads/list

3. smali.jar和smali下载后放置到apktool目录下即可

用途:.smali文件 转成 classes.dex文件

说明:.smali文件,类似于.class文件,可以用普通文本编辑器查看和修改。

用法举例:命令行:java -jar smali.jar classout/ -o classes.dex

下载地址:http://code.google.com/p/smali/downloads/list

4. baksmali-1.2.6.jar

用途:classes.dex文件 转成 .smali文件

说明:classes.dex不便于查看和理解,使用此工具转成的.smali文件易于阅读和修改。

用法:命令行:java -jar baksmali.jar -o classout/ classes.dex

下载:http://code.google.com/p/smali/downloads/list

5. AXMLPrinter2.jar

用途:xml文件 转成 普通文本文件(txt)

说明:apk中的xml文件被搞成二进制了,无法阅读,使用此工具转换后,可以查看正常的xml文件。

用法举例:命令行:java -jar AXMLPrinter2.jar main.xml > main.txt

下载:http://code.google.com/p/android4me/downloads/list

APK反编译步骤:

1. 应用test.apk文件拷贝到apktool文件夹下

2. 打开cmd,跳转到apktool目录下输入apktool.bat d test.apk,得到test文件

运行结果:

3. 经过上述步骤后,test文件中生成.smali文件,工具文件smali.jar和smali拷贝到apktool根目录下,

再使用命令:java -jar smali.jar test/ -o classes.dex ,

就会得到一个classes.dex文件。

运行结果:

4. 把文件classex.dex拷贝到dex2jar根目录下,

执行命令:dex2jar.bat classes.dex, 便会得到classes_dex2jar.jar文件。

运行结果:

5. classes_dex2jar.bat使用jdgui打开就可以看见java代码了。

运行结果:

注:出现一些编译错误的时候,可能是工具版本的问题,请使用最新版本工具

下过来的apk文件只能编译出部分文件,希望牛人指教!!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: