
Jadx 1.5.2 反编译深度解读DEX v41 支持首次落地Kotlin 类名自动还原【免费下载链接】jadxDex to Java decompiler项目地址: https://gitcode.com/gh_mirrors/ja/jadx如果你平时用 Jadx 反编译安卓 APK1.5.2 这一版有三处值得看DEX v41 支持、Kotlin 命名还原、防篡改压缩包读取另有一批界面与插件 API 的补充。 这个版本到底改了什么DEX v41 支持新安卓版本的字节码也能直接反编译DEX安卓的字节码格式类似 JVM 的 class 文件版本会跟着安卓系统一起迭代。Jadx 1.5.2 加入了对 DEX v41 的初步解析新版工具链打出来的应用不再因为格式版本号打不开。目前仍属初步支持冷门特性报错了先留意日志。Kotlin 命名还原乱码类名能自动变回原名Kotlin 编译产物里的类名、包名经常被压缩成 a、b、c 这种短名反编译后基本认不出来。这个版本会读取 SourceDebugExtension 里的 SMAP源码位置映射信息把真实的类和包名映射回来。以前靠人手对照维护的命名规则现在能自动完成了。防篡改 ZIP 阅读器改过结构的 APK 也能正常打开新的压缩包读取逻辑不再完全信任文件自报的目录信息重打包、资源被替换过的 APK 更不容易读崩。XAPK多个安装包打包在一起的格式的加载也重写了少了一截多余解压和空指针。要处理各种非原装安装包的场景这条最实用。GUI 预览与导出预览页、WebP、十六进制视图都来了图形界面补了几件实用货预览页可以直接翻看资源文件图片预览支持 WebP十六进制视图改成按需读取翻大文件不卡导出多了带选项的对话框APKM安卓包镜像格式首次能打开。Gradle 导出模板导出结果更接近可直接导入的安卓工程导出时新增 Gradle 模板覆盖安卓应用、安卓库和纯 Java 三种结构也处理了 AGP 8.0 之后非 final 资源 ID 的情况。导出完的目录离能直接 import 进工程又近了一步。⚙️ 底层怎么做的1.5.2 的自定义 ZIP 阅读器。官方的动机写得很直白对抗篡改。就像进小区不光刷门禁卡保安还要核对面——新读取器自己扫描文件内容来定位条目不再只信文件头里那份可能被人改过的目录表重打包的 APK 也因此能完整读出来。1.5.2 把变量命名拆成独立阶段。给变量起名字这件事它从代码生成环节里被拆了出来单独做成一道工序。就像查词和写文章分开每一步都能单独测试出错的变量名更容易被揪出来主流程也更稳。1.5.2 的异常声明自动补全。反编译结果现在会补上缺失的 throws 声明并校验异常声明是否正确。拿反编译代码做二次分析时方法签名完整能少写一堆防御性声明。 谁会用得上安全研究员处理重打包、资源被换过的安装包时防篡改阅读器和 XAPK、APKM 支持能少踩很多打不开的坑。Android 开发者反编译自己或第三方的 Kotlin 项目时SourceDebugExtension 还原的命名让类结构一眼可辨调试自己的应用也能拿它对照编译产物。插件作者插件 API 新增按名字取 GUI 图标、调起 Usage 对话框、往树节点挂右键菜单扩展的界面风格能跟主程序保持一致。 三步跑起来安装从 releases 页下载 jadx-1.5.2 压缩包解压即可用想跟源码就执行git clone https://gitcode.com/gh_mirrors/ja/jadx再用 Gradle 构建。首次加载命令行里跑bin/jadx app.apk反编译结果默认写到 out 目录。查看结果文本直接打开生成的 Java 文件想看资源预览和十六进制视图启动 jadx-gui 把 APK 拖进去。 进阶调优 已知坑大 APK 加 -j 参数指定线程数耗时明显缩短前提是内存给得够。个别类反编译失败时把 --decompilation-mode 设为 fallback能拿到可读性稍差但完整的代码。DEX v41 目前只是初步支持遇到解析异常先换最新构建试试再考虑提反馈。延伸阅读防篡改 ZIP 阅读器的代码在jadx-commons/jadx-zip/DEX 解析在jadx-core/src/main/java/jadx/core/dex/。 接下来官方后续会继续完善 DEX v41 的解析细节插件 API 也会跟着社区需求加长。这一版对打不开、读不全、认不出名字三个老毛病的处理建议升级后拿你的常规样本跑一轮验证。【免费下载链接】jadxDex to Java decompiler项目地址: https://gitcode.com/gh_mirrors/ja/jadx创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考