APKM Bundle بازکننده بسته

تبدیل 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 در کنار یک توصیفگر JSON به نام info.json بسته‌بندی می‌کنند.

  • تأیید بایت جادویی هدر: بررسی می کند که آیا .apkm از قاب بندی استاندارد PKZIP (0x504B0304) یا سرصفحه جریان v2 رمزگذاری شده استفاده می کند.
  • تجزیه مانیفست info.json: نام بسته (pname)، کد نسخه، حداقل سطح Android SDK و معماری‌های CPU پشتیبانی شده را استخراج می‌کند.
  • بسته بندی مجدد استاندارد .apks با یک کلیک: ظروف .apkm رمزگذاری نشده را به بایگانی ZIP جهانی .apks تبدیل می کند که با SAI، bundletool و ادغام اصلی Split APK ما سازگار است.

مرجع فنی: تبدیل بسته‌های 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 فایل مستقیماً روی گوشی شما منجر به خطای فایل ناشناخته می شود.

حتی اگر 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 از کار می‌افتد.
  • بایگانی استاندارد جریان‌های APKM مبتنی بر ZIP در مقابل جریان‌های رمزگذاری‌شده: .apkm با امضای PKZIP 4 بایتی (50 4B 03 04) شروع می شود و شامل یک فایل info.json در ریشه است. با این حال، برخی از بارگیری‌های جدیدتر APKMirror از قالب بسته بندی رمزگذاری شده سفارشی (سربرگ جادویی 02 ...) استفاده می‌کنند که منحصراً برای نصب‌کننده اختصاصی آن‌ها طراحی شده است. تحلیلگر ما 16 بایت اول فایل شما را بلافاصله در حافظه مرورگر بررسی می‌کند: اگر یک .apkm مبتنی بر ZIP استاندارد است، می‌توانید همه تقسیم‌ها را باز کنید یا یک بایگانی تمیز .apks را درست در اینجا صادر کنید، سپس آن بایگانی را در صفحه اصلی XAPK & Split APK Merger خود رها کنید تا یک .apk با امضای v1+v2 را جمع‌آوری کنید.
فایل داخلی APKM هدف در تحویل بسته برنامه Android برای نصب مستقل مورد نیاز است؟
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 جداول رشته های محلی سازی شده برای زبان سیستم کاربر توصیه می‌شود (اطمینان می‌دهد که برچسب‌های نوشتاری رابط کاربری به درستی ارائه می‌شوند)
مهندسی و مستند شده توسط Mst Shaefale توسعه‌دهنده اصلی و معمار بسته Android • تأییدشده در Android 12–15

تمام بازرسی فایل ها در APKM بازکننده بسته 100% به صورت محلی در مرورگر شما با استفاده از HTML5 File API و JSZip اجرا می شود.

APKM به APK - سوالات متداول

بایگانی .apkm خود را در بازکننده بسته بندی بالا رها کنید و روی بسته بندی مجدد به عنوان APKS استاندارد (ZIP) کلیک کنید، یا فایل های APK تقسیم شده را مستقیما استخراج کنید. سپس می‌توانید با استفاده از مبدل اصلی XAPK & Split APK، همه تقسیم‌ها را در یک APK امضا شده مستقل ادغام کنید، آنها را از طریق SAI (نصب کننده APK های تقسیم شده) منبع باز نصب کنید، یا دستور adb install-multiple تولید شده را از رایانه شخصی یا Mac خود اجرا کنید.

برخی از دانلودهای جدیدتر از APKMirror به جای یک ظرف استاندارد PKZIP در یک رمز جریان رمزگذاری شده اختصاصی پیچیده شده اند. وقتی بررسی سرصفحه باینری ما بایت‌های جادویی غیرزیپ را شناسایی می‌کند، می‌توانید برنامه نصب شده از دستگاه خود را به یک نسخه پشتیبان استاندارد تقسیم شده با استفاده از SAI تبدیل کنید یا قبل از ادغام تقسیم‌ها در مرورگر خود از رمزگشای CLI دسکتاپ منبع باز (apkm2apk) استفاده کنید.

بله همه چیز به صورت محلی در حافظه مرورگر شما اجرا می‌شود—هیچ فایلی در هیچ سروری آپلود یا نگهداری نمی‌شود. لطفاً فقط بسته‌هایی را پردازش کنید که به طور قانونی مالک آنها هستید، نسخه‌های منبع باز یا ساخت‌های توسعه‌دهنده خودتان.