红联Linux门户
Linux帮助

在Linux下反编译Android.apk文件

发布时间:2016-01-31 10:23:14来源:linux网站作者:treasure

一、apk反编译生成程序的源代码和图片、XML配置、语言资源等文件

下载反编译工具包:apktool:https://code.google.com/p/android-apktool/downloads/list

具体步骤:
将下载好的反编译工具包解压到android-apk文件夹里面。
在命令行下定位到android-apk文件夹,输入以下命令:java -jar apktool.jar d android.apk,出现如图所示:说明反编译成功

在Linux下反编译Android.apk文件

上图中,apktool.jar 命令行解释:java -jar apktool.jar d [apk文件 ] [输出文件夹],输出文件夹是可选的,如果没有指定输出到哪个文件夹下,那么默认是当前文件夹。


二、Apk反编译得到.class文件,通过jd-gui工具查看源代码
apk反编译工具dex2jar,是将apk中的classes.dex转化成jar文件
源码查看工具jdgui,是一个反编译工具,可以直接查看反编译后的jar包源代码

dex2jar 和 jdgui 最新版本下载:
dex2jar:http://code.google.com/p/dex2jar/downloads/list
jdgui:http://code.google.com/p/innlab/downloads/list

具体步骤:
首先将apk文件后缀改为zip并解压,得到其中的classes.dex,它就是java文件编译再通过dx工具打包而成的,将classes.dex复制到dex2jar-0.0.9.8文件夹里面。
在命令行下定位到dex2jar-0.0.9.8文件夹,运行
sh dex2jar.sh classes.dex
最终生成
classes_dex2jar.jar,如图所示:

在Linux下反编译Android.apk文件

然后,进入jd-gui-0.3.5文件夹双击jd-gui,打开上面生成的jar包classes_dex2jar.jar,即可看到源代码了。如图所示:

在Linux下反编译Android.apk文件


本文永久更新地址:http://www.linuxdiyf.com/linux/17803.html