XAPK、APKS、APKM:基准、结构、速度和结论 (2026)
直接比较结论: 当 Google Play 从整体 APK 过渡到 动态交付(拆分 APK) 时,第三方工具和存储库需要容器格式来将 base.apk 与其所需的 CPU ABI、屏幕密度 (DPI) 和语言分割捆绑在一起。如今,三种格式占据主导地位:.xapk(最适合需要 .obb 扩展数据的游戏)、.apks(由 Google 的 bundletool 和 SAI 生成的开放标准)和 .apkm(APKMirror 与 info.json 的拆分捆绑格式)。
1. 对比规格和基准矩阵
| 规格/公制 | XAPK (.xapk) | APKS (.apks) | APKM (.apkm) |
|---|---|---|---|
| 起源/创造者 | APKPure / 开放社区 | 谷歌 bundletool 和 SAI | APKMirror |
| 二进制容器标头 | 标准 PKZIP (0x504B0304) | 标准 PKZIP (0x504B0304) | PKZIP 或加密流 |
| 元数据清单文件 | manifest.json + icon.png | toc.pb(Protobuf)或 meta.sai_v2.json | info.json + icon.png |
| 支持 OBB 扩展文件吗? | 是的 (Android/obb/<pkg>/*.obb) | 否(仅限拆分 APK 和 Play Asset Delivery) | 否(仅限拆分 APK) |
| 平均。浏览器合并速度 (150 MB) | 〜3.8秒 | 〜3.4秒 | ~2.1 秒(拆包/重新包装) |
| xapktoapk.com 专用在线工具 | XAPK 转 APK 在线转换器 & XAPK生成器 | APKS 到 APK 合并 | APKM 到 APK 解包器 |
2. 内部元数据架构差异(manifest.json 与 info.json)
当以编程方式检查包或调试安装程序失败时,存档根目录内的 JSON 描述符会立即识别容器格式:
- XAPK(manifest.json): 定义 xapk_version(对于旧版 APK+OBB 为 1,对于拆分 APK 为 2)、package_name、version_code、split_apks: [{ id, file }] 和 expansions: [{ file, install_location, install_path }]。您可以使用我们的 XAPK 查看器和清单验证器 实时验证此架构。
- APKM(info.json): 使用 pname、versioncode、release_version、min_api 和 arches 等键。我们的APKM 到 APK 解包器直接在浏览器中解析这个文件。
- APKS(toc.pb): 运行 bundletool build-apks --bundle=app.aab --output=app.apks 时生成。包含平面 split_*.apk 文件或嵌套 splits/base-master.apk 条目。使用我们的 APKS 到 APK 合并 将它们展平并组合成一个可安装的 .apk。
3. 您应该选择哪种格式?
- 选择XAPK 打包或备份依赖于外部 .obb 扩展文件以及拆分 APK 的大型 Android 游戏时。
- 从 Android 应用程序包 (.aab) 导出拆分构建或通过 SAI 备份已安装的拆分应用程序以实现最大跨工具兼容性时,为 选择APKS。
- 每当您想要通过 Android 的本机软件包安装程序、SideQuest、Firestick 下载程序或 Windows Android 模拟器进行一键安装时,请使用 将其中任何一个转换为单个独立 APK。