استخدام الأجهزة الافتراضية التي تستخدم ميزة "محاكي Android"

يمكنك استخدام Android Emulator لإنشاء عمليات محاكاة لأجهزة Android. تعرض صورًا مخصَّصة لنظام Android يمكنك أيضًا مشاركة صور نظام Android المخصّصة كي يتمكّن الآخرون من تشغيل محاكاة لها. بالإضافة إلى ذلك، يمكنك إضافة ميزة استخدام الشاشات المتعددة إلى عمليات محاكاة "محاكي Android".

بنية محاكي Android

يتيح لك "محاكي Android" تشغيل أجهزة Android على أجهزة Windows أو macOS أو Linux. يشغِّل "محاكي Android" نظام التشغيل Android في جهاز افتراضي يُعرف باسم "جهاز Android الظاهري" (AVD). يحتوي جهاز AVD على مجموعة برامج Android الكاملة، ويتم تشغيله كما لو كان على جهاز فعلي. يُعد الشكل 1 رسمًا تخطيطيًا لمحاكي Android البنية عالية المستوى. لمزيد من المعلومات عن المحاكي، يُرجى الاطّلاع على مقالة تشغيل التطبيقات على "محاكي Android".

بنية محاكي Android

الشكل 1: بنية Android Emulator

إنشاء صور متوسّط مدة المشاهدة

يتضمن كل متوسّط مدة مشاهدة (AVD) صورة نظام Android يتم تشغيلها في متوسّط مدة المشاهدة يتضمن مدير AVD بعض صور النظام. ويمكنك إنشاء نماذج مخصصة صور النظام لـ AVD من رمز المصدر الخاص بك وإنشاء عمليات محاكاة للجهاز لتشغيلها

لإنشاء صورة نظام AVD وتشغيلها:

  1. تنزيل رمز المصدر لنظام التشغيل Android:

    mkdir aosp-main; cd aosp-main
    repo init -u
    repo sync -j24
    

    إذا كنت تريد إنشاء إصدارات أخرى من Android، يمكنك العثور على أسماء الفروع في مستودع Android العام. ويتم ربطها بالأسماء الرمزية والعلامات وأرقام الإصدارات في Android.

  2. أنشئ صورة نظام AVD. هذه هي نفس عملية إنشاء نظام جهاز Android . على سبيل المثال، لإنشاء جهاز افتراضي Android‏ (AVD) بنظام التشغيل x86‏ 32 بت:

    mkdir aosp-main; cd aosp-main
    source ./build/envsetup.sh
    lunch sdk_phone_x86
    make -j32
    

    إذا كنت تفضّل إنشاء جهاز افتراضي Android‏ (AVD) بمعمارية x86‏ 64 بت، يمكنك تشغيل lunch لاستهداف الإصدار 64 بت:

    lunch sdk_phone_x86_64
    
  3. شغِّل صورة نظام AVD في "محاكي Android":

    emulator
    

اطّلِع على خيارات بدء التشغيل من سطر الأوامر لمزيد من التفاصيل حول تشغيل المحاكي. يوضح الشكل 2 مثالاً يتيح لك محاكي Android تشغيل متوسّط مدة المشاهدة.

محاكي Android الذي يعمل مع AVD

الشكل 2. محاكي Android الذي يعمل مع AVD

مشاركة صور نظام AVD ليتمكّن الآخرون من استخدامها مع "استوديو Android"

اتّبِع هذه التعليمات لمشاركة صور نظام AVD (AVD) مع الآخرين. ويمكنهم استخدام صور نظام AVD مع استوديو Android لتطوير التطبيقات واختبارها.

  1. إنشاء حزم sdk وsdk_repo إضافية:

    في الإصدار 13 من نظام التشغيل Android والإصدارات الأحدث، استخدِم الأمر emu_img_zip :

    $ make emu_img_zip
    

    يؤدي ذلك إلى إنشاء ملف sdk-repo-linux-system-images-eng.[username]].zip.

    على نظام التشغيل Android 12 والإصدارات الأقدم، عليك استخدام sdk_repo. :

    $ make -j32 sdk sdk_repo
    

    ينشئ الأمر make sdk sdk_repo ملفين ضمن aosp-main/out/host/linux-x86/sdk/sdk_phone_x86:

    • sdk-repo-linux-system-images-eng.[username].zip
    • repo-sys-img.xml
  2. استضافة الملف "sdk-repo-linux-system-images-eng.[username].zip" في مكان يسهل الوصول إليه من المستخدمين، والحصول على عنوان URL لاستخدامه كنسبة AVD عنوان URL لصورة النظام

  3. على نظام التشغيل Android 12 والإصدارات الأقدم، عدِّل repo-sys-img.xml على النحو التالي:

    • عدِّل <sdk:url> إلى عنوان URL لصورة نظام AVD.
    • اطّلِع على ملف sdk-sys-img-03.xsd لمعرفة آخر التعديلات التي تم إجراؤها على الملف.
    • استضِف repo-sys-img.xml في مكان يمكن للمستخدمين الوصول إليه، واحصل على عنوان URL لاستخدامه كـ عنوان URL لموقع التحديث المخصّص.

لاستخدام صورة AVD مخصّصة، اتّبِع الخطوات التالية في "مدير حِزم تطوير البرامج (SDK)":

  1. إضافة عنوان URL الخاص بالتحديث المخصَّص كتحديث لحزمة تطوير البرامج (SDK) .

    يؤدي ذلك إلى إضافة صورة نظام AVD المخصّصة إلى صفحة "صور النظام".

  2. أنشئ جهاز افتراضي Android من خلال تنزيل صورة نظام AVD المخصّصة واختيارها.

إضافة ميزة العرض على شاشات متعددة

الإصدار 10 من نظام التشغيل Android تحسين العرض المتعدّد (MD) لدعم المزيد من حالات الاستخدام، مثل الوضع التلقائي ووضع سطح المكتب. يتيح "محاكي Android" أيضًا محاكاة الشاشات المتعددة. وبالتالي، يمكنك إنشاء بيئة محدّدة تتضمّن عدة شاشات بدون إعداد الأجهزة الفعلية.

يمكنك إتاحة استخدام شاشات متعدّدة لـ AVD من خلال إجراء التغييرات التالية: عن طريق انتقاء الكرز من تعديلات المحتوى هذه.

  • إضافة موفّر خدمات شاشات متعددة إلى الإصدار من خلال إضافة هذه الأسطر إلى الملف build/target/product/sdk_phone_x86.mk:

    PRODUCT_ARTIFACT_PATH_REQUIREMENT_WHITELIST := \
        system/lib/libemulator_multidisplay_jni.so \
        system/lib64/libemulator_multidisplay_jni.so \
        system/priv-app/MultiDisplayProvider/MultiDisplayProvider.apk \
    PRODUCT_PACKAGES += MultiDisplayProvider
    
  • يمكنك تفعيل علامة ميزة الشاشات المتعددة بإضافة هذا السطر إلى ملف. device/generic/goldfish/data/etc/advancedFeatures.ini:

    MultiDisplay = on
    

يمكنك العثور على أحدث ميزات المحاكي ومعلومات الإصدار من المصادر التالية: