jadx
jadx 是一款开源的 Android Dex 反编译工具,可将 APK、DEX、AAB 等文件还原为 Java 源码,同时支持 Java 字节码与 smali 文件,并提供命令行与图形界面两种使用方式。
过去 7 天收获 8 颗 Star
爱鲜报评分
0 人评分
51k
星数
否
中文
Java
主语言
是
活跃
178
贡献者
人工分析
EDITORIAL推荐理由
jadx 是 Android 逆向与安全分析领域的事实标准工具,拥有 5 万以上 Star 和活跃的社区维护。它能直接反编译 APK 并解码 AndroidManifest.xml 与资源文件,还内置去混淆能力,配合 GUI 的跳转、查找引用和全文搜索,能显著提升分析效率。
适用场景
- Android 应用逆向分析与安全审计
- APK 体积与资源结构排查
- 学习第三方库或 SDK 的实现思路
- 恶意软件与漏洞样本分析
- Java 字节码与 smali 代码阅读
优点
- 支持 APK、DEX、AAB、XAPK 等多种格式,覆盖面广
- 同时提供 CLI 与 GUI,GUI 支持跳转声明、查找引用和全文搜索
- 内置去混淆功能,可加载 Tiny、Enigma 等映射文件
- 可导出为 Gradle 工程,便于二次编译与调试
- Apache-2.0 许可,社区活跃、更新频繁
缺点
- 无法保证 100% 还原代码,复杂混淆或优化代码会出现反编译错误
- 需要 Java 11+ 运行环境,处理大型 APK 时内存与耗时较高
- 反编译结果仅供分析,直接用于商业复现有法律与合规风险
jadx 简介
jadx 是一款开源的 Android Dex 反编译工具,目标是把 Dalvik 字节码还原成可读的 Java 源码。它同时提供命令行版本 jadx 和图形界面版本 jadx-gui,是 Android 逆向工程与安全分析中最常用的工具之一。
核心能力
- 从
APK、DEX、AAB、APKS、APKM、XAPK、ZIP等文件中反编译出 Java 代码 - 支持反编译 Java 字节码(
jar、class、aar)以及smali文件 - 解码
AndroidManifest.xml以及resources.arsc中的资源 - 内置去混淆器,可加载 Tiny、Enigma 等格式的映射文件
GUI 功能亮点
jadx-gui 提供语法高亮、跳转到声明、查找引用、全文搜索等能力,还带有 smali 调试器,适合逐层追踪调用链。
使用方式
下载发布包解压后,进入 bin 目录即可运行:
# 命令行反编译 APK
jadx -d out/ app.apk
# 启动图形界面
jadx-gui app.apk
在 macOS 上也可以通过 Homebrew 安装:
brew install jadx
注意事项
jadx 无法保证 100% 还原代码,遇到混淆或编译器优化时可能出现反编译错误,可参考官方 Troubleshooting 文档调整反编译模式(如 --decompilation-mode)。运行需要 64 位 Java 11 及以上版本。反编译结果建议仅用于学习、兼容性排查与安全研究,注意遵守相关法律法规。
评论
- 暂无评论,来写第一条吧。