APK در مقابل XAPK در مقابل AAB: مقایسه کامل
هنگام مقایسه XAPK در مقابل APK (و AAB، بزرگترین تفاوت عملی نحوه نصب آنها در Android است: یک .apk) استاندارد مستقیماً با یک ضربه نصب میشود، در حالی که یک .xapk بستههای APK و داراییهای بازی OBB را تقسیم میکند که باید ابتدا ادغام یا بسته شوند. در زیر نمودار معماری بصری کنار هم و جدول مقایسه برای APK در مقابل XAPK در مقابل AAB آمده است.
جدول مقایسه سریع
| ویژگی | APK | XAPK | AAB |
|---|---|---|---|
| نام کامل | بسته Android | APK توسعه یافته | Android App Bundle |
| قابلیت نصب مستقیم | بله | خیر | خیر |
| حاوی OBB | خیر | بله | N/A |
| استفاده شده توسط فروشگاه Play | میراث | خیر | بله |
| حداکثر اندازه | ~ 150 مگابایت | 4 گیگابایت + | پایه 150 مگابایت |
| بهینه شده برای هر دستگاه | خیر | خیر | بله |
APK (بسته Android)
APK
قالب اصلی و شناخته شده ترین. APK یک فایل منفرد حاوی تمام کد، منابع و دارایی های مورد نیاز برای اجرای یک برنامه است.
جوانب مثبت
- نصب آسان
- به طور گسترده ای پشتیبانی می شود
- ساده برای به اشتراک گذاشتن
- روی همه دستگاه های Android کار می کند
منفی
- محدودیت حجم (~150 مگابایت)
- فایل یکسان برای همه دستگاه ها
- بدون پشتیبانی از توسعه داخلی
بهترین برای: برنامه های کوچک تا متوسط، بارگذاری جانبی، به اشتراک گذاری مستقیم برنامه ها
XAPK (APK توسعه یافته)
XAPK
XAPK یک فایل APK را با فایل های توسعه OBB در یک بسته واحد قرار می دهد. این در درجه اول توسط فروشگاه های برنامه شخص ثالث مانند APKPure استفاده می شود.
جوانب مثبت
- دانلود تک برای برنامه های بزرگ
- شامل تمام داده های لازم
- بدون نیاز به دانلود OBB جداگانه
منفی
- مستقیم نصب نمیشه
- نیاز به نصب یا استخراج ویژه دارد
- فرمت رسمی گوگل نیست
بهترین برای: بازی های بزرگ، برنامه هایی با فایل های داده اضافی
AAB (Android App Bundle)
AAB
قالب مدرن انتشار گوگل. فایلهای AAB در فروشگاه Play آپلود میشوند، که سپس فایلهای APK بهینهسازی شده برای هر دستگاه تولید میکند.
جوانب مثبت
- اندازه های دانلود کوچکتر برای کاربران
- بهینه سازی دستگاه خاص
- امنیت بهتر با امضای Play
- تحویل ویژگی پویا
منفی
- نصب مستقیم روی دستگاه ها امکان پذیر نیست
- به Play Store یا bundletool نیاز دارد
- برای توسعه دهندگان پیچیده تر است
انتشار بهترین برای: در فروشگاه Google Play
زمان استفاده از هر قالب
استفاده از APK زمانی که:
- نصب برنامه ها از منابعی غیر از فروشگاه Play
- به اشتراک گذاری مستقیم برنامه ها با دیگران
- برنامه شما کمتر از 150 مگابایت است
از XAPK زمانی استفاده کنید که:
- دانلود بازی های بزرگ از APKPure یا موارد مشابه
- برنامه به فایل های داده OBB نیاز دارد
- برای همه چیز یک بار دانلود می خواهید
از AAB زمانی استفاده کنید که:
- انتشار برنامه ها در فروشگاه Google Play
- اندازه های دانلود بهینه را برای کاربران می خواهید
- به تحویل ویژگی پویا نیاز دارید
آیا نیاز به تبدیل بین فرمت ها دارید؟
از ابزارهای رایگان ما برای تبدیل XAPK به APK و موارد دیگر استفاده کنید.
اندازه فایل های واقعی: این اعداد در عمل چگونه به نظر می رسند
این تفاوتها از لحظهای که اندازه برنامهای را که واقعاً دانلود کردهاید بررسی میکنید، احساس انتزاعی نمیکنند. ارقام زیر تقریباً همان چیزی است که مردم در سال 2026 با آن مواجه می شوند، اگرچه تعداد دقیق آن با دستگاه، زبان و CPU تلفن شما تغییر می کند.
| برنامه / بازی | APK واحد | بسته نرم افزاری XAPK | Play Store (از AAB) |
|---|---|---|---|
| ابزار با اندازه متوسط (به عنوان مثال، یک برنامه آب و هوا) | ~ 30 مگابایت | n/a (یک APK خوب است) | ~ 12 مگابایت (پس از تقسیم) |
| مجموعه بهره وری | ~ 150 مگابایت | ~ 150 مگابایت | ~70 مگابایت مخصوص دستگاه |
| بازی سه بعدی سایز متوسط | n/a (بیش از حد یک APK) | ~600 مگابایت | ~250-350 مگابایت مخصوص دستگاه |
| بازی بزرگ جهان باز | n/a | 2-4 گیگابایت | 1 تا 2 گیگابایت مخصوص دستگاه |
قانون سرانگشتی به اندازه کافی ساده است. اگر کل چیز تقریباً در 100 تا 150 مگابایت قرار می گیرد و فقط یک معماری CPU را هدف قرار می دهد، یک APK ساده ساده ترین کار برای مقابله با آن است. لحظهای که یک بسته باید چندین معماری (arm64-v8a، armeabi-v7a، x86_64)، داراییهایی برای تراکمهای صفحهنمایش زیاد، یا تکههای بزرگ دادههای گیمپلی داشته باشد، سادگی از بین میرود: XAPK همه چیز را در یک بارگیری نگه میدارد و میتوانید در اطراف خود جابهجا شوید، در حالی که AAB کار را به Play میدهد، که در واقع هر دستگاهی را که نیاز دارد کاهش میدهد.
داخل هر کانتینر: یک تور سریع
آنچه در واقع درون یک APK وجود دارد
هر کدام را باز کنید .apk با یک ابزار آرشیو و تقریباً همان طرح را خواهید دید: an AndroidManifest.xml توصیف هویت و مجوزهای برنامه، الف classes.dex فایل (یا چندین) حاوی بایت کد کامپایل شده، a resources.arsc جدول منابع، الف res/ فهرست تصاویر و طرحبندیهای از پیش کامپایلشده و یک assets/ دایرکتوری برای هر فایل خامی که توسعهدهنده انتخاب کرده است به همان شکل ارسال شود. کد بومی تحت آن زندگی می کند lib/<abi>/، کجا ابی معماری CPU است. الف META-INF/ دایرکتوری حاوی امضای رمزنگاری است که ثابت می کند چه کسی فایل را ساخته است.
آنچه در داخل XAPK تغییر می کند
یک XAPK خود یک آرشیو ZIP است که حاوی یک یا چند فایل APK به همراه یک سایدکار manifest.json است. ساده ترین XAPK "پایه APK + یک فایل OBB" است. بستههای پیچیدهتر شبیه «پایه APK + چندین تقسیم config.<abi>.apk، config.<density>.apk، و config.<language>.apk» هستند، یعنی همان ساختاری که AAB روی سرور تولید میکند و برای توزیع آفلاین بستهبندی شده است.
آنچه در داخل یک AAB تغییر می کند
یک AAB نیز یک ZIP است، اما عمدا مستقیما قابل نصب نیست است. در داخل یک پروتوباف BundleConfig.pb میبینید که توضیح میدهد چگونه بستهبندی باید تقسیم شود، بهعلاوه دایرکتوریهای base/ و (به صورت اختیاری) feature_module/ که مانیفستها، منابع، فایلهای dex و لبههای بومی را به شکل پیشتقسیمشدهشان نگهداری میکنند. ابزار سمت سرور خود گوگل، بهعلاوه bundletool منبع باز، این بسته را به APK تقسیمبندی هر دستگاهی تبدیل میکند که کاربر واقعاً نصب میکند.
راهنمای تصمیم گیری: کدام فرمت را باید دنبال کنید؟
اگر این مطلب را می خوانید چون فایلی در دست دارید و مطمئن نیستید که با آن چه کار کنید، به ترتیب به این سوالات پاسخ دهید:
- آیا فایل یک .apk زیر 150 مگابایت است؟ آن را مستقیما نصب کنید. اگر گواهی امضا از خارج از فروشگاه Play آمده است، ابتدا با تأیید کننده APK ما تأیید کنید.
- آیا این یک فایل .xapk است؟ یا آن را با یک نصب کننده تقسیم APK منبع باز مانند SAI نصب کنید، یا با استفاده از مبدل مبتنی بر مرورگر آن را به یک APK تبدیل کنید و آن را نصب کنید.
- آیا این یک آرشیو .apks است؟ این خروجی bundletool است که قبلاً به APKهای هر دستگاه تقسیم شده است. تقسیمات مربوطه را با ادغام APKS به APK ما ادغام کنید یا از دستور install-multiple ADB استفاده کنید.
- آیا این یک فایل .aab است؟ شما نمی توانید آن را مستقیما نصب کنید. از AAB به APK برای اجرای bundletool برای شما استفاده کنید و ابتدا یک APK جهانی تولید کنید.
باورهای غلط رایج
"XAPK یک APK جدیدتر و بهتر است."
به این معنا که یک ویژگی پلتفرم Android است، جدیدتر نیست. سیستم عامل Android نمی داند XAPK چیست. فقط برنامه های نصب کننده شخص ثالث این کار را انجام می دهند. از نقطه نظر سیستم عامل، زمان نصب همچنان روی APKهای ساده کار می کند.
"AAB فقط یک APK متفاوت است."
AAB یک قالب سمت ناشر است. کاربر هرگز یک AAB را مستقیماً نصب نمی کند. هنگامی که کاربر فروشگاه Play روی برنامهای که بهعنوان AAB منتشر شده است روی «نصب» ضربه میزند، سرورهای Google مجموعهای از APKهای سفارشی را برای آن دستگاه خاص تولید میکنند، آنها را با کلید آپلود ناشر امضا میکنند و دستگاه آنها را نصب میکند.
XAPK بزرگتر به معنای یک بازی توانمندتر است.
نه لزوما. دو بازی با قابلیت مشابه میتوانند اندازههای XAPK بسیار متفاوتی داشته باشند، فقط به این دلیل که یکی بافتهای فشرده نشده و یک ABI واحد را ارسال میکند، در حالی که دیگری داراییهای فشرده و چهار ABI را ارسال میکند. عدد روی اندازه فایل به ندرت یک سیگنال کیفیت معنی دار است.
"شما می توانید نام یک .xapk را به .apk تغییر دهید و آن را نصب کنید."
شما نمی توانید. سیستم عامل فایل را رد می کند زیرا یک APK معتبر نیست. این یک ZIP است که شامل یک APK است. ابتدا باید APK داخلی را استخراج کنید. این دقیقاً همان کاری است که مبدل ما انجام می دهد.
مرجع سریع
اگر فقط چند جمله از این مقاله را به خاطر دارید، آنها را به این شکل در آورید:
- APK فرمت نصب جهانی است، هر دستگاه Androidی در نهایت APK را نصب می کند.
- AAB قالب ناشر مورد نیاز Google برای ارسالهای جدید فروشگاه Play است. کاربران هرگز یکی را نمی بینند.
- XAPK یک کانتینر شخص ثالث است که یک APK را با فایلهای همراه آن در یک ZIP واحد جمع میکند.
- اگر نیاز به نصب یا تجزیه و تحلیل آنها در خارج از فروشگاه Play دارید، XAPK یا AAB را به APK تبدیل کنید.