反编译APK获取代码以及资源
需要工具:
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
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库
· SQL Server 2025 AI相关能力初探