需要工具:
1、apktool:获取资源文件,提取图片文件,布局文件,还有一些XML的资源文件
2、dex2jar:将APK反编译成Java源码(将classes.dex转化为jar文件)
3、jd-gui:查看转换后的jar文件
1、使用apktool获得资源文件以及xml文件
1.1、下载apktool
apktool下载地址:https://ibotpeaches.github.io/Apktool/install/
注意.bat文件与下载的.jar文件需在同一文件夹下,同时更改.jar文件文件名为
apktool.jar
将文件所在文件夹添加到系统环境变量PATH中
在terminal中输入apktool显示出如下即安装成功
1.2、反编译
将需要反编译的apk文件移至apktool同一文件夹下
在文件资源管理器中apktool地址栏输入cmd然后输入以下命令
例:
apktool decode momo.apk -o demo /* 反编译momo.apk文件并将反编译结果输出到demo文件夹 */
apktool build demo -o new_momo.apk /* 将demo目录下资源重新打包为apk文件 */
反编译过程如图
demo文件夹内出现以下文件即反编译成功
2、使用dex2jar将classes.dex转换为jar文件
2.1、下载安装dex2jar
dex2jar下载地址:dex2jar download | SourceForge.net
下载后将其解压,并添加文件地址到系统环境变量PATH中
终端中输入d2j-dex2jar出现如下图所示即表示安装成功
2.2、将dex文件反编译为jar文件
将apk文件更改文件扩展名为zip并解压,获得classes.dex文件
dex2jar反编译命令:
d2j-dex2jar <dexFilePath> -o <outputJarFilePath>
例反编译classes.dex文件为classes_d2j.jar
d2j-dex2jar D:\soft\Decompile\classes.dex -o D:\soft\Decompile\classes_d2j.jar
即可获得jar文件
重编译命令
d2j-jar2dex <jarFilePath> -o <outputDexFilePath> /*注意前缀为jar2dex*/
3、使用jd-gui查看反编译后的jar文件
3.1、下载jd-gui
下载地址:Java Decompiler (java-decompiler.github.io)
下载后解压即可
3.2、查看转换后的jar文件
双击打开jd-gui.exe文件,然后将jar文件拖入即可
参考
Apktool 下载、安装和使用 - 简书 (jianshu.com)
Android-dex2jar 反编译工具的使用 - 简书 (jianshu.com)
https://blog.csdn.net/yushuangping/article/details/122110790
标签:反编译,dex2jar,文件,代码,jar,APK,classes,apktool From: https://www.cnblogs.com/progress2022/p/16791950.html