أصدرت Google GSIs للإصدار التجريبي الثاني من Android Q. يمكن تثبيت صور النظام هذه على الأجهزة المتوافقة مع Project Treble لاختبار التطبيق. إليك الطريقة.
مع اقترابنا أكثر فأكثر من إصدار Android Q النهائي، يقل الوقت الذي يستغرقه المطورون لتحديث تطبيقاتهم. على الرغم من أن Android 9 Pie (مستوى API 28) لم يصل بعد إلى الغالبية العظمى من الأجهزة، إلا أن متطلبات مستوى API في Google Play، والتي يجب عليك يكون بالفعل على علم جيدسيجبرك على استهداف مستوى API 29 في عام 2020. إذا لم تكن قد قمت بالفعل بتحديث تطبيقك لاستهداف Android 9 Pie، ثم لديك حتى أغسطس إذا كنت تخطط لإطلاق تطبيق جديد أو حتى نوفمبر إذا كنت تخطط لتحديث تطبيق موجود. بالنسبة لأولئك منكم الذين يرغبون في البدء في التطوير لإصدار Android التالي، يمكنك بالفعل اختبار تطبيقك على محاكي اندرويد ستوديو أو على الأجهزة المادية إذا كنت تمتلكها أي هاتف ذكي من Google Pixel. ومع ذلك، توفر Google هذا العام للمطورين طريقة أخرى لاختبار تطبيقاتهم مقابل أحدث إصدار من Android: وميض أندرويد Q بيتا GSI على جهاز متوافق مع Project Treble.
مشروع التريبل هي مبادرة رئيسية لتحسين السرعة التي يمكن بها لمصنعي أجهزة الهواتف الذكية نشر تحديثات البرامج والأمان. باختصار، يطلب Treble من صانعي الأجهزة فصل البرنامج الذي يجعل الأجهزة تعمل عن البرنامج الموجود خلف نظام التشغيل. يسمح هذا لمصنعي الأجهزة بتشغيل إصدارات Android الجديدة على أجهزتهم الحالية حتى يتمكنوا من بدء المهمة الشاقة المتمثلة في نقل قاعدة التعليمات البرمجية الحالية الخاصة بهم أعلى إصدار كود مصدر Android الجديد. مكمل لـ CTS هو VTS، أو Vendor Test Suite، وهي مجموعة من الاختبارات التي يستخدمها صانعو الأجهزة للتحقق من أن أجهزتهم تلبي متطلبات Project Treble. أحد أهم الفحوصات التي يجب على صانعي الأجهزة اختبارها هو قدرة الهاتف الذكي المتوافق مع Treble على تشغيل ما يسمى GSI أو Generic System Image. GSI عبارة عن إصدار غير معدل من AOSP مخصص لصانعي الأجهزة لمعرفة ما إذا كانوا قد قاموا بتنفيذ Treble بشكل صحيح. أبعد من مصنعي المعدات الأصلية، على أية حال، جوجل
يعتقد يمكن للمطورين استخدام GSIs لاختبار توافق تطبيقات Android.على سبيل المثال، إذا لم تكن تمتلك Google Pixel، فإن الطريقة الوحيدة لك لاختبار سلوك تطبيقك في ظل الظروف التي تتوافق بشكل أفضل مع Google Pixel الوثائق مخصصة لك إما للحصول على جهاز Pixel خاص بك، أو تشغيل محاكي Android Studio، أو إجراء اختبار سحابي خدمة. كل واحد من هذه الأجهزة له إيجابياته وسلبياته، ولكن إذا كان لديك جهاز متوافق مع Treble ولا تريد إنفاق أي أموال أو التعامل مع قيود المحاكي، فلماذا لا تضع GSI عليه؟ إذا كان تطبيقك يعمل على GSI، فمن المفترض أن يعمل على جميع الأجهزة التي تعمل بإصدار Android هذا تقريبًا.
هذه هي عملية التفكير وراء قرار Google بإصدار Android Q GSIs، أو على الأقل هذا ما نعتقده. لن يكون الكود المصدري لنظام Android Q متاحًا حتى شهر أغسطس، لذا فإن ثنائيات GSI الرسمية من Google هي الطريقة الوحيدة الآن لاختبار Android Q على أجهزة حقيقية غير تابعة لشركة Pixel. وإليك كيف يمكنك البدء.
متطلبات
قبل أن تفكر في تثبيت الإصدار التجريبي من Android Q، يجب عليك التحقق لمعرفة ما إذا كان جهازك متوافقًا مع Project Treble ويمكنه قبول صور النظام الوامضة من أداة تحميل التشغيل.
متطلبات:
- جهازك يجب أحصل على محمل الإقلاع غير القابل للفتح. الهواتف الذكية Snapdragon Samsung المباعة في الولايات المتحدة، والأجهزة التي تحمل العلامة التجارية Huawei، والأجهزة التي تحمل العلامة التجارية Honor، والأجهزة التي تحمل العلامة التجارية Nokia من HMD Global (باستثناء نوكيا 8) غير مؤهل هنا.
- لديك أحدث ثنائيات ADB وFastboot المثبتة على جهاز الكمبيوتر الخاص بك، والتي يمكنك العثور عليها هنا. قد تؤدي الإصدارات القديمة من Fastboot إلى ومضات غير مناسبة.
- جهازك يجب يقابل واحد من المعايير التالية التي تعتبر متوافقة مع Project Treble:
- تم إطلاق الجهاز بنظام Android 9 Pie. إذا كان الأمر كذلك، فيمكنك تخطي تأكيد التوافق الثلاثي بعد الوصول إلى نهاية هذا القسم.
- تم إطلاق الجهاز بنظام Android 8.0 Oreo أو Android 8.1 Oreo ولكن تم تحديثه إلى Android 9 Pie مع عزل VNDK والنظام كجذر. نحن بالتفصيل كيفية معرفة ذلك في القسم أدناه.
قبل أن نذهب إلى أبعد من ذلك، تجدر الإشارة إلى أن وميض GSI سيتطلب منك إجراء مسح كامل لقسم بيانات المستخدم. هذا يعني أنك ستفقد جميع الصور ومقاطع الفيديو والموسيقى والمستندات أو أي شيء آخر موجود على وحدة التخزين الداخلية والخارجية (/البيانات/الوسائط) للجهاز. وبالتالي، يوصى بشدة بإجراء نسخة احتياطية خارج الجهاز قبل المضي قدمًا.
بعد ذلك، ضع في اعتبارك أن GSIs هذه لم تجتاز CTS، لذلك إذا كان تطبيقك يستخدم واجهة برمجة تطبيقات SafetyNet Attestation API للتحقق من سلامة الجهاز من خلال تطابق ملف تعريف CTS، فلن ينجح ذلك. كما أن هذه الإصدارات ليست مخصصة للاستخدام اليومي، لذا لا تتفاجأ إذا لم تعمل واحدة أو أكثر من وظائف الأجهزة الأساسية فوق الأخطاء الموثقة بالفعل في Android Q. لقد أدرجت Google بالفعل بعض المشكلات المعروفة المتعلقة بـ GSI، والتي يمكنك العثور عليها هنا. يجب تقديم أي أخطاء جديدة تجدها هنا.
تأكيد التوافق الثلاثي
قم بتشغيل الأمر التالي:
adbshellgetpropro.treble.enabled
إذا كان الرد خطأ شنيع، فإن جهازك غير متوافق مع Project Treble، ويجب ألا تستمر. إذا كان الرد حقيقي، فأنت حر في المضي قدمًا.
بعد ذلك، تحقق من دعم الإصدارات المشتركة عن طريق تشغيل هذه الأوامر:
adb shell
cat /system/etc/ld.config.28.txt | grep -A 20"\[vendor\]"
في الإخراج، ابحث عن القسم [بائع]، ثم داخل هذا القسم، ابحث عن namespace.default.isolated. إذا كانت قيمة هذه السمة هي حقيقي، فمن المفترض أن يدعم جهازك تشغيل Android Q GSI أعلى صورة بائع Android 9 Pie. إذا كانت القيمة خطأ شنيع، فيمكن لجهازك استخدام GSI فقط لنفس إصدار نظام التشغيل الموجود على الجهاز.
أخيرًا، تحتاج إلى التأكد مما إذا كان جهازك بمثابة جذر للنظام، حيث يتم دمج قرص الذاكرة مع صورة النظام. النظام كجذر ليس إلزاميًا للأجهزة التي تقوم بالترقية إلى Android 9 Pie، ولكنه ضروري لدعم نظام OTA فقط كما هو الحال في حالة تحديث إصدار نظام تشغيل جديد عبر GSI. قم بتشغيل الأوامر التالية وتأكد من تطابق الإخراج مع "النظام كجذر":
adb shell
cat /proc/mounts | grep -q /dev/root && echo"system-as-root" || echo"non-system-as-root"
الآن بعد أن عرفت أن جهازك متوافق مع Treble، فأنت بحاجة إلى معرفة إصدار GSI الثنائي الذي تريد تنزيله، نظرًا لوجود صور مختلفة لبنيات مختلفة. لمعرفة البنية التي يحتوي عليها جهازك، قم بتشغيل الأمر التالي:
adbshellgetpropro.product.cpu.abi
قم بتدوين الإخراج هنا، حيث ستحتاج إليه عند تنزيل GSI.
تحميل جي اس اي
تتوفر روابط التنزيل للإصدارات الرسمية لنظام Android Q beta GSI من Google هنا. يجب عليك تنزيل الإصدار المناسب بناءً على بنية جهازك، والتي اكتشفتها في الخطوة السابقة. سيكون التنزيل كبيرًا إلى حد ما إذا قمت بتنزيل الإصدار باستخدام GMS، أو Google Mobile Services، وهو أمر نوصي به بشدة حتى تتمكن من اختبار تطبيقك على إصدار باستخدام خدمات Google Play.
بمجرد الانتهاء من تنزيل الملف، يمكنك فك ضغطه. ويوجد بداخله ملفين system.img، و vbmeta.img.
وميض GSI
- أعد التشغيل إلى أداة تحميل التشغيل بجهازك إما باستخدام مجموعة أزرار أو عن طريق إصدار الأمر:
adb reboot bootloader
- بعد ذلك، نحتاج إلى تعطيل Android Verified Boot (AVB). يمكنك القيام بذلك عن طريق إدخال الأمر التالي:
fastbootflashvbmetavbmeta.img
- بعد ذلك، دعونا نمسح قسم النظام:
fastboot erase system
- يمكننا أخيرًا تحديث Android Q GSI باستخدام:
fastbootflashsystemsystem.img
- بمجرد الانتهاء من ذلك، امسح قسم بيانات المستخدم باستخدام:
fastboot -w
- أعد تشغيل جهازك باستخدام زر الطاقة أو إدخال:
fastboot reboot
نأمل أن يتم التمهيد بعد بضع دقائق. تم التحقق من صحة هذه الخطوات على هاتف Pixel 3 XL، ولكنها يجب أن تعمل بشكل عام. يمكننا التحقق من أن Android Q beta 2 GSI لا يعمل على هاتف OnePlus 6T، ولكنه يعمل على هاتف Xiaomi Mi 9. قد يعمل على هاتف Sony Xperia XZ3، ولكن قيل لنا أنه لا يعمل على هاتف Moto G7. قد تختلف المسافة المقطوعة لأن متطلبات Google تؤكد فقط توافق إصدار نظام التشغيل نفسه مع GSI.