# DexKit 混淆 DEX 代码检索库

> 以 C++ 实现的 DEX 解析库，提供 Kotlin 与 Java API，可加载 APK、DEX 字节数据或应用的类加载器，并按特征而非混淆后的名称查找类、方法和字段。匹配条件可组合包名范围、修饰符与原始访问标志、字段类型、参数类型和返回类型、注解、方法使用的字符串与数值常量以及其调用的方法；批量查询可依据字符串一次定位多个目标，查询结果还提供操作码、调用者、被调用方法和所用字段。其文档以让 Xposed Hook 点在混淆后的不同应用版本间保持可用为主要场景，同样的查询也可用来快速、可编程地检索应用字节码。

- 类型：工具
- 目标：应用
- 类别：Android 工具
- 关联：基础工具
- 来源复核于：2026-10-20
- 收录于：2026-11-02
- 原始资源：<https://github.com/LuckyPray/DexKit>
- 一手来源：<https://github.com/LuckyPray/DexKit/blob/f86a036ef2f000e3b42a2e52a25ae3f27770e7f0/README.md>
- 目录页面：<https://awesomerea.org/zh/resources/dexkit/>
- 记录 JSON：<https://awesomerea.org/resources/dexkit/record.json>
- 英文版：[English](https://awesomerea.org/resources/dexkit/index.md)

## 使用条件与局限

- 审阅时最新版本为 2.3.0，发布于 2026-09-22，未附带文件；该版本新增读取数值字面量和匹配原始 DEX 访问标志的功能，并优化了缓存与字符串查询。所审阅的 master 提交（2026-10-10）比该标签多两个核心修复。软件包以 org.luckypray:dexkit 发布在 Maven Central；自 2.0 起构件 ID 由 DexKit 改为 dexkit。
- Android 项目需要 JDK 11+、Kotlin 1.5+、AGP 4.2+ 和 minSdkVersion 21+，建议 23+，因为在较低设置下 libdexkit.so 可能因 APK 中的库被压缩而无法加载。自 1.1.0 起也可在 Windows、Linux 和 macOS 桌面上基于源码运行，需用 gcc 或 clang、CMake 以及 Ninja 或 Make 构建，Windows 上使用 MSYS2；CI 会在这三个平台上构建原生库。要查询的 APK、DEX 数据或类加载器由使用者提供；仓库中唯一的应用是项目自己的演示应用。
- 文档将 DexKit 定位为面向 Xposed 模块开发者的工具，README 示例也运行在 Xposed Hook 中。匹配结果取决于使用者编写的条件，因此只能找出候选的类和成员，而不能恢复原始名称。仓库包含使用 smali 测试样本的单元测试，但所审阅的工作流只构建原生库和软件包。
- Core/ 以外的部分采用 Apache-2.0，Core/ 中的原生代码采用 LGPL-3.0，但 README 的许可证徽章只链接到 LGPL。README 列出 AOSP 的 slicer、ThreadPool 和 parallel-hashmap 作为第三方来源。用它分析的应用仍受各自条款约束。

## 一手来源

1. <https://github.com/LuckyPray/DexKit/blob/f86a036ef2f000e3b42a2e52a25ae3f27770e7f0/README.md>
2. <https://github.com/LuckyPray/DexKit/blob/f86a036ef2f000e3b42a2e52a25ae3f27770e7f0/doc-source/src/en/guide/home.md>
3. <https://github.com/LuckyPray/DexKit/blob/f86a036ef2f000e3b42a2e52a25ae3f27770e7f0/doc-source/src/en/guide/quick-start.md>
4. <https://github.com/LuckyPray/DexKit/blob/f86a036ef2f000e3b42a2e52a25ae3f27770e7f0/doc-source/src/en/guide/run-on-desktop.md>
5. <https://github.com/LuckyPray/DexKit/blob/f86a036ef2f000e3b42a2e52a25ae3f27770e7f0/dexkit/src/main/java/org/luckypray/dexkit/DexKitBridge.kt>
6. <https://github.com/LuckyPray/DexKit/blob/f86a036ef2f000e3b42a2e52a25ae3f27770e7f0/.github/workflows/build-native.yml>
7. <https://github.com/LuckyPray/DexKit/tree/f86a036ef2f000e3b42a2e52a25ae3f27770e7f0/dexkit/src/test>
8. <https://github.com/LuckyPray/DexKit/blob/f86a036ef2f000e3b42a2e52a25ae3f27770e7f0/LICENSE>
9. <https://github.com/LuckyPray/DexKit/blob/f86a036ef2f000e3b42a2e52a25ae3f27770e7f0/Core/LICENSE>
10. <https://github.com/LuckyPray/DexKit/releases/tag/2.3.0>

## 同分区更多条目：应用

- [bun-demincer Bun 可执行文件 JavaScript 还原工具](https://awesomerea.org/zh/resources/bun-demincer/index.md) · 工具
- [dex-oracle Dalvik 反混淆工具](https://awesomerea.org/zh/resources/dex-oracle/index.md) · 工具
- [arkdecompiler 鸿蒙 NEXT 反编译器](https://awesomerea.org/zh/resources/arkdecompiler/index.md) · 工具
- [JNIAnalyzer Ghidra 扩展](https://awesomerea.org/zh/resources/jnianalyzer/index.md) · 工具
- [Android Reverse 设备端逆向套件](https://awesomerea.org/zh/resources/ultrasina-android-reverse/index.md) · 工具
- [jsc-decompile-mozjs-34 SpiderMonkey 字节码反编译器](https://awesomerea.org/zh/resources/jsc-decompile-mozjs-34/index.md) · 工具

## 关于此条目

说明已依据一手来源复核。
原创说明采用 MIT 许可；外部项目、论文与素材保留各自的权利和许可。
