APK反编译流程

来源:互联网 发布:长春软件开发公司 编辑:程序博客网 时间:2024/05/07 20:02

一. 反编译apk获取资源文件:

 

     1. 工具下载:

 

        (1)APKTOOL的JAR包:http://code.google.com/p/android-apktool/downloads/list

                                          (apktool-1.3.1.tar.bz2)

 

        (2)APKTOOL工具:http://code.google.com/p/android-apktool/downloads/list

                                    (apktool-install-windows-2.2_r01-2.tar.bz2,apktool-install-linux-2.2_r01-1.tar.bz2)。

 

     2. 反编译:

 

        (1)解压缩apktool-1.3.1.tar.bz2获取JAR包,解压缩apktool-install-linux-2.2_r01-1.tar.bz2获取工具,

               将两次解压获取的内容放入同一目录下。

 

        (2)进入命令窗口进入到apktool的文件夹,执行:./apktool d ~/*.apk  ~/文件夹:

               (解释:./apktool d 要反编译的apk文件 输出文件夹)
     
               * 特别注意:反编译的apk文件一定要放在用户根目录中(Windows C盘根目录下),JDK需要1.6以上版本。

 

        (3)打开"~/文件夹"就可以得到我们需要的各种资源信息了。

 

二. 反编译apk获取Java源码:

 

     1. 工具下载:

 

        (1)DEX2JAR:http://laichao.googlecode.com/files/dex2jar-0.0.7-SNAPSHOT.zip

 

        (2)JD-GUI:Windows(http://laichao.googlecode.com/files/jdgui.zip),

                               Linux(http://laichao.googlecode.com/files/jd-gui-0.3.2.linux.i686.tar.gz)。

 

     2. 反编译:

 

        (1)把.apk文件改名为.zip,然后解压缩,得到其中的classes.dex文件,它就是由java文件编译后再通过dx工具打包而成。

 

        (2)把classes.dex拷贝到dex2jar.sh所在目录下。在命令行中定位到dex2jar.sh所在目录,

                 运行 ./dex2jar.sh classes.dex,生成classes.dex.dex2jar.jar文件。

 

        (3)运行JD-GUI工具,打开上面的jar文件,即可看到源代码。


转自:  http://blog.csdn.net/mayingcai1987/article/details/6210688