APKM 捆绑包解包器

APKM 到 APK 转换器和在线解包器

直接在浏览器中检查并解压 .apkm 分割包。自动解析 info.json 元数据、验证二进制容器标头、提取 base.apk 和 CPU/DPI 拆分,或生成可立即运行的 adb install-multiple 命令 — 100% 客户端,零服务器上传。

将 .APKM 捆绑包拖放到此处

或单击选择 .apkm、.apks 或 .zip 分割存档

100% 本地浏览器处理 • 解析 info.json 和拆分 APK

APKM 容器架构内部

当开发人员将 Android App Bundle (.aab) 发布到 Google Play 时,设备仅收到针对其硬件定制的拆分 APK。 APKMirror 等第三方存档平台将这些模块化拆分打包到 .apkm 捆绑包中,并附带名为 info.json 的 JSON 描述符。

  • 标头魔字节验证: 检查 .apkm 是否使用标准 PKZIP 成帧 (0x504B0304) 还是加密的 v2 流标头。
  • info.json 清单解析: 提取包名称 (pname)、版本代码、最低 Android SDK 级别和支持的 CPU 架构。
  • 一键标准.apks重新包装: 将未加密的 .apkm 容器转换为与 SAI、bundletool 和我们的 主要拆分 APK 合并 兼容的通用 .apks ZIP 存档。

技术参考:将 APKM 捆绑包转换为独立 APK 文件

.apkm 文件不是单个编译的 Android 包 - 它是一个多部分存档,包含主要 base.apk 模块以及 CPU 指令集(split_config.arm64_v8a.apk、split_config.armeabi_v7a.apk)、屏幕像素密度(split_config.xxhdpi.apk、split_config.xxxhdpi.apk)和本地化字符串资源(split_config.en.apk)的单独配置分割。由于 Android 的默认包安装程序 (PackageInstaller) 在从文件管理器旁加载时仅接受单个整体 .apk,因此直接在手机上点击 .apkm 文件会导致无法识别的文件错误。

即使您从 .apkm 存档中提取 base.apk 并尝试在 Android 13、14 或 15 上单独安装它,仍有两个技术障碍会阻止该应用程序运行:

  • 二进制清单分割执行 (isSplitRequired="true"): 在base.apk的编译二进制文件AndroidManifest.xml中,<application>标签携带布尔属性android:isSplitRequired="true"(属性资源ID 0x01010591)。当 Android 的 PackageManagerService 在单个 APK 安装期间看到此标志时,它会立即中止并显示 INSTALL_FAILED_MISSING_SPLIT。
  • 独立的本机库和密度资源: 所有已编译的 C/C++ 共享库 (lib/arm64-v8a/*.so) 和高分辨率 UI 绘图都驻留在配套的 split_config.*.apk 文件中。如果不将这些条目合并到基础存档中并更新 resources.arsc,则应用程序在使用 java.lang.UnsatisfiedLinkError 或 Resources$NotFoundException 启动时会崩溃。
  • 基于 ZIP 与加密 APKM 流: 标准 .apkm 存档以 4 字节 PKZIP 签名 (50 4B 03 04) 开头,并在根目录中包含一个 info.json 文件。但是,某些较新的 APKMirror 下载使用专门为其专有安装程序设计的自定义加密包装格式(魔术标头 02 ...)。我们的分析器会立即在浏览器内存中检查文件的前 16 个字节:如果它是标准的基于 ZIP 的 .apkm,您可以在此处解压所有拆分或导出干净的 .apks 存档,然后将该存档放入我们的 首页 XAPK & Split APK 合并 中以编译单个 v1+v2 签名的 .apk。
APKM内部文件 Android 应用程序包交付的目的 需要独立安装吗?
info.json JSON 元数据描述符记录包名称、versioncode、min_api 和目标 ABI 否(仅元数据;在 APK 合并期间被剥离)
base.apk 主要 DEX 字节码 (classes.dex、核心 AndroidManifest.xml) 和基线资源 是的(强制核心包)
split_config.arm64_v8a.apk 64 位 ARM 本机 C/C++ 共享库 (lib/arm64-v8a/*.so) 是的(现代 64 位手机需要)
split_config.xxhdpi.apk 高密度 UI 图标、位图和布局绘图 (320dpi–640dpi) 是的(防止丢失可绘制崩溃)
split_config.en.apk 为用户的系统语言编译的本地化字符串表 推荐(确保 UI 文本标签正确呈现)
由 Shaefale 女士设计并记录 首席开发人员和 Android 包架构师 • 在 Android 12–15 上经过验证

APKM Unpacker 中的所有文件检查均使用 HTML5 文件 API 和 JSZip 在浏览器本地 100% 运行。

APKM 到 APK — 常见问题

将您的 .apkm 存档放入上面的解包程序中,然后单击 重新打包为标准 .APKS (ZIP),或直接提取拆分的 APK。然后,您可以使用我们的 主 XAPK 和拆分 APK 转换器 将所有拆分合并到单个独立签名的 APK,通过开源 SAI(拆分 APK 安装程序) 安装它们,或者从 PC 或 Mac 运行生成的 adb install-multiple 命令。

从 APKMirror 下载的一些较新内容包含在专有的加密流密码中,而不是标准的 PKZIP 容器中。当我们的二进制头检查检测到非 ZIP 魔术字节时,您可以使用 SAI 将设备上安装的应用程序转换为标准拆分备份,或者在浏览器中合并拆分之前使用开源桌面 CLI 解密器 (apkm2apk)。

是的。一切都在您的浏览器内存中本地运行 - 没有文件上传到或保留在任何服务器上。请仅处理您合法拥有的软件包、开源版本或您自己的开发版本。