عیب یابی نصب XAPK در Xiaomi HyperOS/MIUI، Samsung Auto Blocker و Google Play Integrity
Android 14 و Android 15 تغییرات عمده امنیتی در سطح سیستم عامل را در سراسر شیائومی (HyperOS / MIUI)، سامسونگ (One UI 6 و One UI 7) و Google Play Services معرفی کردند. اگر توسعهدهندهای هستید که یک بیلد صادر شده را آزمایش میکنید یا کاربری دارید که یک نسخه پشتیبان بسته قانونی را بازیابی میکند، درک اینکه چگونه بهینه سازی MIUI، مسدود کننده خودکار سامسونگ، و Google Play Integrity API با فایلهای APK تبدیلشده تعامل دارند، ساعتها از سردرگمی شما را نجات میدهد.
1. نصب XAPK روی شیائومی، ردمی و POCO بدون غیرفعال کردن «MIUI Optimization»
وقتی می خواهید یک چند قسمتی نصب کنید .xapk یا .apks بسته نرم افزاری روی گوشی شیائومی، ردمی، یا POCO با استفاده از نصب کننده تقسیم شخص ثالث (مانند SAI)، سفارشی شیائومی PackageInstaller قلاب ها جلسه چند APK را رد می کنند مگر اینکه وارد آن شوید گزینه های توسعه دهنده و خاموش کنید بهینه سازی سیستم (MIUI Optimization).
چرا غیرفعال کردن MIUI Optimization ایده بدی است: خاموش کردن System Optimization مجوزهای زمان اجرا (مخاطبین، ذخیره سازی، دسترسی به اعلان) را در ده ها برنامه نصب شده بازنشانی می کند، رفتار پنجره شناور را تغییر می دهد و مقیاس فونت سفارشی را بازنشانی می کند.
راه حل تمیزتر: به جای غیرفعال کردن MIUI Optimization برای اجرای یک نصب کننده تقسیم، بسته نرم افزاری .xapk را با استفاده از مبدل آنلاین XAPK به APK ما به یک تک ادغام .apk تبدیل کنید. از آنجایی که خروجی یک فایل استاندارد .apk است نه PackageInstaller.Session چند APK، Xiaomi HyperOS و MIUI آن را از طریق گفتگوی معمولی تک APK با بهینه سازی سیستم 100% فعال می کنند.
2. Samsung Galaxy One UI 6 & One UI 7: درک "Auto Blocker"
در تلفنها و تبلتهای Samsung Galaxy دارای One UI 6.0، 6.1 یا 7.0، سامسونگ یک ویژگی امنیتی به نام مسدود کننده خودکار (واقع در زیر تنظیمات → امنیت و حریم خصوصی → مسدودکننده خودکار دارد. وقتی فعال است، Auto Blocker از نصب هر بسته برنامه - خواه .apk) یا .xapk تبدیل شده - در خارج از فروشگاه Google Play یا Samsung Galaxy Store جلوگیری می کند و همچنین دستورات ADB را از طریق USB مسدود می کند.
- اگر ساخت توسعه امضا شده خود را آزمایش میکنید یا نسخه منبع باز تأیید شده (مانند F-Droid یا مخزن رسمی GitHub) را نصب میکنید، میتوانید تنظیمات Auto Blocker را در تنظیمات → امنیت و حریم خصوصی → مسدودکننده خودکار مرور کنید.
- قبل از نصب هر بسته ای در خارج از فروشگاه رسمی روی دستگاه سامسونگ، همیشه گواهی رمزنگاری آن را با استفاده از تأیید کننده امضای APK بررسی کنید.
3. چرا برخی از برنامههای تبدیلشده «این برنامه را از Play دریافت کنید» را نشان میدهند (Google Play Integrity & PairIP)
از سالهای 2024–2026، بسیاری از برنامههای تجاری Android Play Integrity API Google و تایید مجوز PairIP خودکار (com.pairip.licensecheck) را ادغام میکنند. هنگامی که یک برنامه ساخته شده با این محافظت راه اندازی می شود، از سرویس محلی فروشگاه Google Play درخواست می کند تا دو مورد را تأیید کند:
- این که باینری برنامه با گواهی انتشار رسمی توسعه دهنده اصلی امضا شده است (به این معنی که بسته بندی مجدد یا امضا نشده است).
- اینکه حساب Google کاربر دارای یک سابقه نصب معتبر ("نام بسته نصب کننده = com.android.vending") از فروشگاه رسمی Google Play است.
چرا این اتفاق می افتد و چه کاری باید انجام دهید: هنگامی که یک آرشیو تقسیم شده .xapk در یک .apk ادغام می شود، مبدل باید یک امضای رمزنگاری جدید v1+v2 اعمال کند تا مدیر بسته Android آرشیو ترکیبی را بپذیرد. اگر توسعهدهنده برنامه صراحتاً مجوز Google Play Integrity یا PairIP ضد دستکاری را فعال کرده باشد، برنامه تشخیص میدهد که امضا یا منبع نصبکننده آن با فروشگاه Play متفاوت است و صفحه نمایش "این برنامه را از Play دریافت کنید" را نشان میدهد.
این مکانیسم امنیتی برای محافظت از توسعه دهندگان نرم افزار در برابر تغییرات غیرمجاز و دزدی دریایی وجود دارد. ما به شدت از حقوق مالکیت معنوی توسعهدهندگان حمایت میکنیم: اگر برنامهای مجوز Play Integrity را اجرا میکند، سعی نکنید بررسی مجوز آن را دور بزنید یا دستکاری کنید—همیشه برنامه را مستقیماً از فروشگاه رسمی Google Play نصب کنید.