تدعم صور نظام Android 11 x86 لمحاكي Android واجهات ARM ABI

تدعم الآن صور نظام Android 11 لأجهزة x86 محاكاة ARM على Android Emulator داخل Android Studio لأجهزة الكمبيوتر x86.

أصدرت شركة جوجل معاينة المطورين لنظام Android 11 2 مسبقا في هذا الشهر. مع هذا الإصدار، أجرت Google تغييرًا رئيسيًا لتمكين تصحيح أخطاء التطبيق بشكل أكثر كفاءة على محاكي Android بداخله بيئة تطوير أندرويد. تسمح الآن صور نظام Android 11 لوحدات المعالجة المركزية x86 للتطبيقات ذات تبعيات C أو C++ بتشغيل المزيد بسلاسة دون محاكاة ARM الكاملة واستخدام تسريع الأجهزة والمحاكاة الافتراضية لوحدة المعالجة المركزية لـ x86 المعدات.

يجب تجميع تطبيقات Android المكتوبة بالكود الأصلي (أي C أو C++) مع وضع بنيات مختلفة لوحدة المعالجة المركزية (CPU) في الاعتبار. يجب أن تكون هناك إصدارات مختلفة من التطبيق تستهدف بنيات مختلفة لوحدة المعالجة المركزية مثل ARM أو ARM64 أو x86 أو x86-64. وذلك لأن التعليمات البرمجية الأصلية يتم تجميعها مباشرة في تعليمات الجهاز للبنية المحددة بدلاً من تطبيقات Kotlin أو Java التي يتم تنفيذها على Android Runtime (ART).

من أجل اختبار تطبيقك عبر Android Emulator الذي يعمل على جهاز كمبيوتر يعمل بنظام x86، تحتاج إلى إصدار مختلف لوحدة المعالجة المركزية x86. لن يعمل الإصدار x86 من التطبيق على الهواتف الذكية نظرًا لأنها تعتمد عادةً على وحدات المعالجة المركزية ARM أو ARM64. حتى الآن الوحيد كان الحل لهذه المشكلة إما استخدام جهاز Android فعلي أو تثبيت صور محاكي مع محاكاة ARM كاملة لوحدات المعالجة المركزية x86. الخيار الأخير كثيف الأداء ولا يمكنه الاستفادة الكاملة من تسريع الأجهزة والمحاكاة الافتراضية لوحدة المعالجة المركزية التي يوفرها x86 تقدم وحدات المعالجة المركزية.

ولتسوية هذا الأمر، أصدرت جوجل الآن صور نظام Android 11 x86 الجديدة المتوافقة مع ARM. تستخدم صور النظام هذه واجهات ABI (الواجهات الثنائية للتطبيقات) التي تتوسط بين التطبيقات المكتوبة بلغات مختلفة أو بين التطبيقات ونظام التشغيل. تتم ترجمة تعليمات ARM داخل ثنائي ARM حصريًا إلى x86 بينما يستمر تنفيذ باقي التعليمات البرمجية في x86. نظرًا لهذا العزل لثنائيات ARM، تكون العملية أقل كثافة في الأداء ويتم تشغيلها حتى على الأجهزة ذات المستوى المنخفض.

إلى جانب تمكين تصحيح أخطاء تطبيقات Android بسهولة باستخدام تبعيات C++، فإنه سيسمح أيضًا للمطورين بذلك ما عليك سوى نشر إصدار ARM لتطبيقاتهم جنبًا إلى جنب مع واجهات التطبيقات الثنائية (ABIs) بدلاً من إصدار x86 لأجهزة Chromebook في مستقبل. سيؤدي هذا إلى تحفيز الدعم لمزيد من التطبيقات التي تستهدف Android 11 على مجموعة متنوعة من أجهزة Chromebook.

يمكن تنزيل صور نظام Android 11 الجديدة المتوافقة مع x86 من الداخل بيئة تطوير أندرويد باستخدام مدير الأجهزة الافتراضية للأندرويد أو مدير SDK.