Jadx 1.5.0 怎么用?APK 反编译新手入门:拖入、浏览、搜索关键代码

21次阅读
没有评论
Jadx 1.5.0 怎么用?APK 反编译新手入门:拖入、浏览、搜索关键代码
获取下载链
微信关注「软件教程管家」公众号,回复 Jadx

30秒速读:想看 App 里某个功能是怎么实现的?本篇是 Jadx 新手入门:装好 Java、拖入 APK、浏览代码、搜索关键代码,半小时从零上手 APK 反编译。

软件信息 详情
版本 1.5.0(本文基于该版本,具体以 GitHub 发布页说明为准)
平台 Windows / macOS / Linux
语言 中文
大小 / 更新日期 以 GitHub 发布页说明为准

三种用法对比:结论先行

结论先行:新手无脑用图形界面;要批量处理一堆 APK 再学命令行;想在 Android Studio 里整体看就导出 Gradle 工程。

用法(各版本通用) 适用场景 上手难度 推荐度
图形界面 jadx-gui 新手学习、单文件分析 低 ★★★ 推荐
命令行 jadx 批量反编译多个 APK 中 ★★☆ 按需
导出 Gradle 工程 导入 Android Studio 整体浏览 中 ★★☆ 按需

安装步骤:关键卡点 3 个

  1. 先装 Java:Jadx 运行依赖 Java 环境,建议安装较新的 JDK,具体版本要求以 GitHub 发布页说明为准——这是新手卡住最多的地方;
  2. 从 GitHub Releases 下载对应系统的压缩包并解压:Jadx 本体是开源的(GitHub:skylot/jadx),无需安装,解压即用;
  3. 启动图形界面:Windows 双击 jadx-gui.bat,Mac / Linux 运行 jadx-gui;第一次打开可能会弹安全提示,确认放行即可。

第一步:把 APK 拖进去

用法简单到离谱:直接把 .apk 文件拖到 Jadx 窗口里,或者用”文件 – 打开”选择 APK。Jadx 会自动开始反编译,APK 越大等待越久,几十 MB 的应用一般一两分钟能完成。左下角状态栏会显示进度,完成后左侧出现包结构树。

第二步:浏览代码结构

左侧是反编译后的包目录,结构和 Android 开发的源码包一一对应:

  • 找应用自己的代码:一般在以应用包名开头的目录下,比如 com.example.app,第三方库的代码通常在其他包名下;
  • 双击类名:右侧显示反编译后的 Java 代码,可读性相当不错,方法和变量名基本能还原;
  • 看资源文件:左侧的 res 目录可以看布局、图片、字符串,AndroidManifest.xml 能看到权限声明和 Activity 注册信息。

新手建议先从 AndroidManifest.xml 入手,找到感兴趣的 Activity 名字,再去包结构里定位对应的类,顺藤摸瓜。

第三步:搜索关键代码

这是 Jadx 最实用的功能。想找某个接口地址、密钥字样或功能逻辑,不用一个个文件翻:

  • 按类名搜索:快捷键 Ctrl+N(Mac 是 Cmd+O),输入类名关键字快速定位;
  • 全文文本搜索:用”导航 – 文本搜索”(Ctrl+Shift+F),在全部反编译代码里搜关键词,比如搜 http 找网络请求,搜 password、token 找敏感字段;
  • 跳转定义:按住 Ctrl 点击方法名或变量,可以跳转到定义处,顺着调用链一步步跟进去。

第四步:导出反编译结果

分析完如果想留存或用其他工具继续看,可以导出:

  • 文件 – 全部保存:把反编译出的全部源码导出为文件夹;
  • 文件 – 另存为 Gradle 项目:导出为可导入 Android Studio 的工程结构,方便整体浏览。

命令行用户也可以用 jadx -d 输出目录 目标.apk 批量处理。

新手必改的 3 个设置

设置一:反编译线程数(通用建议)

在首选项里把线程数按 CPU 核心数给足。体感差别:几十 MB 的大 APK 反编译从几分钟缩到一两分钟。具体入口以 GitHub 说明为准。

设置二:代码字体与主题(通用建议)

换成等宽大字体 + 深色主题。体感差别:长时间看代码眼睛不累,括号对齐一眼看清。

设置三:文件关联 APK(通用建议)

把 .apk 关联到 jadx-gui。体感差别:双击 APK 直接开工,不用每次拖文件。

新手常踩的坑

  • 加固过的 APK 看不懂:很多商业 App 做了加固或混淆,反编译出来可能是乱码类名或空壳代码,这是正常现象,Jadx 不是万能钥匙;
  • 反编译报错或卡住:换个 Jadx 版本试试,新版对新格式 APK 的兼容性更好;
  • 只看 Java 层不够:核心逻辑如果在 so(Native 层),Jadx 只能看到 Java 层的调用,需要配合其他工具分析。

常见问题与注意事项

系统要求是什么?

需要 Java 运行环境,具体 JDK 版本要求以 GitHub 发布页说明为准;Windows / macOS / Linux 均有对应版本。

反编译出来是乱码或空壳?

加固或混淆过的商业 App 会这样,是正常现象,Jadx 不是万能钥匙。

只看 Java 层不够怎么办?

核心逻辑如果在 so(Native 层),Jadx 只能看到 Java 层的调用,需要配合其他工具分析。

反编译报错或卡住排查

换个 Jadx 版本试试,新版对新格式 APK 的兼容性更好;仍不行先确认 Java 版本符合 GitHub 发布页要求。

合规提醒

反编译仅用于学习研究,比如学习优秀 App 的架构设计、排查自己应用的兼容问题。请勿用于破解收费功能、提取他人商业机密或绕过安全机制,相关行为可能触犯法律,后果自负。

相关下载

推广Jadx 1.5.0 怎么用?APK 反编译新手入门:拖入、浏览、搜索关键代码

关注「软件教程管家」

回复软件名即取即下:网盘下载链接 + 提取码,一步直达,不用再跳转。

版权与使用提示

本站资源仅供个人学习交流,请勿用于商业用途。软件与资料版权归原作者所有;如有侵权,请通过公众号「软件教程管家」联系我们,我们将在 24 小时内下架处理。查看免责声明 ›

上次编辑至今:13天 · 内容还比较新鲜

公告

契机库网站正式上线!

了解更多
正文完
 0
评论(没有评论)