{
  "added_at": "2026-10-27",
  "additional_evidence_urls": [
    "https://github.com/ohos-decompiler/abc-decompiler/blob/427c4cd9f80496236a4a3548d29a6b8aaf74b8e0/README.md#L16-L28",
    "https://github.com/ohos-decompiler/abc-decompiler/blob/427c4cd9f80496236a4a3548d29a6b8aaf74b8e0/README.md#L38-L70",
    "https://github.com/ohos-decompiler/abc-decompiler/blob/427c4cd9f80496236a4a3548d29a6b8aaf74b8e0/jadx-core/src/main/java/jadx/core/dex/instructions/InsnDecoder.java",
    "https://github.com/ohos-decompiler/abc-decompiler/blob/427c4cd9f80496236a4a3548d29a6b8aaf74b8e0/jadx-core/build.gradle.kts",
    "https://github.com/ohos-decompiler/abc-decompiler/blob/427c4cd9f80496236a4a3548d29a6b8aaf74b8e0/LICENSE",
    "https://github.com/ohos-decompiler/abc-decompiler/releases/tag/h1",
    "https://github.com/ohos-decompiler/abcde",
    "https://github.com/ohos-decompiler/abc-decompiler/issues/6"
  ],
  "category": "android",
  "description_en": "Decompiler for HarmonyOS Ark bytecode (.abc), the format HarmonyOS app packages carry in modules.abc, built by adapting the jadx decompiler and reading files through a patched copy of the abcde library. Because much of Ark bytecode is semantically close to DEX, it reuses jadx's GUI, IR and passes: an .abc file dropped into the jadx-based window is shown as decompiled code. The README reports that all 227 usable instructions of the 282 Ark opcodes are implemented, most special instructions as pseudo-functions.",
  "description_zh": "面向鸿蒙方舟字节码（.abc）的反编译工具；HarmonyOS 应用包中的 modules.abc 即为此格式。它通过改造 jadx 反编译器实现，并借助打过补丁的 abcde 库读取文件。由于方舟字节码有很大一部分与 DEX 字节码语义相近，它沿用了 jadx 的图形界面、中间表示和处理流程：把 .abc 文件拖入基于 jadx 的窗口即可查看反编译代码。README 称 282 条方舟字节码中可用的 227 条指令均已实现，其中大部分特殊指令以伪函数形式实现。",
  "entry_url": "https://awesomerea.org/resources/abc-decompiler/",
  "entry_url_zh": "https://awesomerea.org/zh/resources/abc-decompiler/",
  "evidence_url": "https://github.com/ohos-decompiler/abc-decompiler/blob/427c4cd9f80496236a4a3548d29a6b8aaf74b8e0/README.md",
  "group": "tools",
  "id": "abc-decompiler",
  "json_url": "https://awesomerea.org/resources/abc-decompiler/record.json",
  "kind": "tool",
  "markdown_url": "https://awesomerea.org/resources/abc-decompiler/index.md",
  "markdown_url_zh": "https://awesomerea.org/zh/resources/abc-decompiler/index.md",
  "name": "abc-decompiler",
  "name_zh": "abc-decompiler 鸿蒙方舟字节码反编译器",
  "record_type": "resource",
  "relationship": "foundation",
  "requirements": [
    "The README describes the project as still in development: decompilation passes for more readable output, a custom IR and data-flow analysis are listed as unfinished. The only release, h1, published 2024-12-20, ships a single jadx-dev-all.jar built from the reviewed master commit, and the repository has had no pushes since.",
    "Building needs JDK 17+; the patched abcde fork must first be published to the local Maven repository and its version substituted into the Gradle files before ./gradlew dist. Input is the modules.abc file from the user's own HarmonyOS HAP package.",
    "The repository is a modified jadx code base: jadx's DEX input, test samples and inherited CI files remain, and it has no GitHub Actions workflow of its own, so no tests of Ark bytecode output are reported.",
    "Apache-2.0, as inherited from jadx; the abcde fork is also Apache-2.0."
  ],
  "requirements_zh": [
    "README 称项目仍在开发中：用于改善代码可读性的反编译优化模块、定制中间表示以及数据流分析均列为尚未完成。唯一的发布版本 h1 于 2024-12-20 发布，只提供一个由所审阅 master 分支提交构建的 jadx-dev-all.jar，此后仓库再无推送。",
    "构建需要 JDK 17+；须先将打过补丁的 abcde 分支发布到本地 Maven 仓库，并在 Gradle 文件中替换为实际版本号，再执行 ./gradlew dist。输入为用户自己 HarmonyOS HAP 包中的 modules.abc 文件。",
    "该仓库是改造过的 jadx 代码库：jadx 原有的 DEX 输入、测试样本和继承来的 CI 文件仍保留，自身没有 GitHub Actions 工作流，因此未报告针对方舟字节码输出的测试。",
    "沿用 jadx 的 Apache-2.0 许可；abcde 分支同样采用 Apache-2.0。"
  ],
  "targets": [
    "app"
  ],
  "url": "https://github.com/ohos-decompiler/abc-decompiler",
  "verification": "source-reviewed",
  "verified_at": "2026-10-19"
}
