تخطَّ إلى المحتوى

يوم الإطلاق: Android

الدرس 12 من 20

الهدف

بعد هالدرس تقدر تطلق تطبيقك على Google Play بترتيب صحيح — من internal testing لـ production مع staged rollout، وتعرف شلون توقف التوزيع فورا لو طاح شي، وشلون تتعامل مع الـ ANRs اللي ما تشوفها على iOS.

ليش هذا الحين؟

ترى Android مو نسخة أسهل من iOS — هو تحدي مختلف. الـ fragmentation (آلاف الأجهزة والإصدارات) تعني إن crash اكتشفته على Pixel 8 يمكن ما يظهر على Samsung A15. الـ staged rollout هو سلاحك الوحيد ضد هالشي.

الفكرة

Android عنده نظام tracks — مسارات — كل واحد أوسع من اللي قبله:

Internal testing (100 testers)
    ↓ Promote
Closed testing (alpha/beta, محدود)
    ↓ Promote
Open testing (أي أحد يسجّل)
    ↓ Promote
Production (staged rollout: 1% ← 100%)

الفرق عن iOS: أنت تتحكم في النسبة بنفسك، مو جدول ثابت. تبدأ بـ 1%، تتأكد، ترفع لـ 10%، تتأكد مرة ثانية.

ANR — Application Not Responding: هذا خاص بـ Android. يحصل لو الـ main thread يتجمد أكثر من 5 ثوان. ما يكسر التطبيق مباشرة — بس يطلع للمستخدم dialog "التطبيق لا يستجيب". أحيانا أسوأ من crash.

Google Play Console يعطيك ANR rate منفصل عن crash rate — راقب الاثنين.

محتاج مساعدة؟ راسلنا على mj@shakesbeard.net