{
  "added_at": "2026-11-03",
  "additional_evidence_urls": [
    "https://github.com/rednaga/axmlprinter/blob/5a8d3e5f37780de48a29acc280c9660e400eceb1/build.gradle",
    "https://github.com/rednaga/axmlprinter/blob/5a8d3e5f37780de48a29acc280c9660e400eceb1/.github/workflows/gradle.yml",
    "https://github.com/rednaga/axmlprinter/tree/5a8d3e5f37780de48a29acc280c9660e400eceb1/src/test/resources",
    "https://github.com/rednaga/axmlprinter/blob/5a8d3e5f37780de48a29acc280c9660e400eceb1/src/main/proto/Resources.proto",
    "https://github.com/rednaga/axmlprinter/blob/5a8d3e5f37780de48a29acc280c9660e400eceb1/LICENSE",
    "https://github.com/rednaga/axmlprinter/releases/tag/v2.0.1",
    "https://github.com/rednaga/axmlprinter/pull/13",
    "https://github.com/rednaga/axmlprinter/issues/8"
  ],
  "category": "android",
  "description_en": "Java library and command-line tool that parses Android binary XML, such as the compiled AndroidManifest.xml inside an APK, and prints it as readable XML. Red Naga's near-complete rewrite of the Android4ME AXMLPrinter tolerates manipulated files seen in the wild, including out-of-order string tables and mangled start tags, and can write the classic AXML format back out. Since v2.0.0 it also reads the protobuf XML used in Android App Bundles and detects which format it was given.",
  "description_zh": "用于解析 Android 二进制 XML（例如 APK 中编译后的 AndroidManifest.xml）并输出为可读 XML 的 Java 库和命令行工具。它是 Red Naga 对 Android4ME AXMLPrinter 几乎全部重写的版本，能够处理实际样本中被篡改的文件，包括字符串表乱序和起始标签被改写等情况，并可重新写出传统 AXML 格式。自 v2.0.0 起，它还能读取 Android App Bundle 使用的 protobuf 格式 XML，并自动识别输入格式。",
  "entry_url": "https://awesomerea.org/resources/axmlprinter/",
  "entry_url_zh": "https://awesomerea.org/zh/resources/axmlprinter/",
  "evidence_url": "https://github.com/rednaga/axmlprinter/blob/5a8d3e5f37780de48a29acc280c9660e400eceb1/README.md",
  "group": "tools",
  "id": "axmlprinter",
  "json_url": "https://awesomerea.org/resources/axmlprinter/record.json",
  "kind": "tool",
  "markdown_url": "https://awesomerea.org/resources/axmlprinter/index.md",
  "markdown_url_zh": "https://awesomerea.org/zh/resources/axmlprinter/index.md",
  "name": "axmlprinter",
  "name_zh": "axmlprinter Android 二进制 XML 解析器",
  "record_type": "resource",
  "relationship": "foundation",
  "requirements": [
    "Latest release v2.0.1, published 2026-03-25 with a prebuilt jar, is tagged at the reviewed master commit 5a8d3e5. v2.0.0 of 2026-01-16 added read-only protobuf support through a contributed pull request; converting between AXML and protobuf is not supported.",
    "Build with the Gradle wrapper (./gradlew jar) into a self-contained jar run as java -jar axmlprinter-*.jar with a binary XML file and an optional output path, which applies to AXML only. CI builds and tests on JDK 17, and JitPack builds with OpenJDK 17; it depends on protobuf-java 4.34.1 and includes AOSP's Apache-2.0 aapt2 Resources.proto. Framework resource IDs are resolved only for common Android resources.",
    "Input is a single compiled XML file the analyst has already taken from an APK or app bundle, not the archive itself. The tests include binary manifest fixtures named large_from_malware.xml and qihoo_jiagu_issue8.xml, the latter from an issue about a manifest that failed to parse, plus a smaller test.xml.",
    "Apache-2.0, crediting Android4ME's 2008 code alongside Red Naga's."
  ],
  "requirements_zh": [
    "最新发布版本 v2.0.1 于 2026-03-25 发布并附预编译 jar，其标签正对应所审阅的 master 分支提交 5a8d3e5。2026-01-16 发布的 v2.0.0 通过外部贡献的拉取请求加入了只读的 protobuf 支持；不支持在 AXML 与 protobuf 之间转换。",
    "用 Gradle wrapper（./gradlew jar）构建为自包含 jar，以 java -jar axmlprinter-*.jar 加二进制 XML 文件运行，可选的输出路径只适用于 AXML。CI 在 JDK 17 上构建和测试，JitPack 也使用 OpenJDK 17；依赖 protobuf-java 4.34.1，并收录 AOSP 采用 Apache-2.0 的 aapt2 Resources.proto。框架资源 ID 只能解析常见的 Android 资源。",
    "输入是分析者已从 APK 或 App Bundle 中取出的单个编译后 XML 文件，而非安装包本身。测试附带名为 large_from_malware.xml 和 qihoo_jiagu_issue8.xml 的二进制清单文件，后者来自一个关于清单无法解析的问题报告，另有较小的 test.xml。",
    "采用 Apache-2.0 许可，同时署名 Android4ME 2008 年的代码与 Red Naga。"
  ],
  "targets": [
    "app"
  ],
  "url": "https://github.com/rednaga/axmlprinter",
  "verification": "source-reviewed",
  "verified_at": "2026-10-27"
}
