您的位置:首页 > 移动开发 > Android开发

Android apk反编译详解 (附图)

2013-11-14 18:52 246 查看
一、apk反编译生成程序的源代码和图片、XML配置、语言资源等文件

Ubuntu下:

1. 新建工作目录WorkArea

2.将下载好的反编译工具包apktool解压到WorkArea文件夹里面。



3. 在命令行下定位到WorkArea文件夹,输入以下命令:java -jar apktool.jar d Chrome.apk,出现如下图所示,说明反编译成功



4. 打开编译成功的文件,如下图



左边为反编译后生成的文件,右边为里面的资源文件

Windows下:

注:需先安装java JDK,可参考:/article/10062088.html

1)新建一个WorkArea目录

2) 下载反编译工具包apktool-install-windows-r05-ibot 到WorkArea目录,解压apktool-install-windows-r05-ibot并打开该目录,该文件夹内含三个文件:aapt.exe,apktool.bat,apktool.jar

3) 在WorkArea下新建一个apkSource目录,将需要反编译的apk 复制到该目录



4) 在命令行下定位到apktool.bat文件夹,输入以下命令:apktool.bat d -f ..\apkSource\Chrome.apk ..\Chrome,如下图:



上图中,apktool.bat 命令行解释:apktool.bat d -f [apk文件 ] [输出文件夹]
5.生成Chrome 文件夹,里面为反编译出来的文件



二、Apk反编译得到.class文件,通过jd-gui工具查看源代码

1. 新建工作目录WorkArea

2. 将下载好的工具 dex2jar-0.0.9.8.rar 及需要反编译的apk(本例为Chrome.apk)放在工作目录中; 再将Chrome.apk文件后缀改为zip,如下图,



3. 解压Chrome.zip得到Chrome,里面包含classes.dex文件(它是java文件编译再通过dx工具打包而成的);再解压dex2jar-0.0.9.8.rar文件,如下图



4.将Chrome中的classes.dex复制到dex2jar-0.0.9.8文件夹里面。



左边为解压Chrome.zip得到的文件,右边为解压dex2jar-0.0.9.8.rar得到的文件,右图中的classes.dex为拷贝后的情况。

5. 在命令行下定位到dex2jar-0.0.9.8文件夹,运行 sh dex2jar.sh classes.dex,得到classes_dex2jar.jar文件



6. 在Windows下进入目录dex2jar-0.0.9.8,打开里面的jd-gui,如下图



7. 用jd-gui打开目录dex2jar-0.0.9.8中所生成的jar包:classes_dex2jar.jar,此时即可看到代码了,如下图



相关资源下载: dex2jar-0.0.9.8.rar

apktool.jar

apktool-install-windows-r05-ibot

尊重原创,乐于分享,转载请注明转自:/article/10062087.html

推荐阅读:http://blog.csdn.net/ithomer/article/details/6727581
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: