1.准备工作:下载反编译工具
主要工具有三个:apktool、dex2jar还有jdgui
(1)如下图所示为apktool包解压后的文件
(2)如下图所示为dex2jar压缩包解压后的文件
(3)jdgui(一般来说在dex2jar压缩包中会有jdgui)
2.开始反编译
(1)将你所要反编译的apk文件(如sougoushurufa_270.apk)copy到apktool所在的目录下,比如我的apktool目录为 F:\apk_反编译\apktool1.4.1;
(2)打开命令行,进入apktool目录:cd /d F:\apk_反编译\apktool1.4.1 ;
(3)开始反编译,输入指令: apktool d sougoushurufa_270.apk;
以上反编译的只是资源文件,要想获得java文件还需进行以下几步:
(4)将apk的后缀改为zip格式然后解压,找到classes.dex,将其复制到dex2jar所在目录,即 F:\apk_反编译\dex2jar-0.0.9.9下面;
(5)打开命令行,进入apktool目录:cd /d F:\apk_反编译\dex2jar-0.0.9.9;
(6)输入指令:dex2jar classes.dex,生成classes_dex2jar.jar文件;
(7)将生成classes_dex2jar.jar文件后缀名改为zip格式;
(8)直接将classes_dex2jar.zip拖到jd-gui.exe中打开即可查看java文件。
备注:由于程序员在编写apk过程中为了防止反编译而采取了加密,所以我们反编译得到的资源文件和java文件可能都只是一部分。