Перетягніть пакет .APKM тут
або натисніть, щоб вибрати розділений архів .apkm, .apks або .zip
100% обробка в локальному браузері • Розбирає файли info.json і розділені APKВсередині архітектури контейнера APKM
Коли розробники публікують набір Android App Bundle (.aab) у Google Play, пристрої отримують лише розділені файли APK, адаптовані до їх апаратного забезпечення. Сторонні архівні платформи, як-от APKMirror, упаковують ці модульні розділи в пакет .apkm разом із дескриптором JSON під назвою info.json.
- Перевірка магічного байту заголовка: Перевіряє, чи використовує .apkm стандартне кадрування PKZIP (0x504B0304) чи зашифрований заголовок потоку v2.
- Розбір маніфесту info.json: Витягує назву пакета (pname), код версії, мінімальний рівень Android SDK і підтримувані архітектури ЦП.
- Стандартне перепакування .apks в один клік: Перетворює незашифровані контейнери .apkm в універсальні ZIP-архіви .apks, сумісні з SAI, bundletool і нашим головне злиття APK.
Технічна довідка: перетворення пакетів APKM на окремі файли APK
Файл .apkm не є єдиним скомпільованим пакетом Android — це багатокомпонентний архів, який містить основний модуль base.apk разом із окремими розділами конфігурації для наборів інструкцій ЦП (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 безпосередньо на телефоні призводить до помилки нерозпізнаного файлу.
Навіть якщо ви розпакуєте base.apk з архіву .apkm і спробуєте самостійно встановити його на Android 13, 14 або 15, два технічні бар’єри заважають додатку працювати:
- Застосування розподілу двійкового маніфесту (isSplitRequired="true"): Усередині скомпільованого двійкового AndroidManifest.xml base.apk тег <application> містить логічний атрибут android:isSplitRequired="true" (ідентифікатор ресурсу атрибута 0x01010591). Коли PackageManagerService Android бачить цей прапор під час встановлення одного APK, він негайно переривається з INSTALL_FAILED_MISSING_SPLIT.
- Окремі рідні бібліотеки та ресурси щільності: Усі скомпільовані спільні бібліотеки C/C++ (lib/arm64-v8a/*.so) і малюнки інтерфейсу користувача з високою роздільною здатністю містяться в супутніх файлах split_config.*.apk. Без об’єднання цих записів у базовий архів і оновлення resources.arsc програма аварійно завершує роботу під час запуску з java.lang.UnsatisfiedLinkError або Resources$NotFoundException.
- Потоки на основі ZIP та зашифровані APKM: Стандартні архіви .apkm починаються з 4-байтового підпису PKZIP (50 4B 03 04) і містять файл info.json у корені. Однак деякі нові завантаження APKMirror використовують спеціальний зашифрований формат оболонки (чарівний заголовок 02 ...), розроблений виключно для їхнього власного інсталятора. Наш аналізатор одразу перевіряє перші 16 байт вашого файлу в пам’яті браузера: якщо це стандартний .apkm на основі ZIP, ви можете розпакувати всі розбиття або експортувати чистий архів .apks прямо тут, а потім перекинути цей архів у наш домашня сторінка XAPK & Split APK Merger, щоб скомпілювати єдиний .apk, підписаний v1+v2.
| Внутрішній файл APKM | Призначення в доставці пакетів AAB | Потрібно для автономного встановлення? |
|---|---|---|
| info.json | Назва пакета запису метаданих JSON, versioncode, min_api і цільові ABI | Ні (лише метадані; видалено під час злиття APK) |
| base.apk | Основний байт-код DEX (classes.dex), основні AndroidManifest.xml і базові ресурси | так (обов'язковий базовий пакет) |
| split_config.arm64_v8a.apk | 64-розрядні власні бібліотеки C/C++ для ARM (lib/arm64-v8a/*.so) | так (обов’язковий для сучасних 64-розрядних телефонів) |
| split_config.xxhdpi.apk | Піктограми інтерфейсу користувача з високою щільністю, растрові зображення та макети (320dpi–640dpi) | так (запобігає аварійним завершенням роботи з пропущеним малюнком) |
| split_config.en.apk | Локалізовані таблиці рядків, скомпільовані для мови системи користувача | Рекомендовано (забезпечує належне відображення текстових міток інтерфейсу користувача) |