يمكنك استخدام "محاكي Android" لإنشاء عمليات محاكاة لأجهزة Android تعمل بصور نظام Android المخصّصة. بالإضافة إلى ذلك، يمكنك إضافة إمكانية استخدام الشاشات المتعددة إلى عمليات المحاكاة في "محاكي Android".
هندسة Android Emulator
يشغّل "محاكي Android" نظام التشغيل Android في جهاز افتراضي يُعرف باسم "جهاز Android الافتراضي" (AVD). يحتوي كل جهاز AVD على حزمة برامج Android الكاملة، ويتم تشغيله كما لو كان على جهاز فعلي. يوضّح الشكل 1 بنية Android Emulator العالية المستوى. لمزيد من المعلومات حول المحاكي، يُرجى الاطّلاع على مقالة تشغيل التطبيقات على "محاكي Android".
الشكل 1. بنية Android Emulator
إنشاء صور AVD
يتضمّن كل جهاز محاكاة افتراضي لنظام التشغيل Android صورة نظام Android تعمل في هذا الجهاز. يتضمّن "مدير الأجهزة الافتراضية لنظام التشغيل Android" بعض صور النظام. ويمكنك إنشاء صور نظام AVD مخصّصة من رمز المصدر وإنشاء محاكاة للأجهزة لتشغيلها.
لإنشاء صورة نظام AVD وتشغيلها، اتّبِع الخطوات التالية:
نزِّل مصدر Android:
mkdir aosp-android-latest-release; cd aosp-android-latest-release
repo init -u
repo sync -j24
إذا كنت تريد إنشاء إصدارات أخرى من Android، يمكنك العثور على أسماء الفروع في مستودع Android العام. وهي تتوافق مع الأسماء الرمزية والعلامات وأرقام الإصدار في Android.
إنشاء صورة نظام AVD هذه العملية هي نفسها عملية إنشاء صورة نظام لجهاز Android. على سبيل المثال، لإنشاء جهاز محاكاة افتراضي يعمل بنظام التشغيل Android على بنية x86 64 بت:
source ./build/envsetup.sh
lunch sdk_phone_x86_64
make -j32
شغِّل صورة نظام المحاكي الافتراضي لنظام التشغيل Android في "محاكي Android":
emulator
يمكنك الاطّلاع على خيارات بدء التشغيل من سطر الأوامر لمزيد من التفاصيل حول تشغيل المحاكي. يعرض الشكل 2 مثالاً على Android Emulator الذي يشغّل جهازًا افتراضيًا لنظام Android:
الشكل 2. محاكي Android Emulator الذي يشغّل جهازًا افتراضيًا يعمل بنظام التشغيل Android (AVD)
مشاركة صور نظام "الجهاز الافتراضي لنظام Android" ليستخدمها الآخرون مع "استوديو Android"
اتّبِع هذه التعليمات لمشاركة صور نظام AVD مع الآخرين. ويمكنهم استخدام صور نظام المحاكي AVD مع استوديو Android لتطوير التطبيقات واختبارها.
إنشاء حِزم إضافية من
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-android-latest-release/out/host/linux-x86/sdk/sdk_phone_x86
:sdk-repo-linux-system-images-eng.[username].zip
repo-sys-img.xml
استضِف الملف
sdk-repo-linux-system-images-eng.[username].zip
في مكان يمكن للمستخدمين الوصول إليه، واحصل على عنوان URL الخاص به لاستخدامه كـ عنوان URL لصورة نظام AVD.في نظام التشغيل Android 12 والإصدارات الأقدم، عدِّل
repo-sys-img.xml
على النحو التالي:- استبدِل
<sdk:url>
بعنوان URL لصورة نظام AVD. - راجِع sdk-sys-img-03.xsd للتعرّف على التعديلات الأخرى التي تم إجراؤها على الملف.
- استضِف
repo-sys-img.xml
في مكان يمكن للمستخدمين الوصول إليه، واحصل على عنوان URL الخاص به لاستخدامه كـ عنوان URL المخصّص لموقع التحديث.
- استبدِل
لاستخدام صورة AVD مخصّصة، اتّبِع الخطوات التالية في "مدير حزمة تطوير البرامج":
أضِف عنوان URL المخصّص لموقع التحديث باعتباره موقع تحديث حزمة SDK.
يؤدي ذلك إلى إضافة صورة نظام AVD المخصّصة إلى صفحة "صور النظام".
إنشاء جهاز Android افتراضي (AVD) من خلال تنزيل صورة نظام AVD المخصّصة واختيارها
إضافة ميزة استخدام شاشات متعددة
يعمل نظام التشغيل Android 10 على تحسين ميزة "الشاشات المتعددة" لتوفير دعم أفضل لمزيد من حالات الاستخدام، مثل وضع السيارة ووضع سطح المكتب. يتيح محاكي 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
يمكنك الاطّلاع على أحدث ميزات المحاكي ومعلومات الإصدار من المصادر التالية: