jadx:更好的Android反编译工具
https://liuzhichao.com/2016/jadx-decompiler.html
在jadx出现之前,我一般是使用apktool和dex2jar这两个Android反编译工具。这两个工具也有不同的侧重点,如果只是想拿到apk里的一些图片或其他资源或是查看一下布局的layout文件,直接使用apktool -d xxx.apk
即可。如果是要查看一下代码实现,就使用d2j-dex2jar.sh
反编译一下apk然后使用jd-gui工具查看反编译后的.jar文件。
apktool+dex2jar+jd-gui一直是一个比较流行的Android反编译组合。 在使用过jadx之后觉得jadx相比上面的组合具有如下两个优点: * 可以直接反编译出.java文件 * 查看源码时直接显示资源名称,而不是像jd-gui里显示的资源ID
安装jadx
编译安装
git clone https://github.com/skylot/jadx.git
cd jadx
./gradlew dist
然后将build/jadx/bin加入到环境变量。
直接下载安装
- github: https://github.com/skylot/jadx/releases
- sourceforge: http://sourceforge.net/projects/jadx/files/
使用jadx
jadx也有GUI,直接双击bin目录下的jadx-gui,然后选择要反编译的apk即可,运行效果如下。

jadx -d out classes.dex #直接输出.java文件到out目录
jadx-gui classes.dex #使用gui打开
在反编译较大的apk时,如果遇到jadx-jui卡顿和假死的情况,可适当优化jvm相关参数, 我直接在~/.bash_profile
中加上了如下语句:
export JVM_ARGS="-Xmx4096m -XX:MaxPermSize=1024m"
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
2017-06-19 【Android M】获取屏幕锁定的相关信息:“无”,“滑动”,“PIN码”,"图案","密码"
2017-06-19 【Android M】eng或userdebug版本,用户忘记锁屏密码了,如何突破锁屏进入主界面?
2017-06-19 【Android N 7.1.1】 ActivityManagerService 获取cpu状态