如何进行APK反编译

       我们下载到某些apk的时候,可能总想学习下别人是怎么进行程序设计的,或者怎样使用xml文件布局的,这时就想到将apk文件的后缀改为rar并解压,最终得到一些图片资源和很多打开为乱码的文件,可见这种方式不可行,这就需要使用下面的工具对apk进行反编译了。

       一、工具准备:apktool、dex2jar、jd-gui

       工具包也可以在这里下载。

       1、dex2jar可以在这里下载,jd-gui可以在这里下载。

       2、apktool,可以到Google官方下载,apktool-1.0.0.tar.bz2(里面有apktool.jar)和apktool-install-windows-2.1_r01-1.zip两个包都要下。解压apktool.jar到 C:\Windows,解压apktool-install-windows.zip到任意文件夹(例如E盘根目录)。

       二、使用dex2jar + jd-gui 得到apk的java源码,步骤如下:

       1、用.rar打开apk文档,将classes.dex文件解压出来,然后使用工具反编译成.jar文件。

       在cmd下进入dex2jar.bat所在路径,然后输入“dex2jar.bat XXX”,XXX指的是你要反编译的apk中的classes.dex文件所在路径及名称,比如:我的dex2jar.bat在D:\Android\apk_decode\dex2jar-0.0.7-SNAPSHOT路径下,classes.dex在D:\Android下,所以你进入到dex2jar.bat路径后,输入dex2jar.bat D:\Android\classes.dex,这样会生成一个jar文件。

       2、用jd-gui反编译工具将得到.jar文件反编译成.java文件。

       三、使用apktool得到apk的xml文件

       1、Win+R 运行CMD,用cd命令转到apktool-install-windows所在文件夹,输入命令:

             apktool d XXX.apk ABC    反编译XXX.apk到文件夹ABC

       2、 在解压后的文件夹中可以得到apk的xml配置文件。

       四、第二步得到的程序源代码和第三步得到的xml文件组合下,就成一个android工程,即可得到完整的apk源码。


android开发学习网 » 如何进行APK反编译