يتضمّن "استوديو Android" محاكي Android.
تم توزيع إصدارات المحاكي الأقدم من 25.3.0 كجزء من أدوات حزمة تطوير البرامج (SDK) لنظام Android.
للتأكّد من أنّ لديك أحدث إصدار، تحقَّق من التحديثات في أداة SDK Manager.
لتنزيل إصدارات سابقة من Android Emulator، راجِع أرشيف تنزيل المحاكي.
للاطّلاع على ملاحظات الإصدارات السابقة للإصدار 25.3.0 من المحاكي، راجِع ملاحظات إصدار أدوات حزمة تطوير البرامج (SDK) لنظام التشغيل Android.
للاطّلاع على المشاكل التي تم إصلاحها في أحدث إصدارات Android Emulator، راجِع المشاكل التي تم إغلاقها.
للاطّلاع على المشاكل المعروفة وتحديد المشاكل وحلّها، يُرجى الانتقال إلى تحديد المشاكل وحلّها في المحاكي.
37.1.11 (إصدار ثابت) (30 يوليو 2026)
سيتم إيقاف برنامج تشغيل Hypervisor في Android Emulator نهائيًا في 31 ديسمبر 2026. للمساعدة في عملية النقل، يتيح استوديو Android الآن لمستخدمي Windows إمكانية التحويل من AEHD إلى Windows Hypervisor Platform (WHPX). يمكنك الاطّلاع على مقالة ضبط تسريع الجهاز الافتراضي باستخدام WHPX للحصول على معلومات حول ضبط تسريع الجهاز الافتراضي باستخدام WHPX.

تمت إضافة جهاز Pixel 10a الافتراضي
تمت إضافة إمكانية استخدام إضافات Vulkan الجديدة المطلوبة لتشغيل صور نظام التشغيل API 37
[إصلاح خطأ]المشكلة رقم 324465986 عدم ظهور خطأ بشأن نفاد مساحة التخزين عند أخذ لقطة شاشة على محاكي لا يتضمّن مساحة
[إصلاح خطأ]المشكلة رقم 526671872 إتاحة استخدام لاحقات الوحدات (مثل "6 غيغابايت" و"32 ميغابايت") في إعدادات ذاكرة الوصول العشوائي لجهاز Android الافتراضي وحجم ذاكرة التخزين المؤقت للجهاز الافتراضي في ملف config.ini
[إصلاح خطأ]المشكلة رقم 325814592 مشكلة تم رصدها في نظام التشغيل macOS 14، وهي أنّ المحاكي يبدأ في التوقف عن العمل والعمل ببطء شديد بعد تشغيل الكاميرا
36.6.11 (الإصدار الثابت) (2 يونيو 2026)
بدءًا من الإصدار 37 من واجهة برمجة التطبيقات، تم رفع الحد الأدنى للذاكرة (RAM) التي تستخدمها الآلة الافتراضية لجهاز Android الافتراضي إلى 4 غيغابايت.
لتلبية متطلبات الذاكرة الأعلى في Android 17 (المستوى 37 من واجهة برمجة التطبيقات)، تتطلّب الآن "أجهزة Android الافتراضية" (AVD) على "الهاتف" حدًا أدنى صارمًا يبلغ 4 غيغابايت من ذاكرة الوصول العشوائي. إذا تم ضبط جهاز AVD على ذاكرة أقل، سيقوم المحاكي تلقائيًا بالكتابة فوق الإعداد لتخصيص 4 غيغابايت على الأقل، ما يمنع حدوث مشاكل محتملة أثناء وقت التشغيل.
تمت إضافة وضع الكاميرا "البيئة" إلى المحاكي لتوفير خلفيات مشاهد افتراضية قابلة للضبط. يتم تحديد هذه المشاهد في ملف environment.ini الخاص بجهاز AVD، ويمكن إعادة تحميلها بشكل ديناميكي في وقت التشغيل.
تم إصلاح الخطأ الذي لم تتم فيه إزالة معاينة اللقطة في المحاكي المستقل بعد حذف اللقطة.
[إصلاح خطأ]المشكلة رقم 506475581 تشوّه صوت المحاكي بشكل كبير على نظام التشغيل macOS عند استخدام واجهة صوتية تحتوي على أكثر من قناتَين (إعادة التوجيه، إخراج متعدد)
[إصلاح خطأ]المشكلة رقم 516455370 تم إصلاح مشكلة تسريب كبير للذاكرة في الإصدار 26.3 من نظام التشغيل macOS عند إغلاق المحاكي، وهي مشكلة مرتبطة بتنظيف الموارد المستخدَمة من خلال واجهات برمجة التطبيقات Hypervisor.framework.
تحديث الإصدار 36.5.11 (23 أبريل 2026)
- [إصلاح خطأ]المشكلة رقم 492228020 يعرض "محاكي Android" شاشة سوداء عند استخدام ميزة "عرض الرسومات تلقائيًا" أو "عرض الرسومات باستخدام الأجهزة" على وحدة معالجة الرسومات من Intel
36.5.10 (الإصدار الثابت) (2 أبريل 2026)
يتضمّن هذا التحديث الميزة التالية وإصلاحات للأخطاء:
اختبار التفاعلات بين الأجهزة المتعددة باستخدام "محاكي Android"
يتضمّن "محاكي Android" الآن حزمة جديدة للشبكات بهدف تحسين اختبار التطبيقات على أجهزة متعددة، ما يغنيك عن الحاجة إلى إعادة توجيه المنفذ يدويًا لربط عدة مثيلات من "جهاز Android الافتراضي" على المضيف نفسه. يمكن لأجهزة AVD الآن اكتشاف بعضها البعض والتواصل معها تلقائيًا كما لو كانت على الشبكة الافتراضية نفسها. يتيح ذلك إجراء اختبارات سلسة للتفاعلات بين الأجهزة باستخدام بروتوكولات مثل اتصال Wi-Fi مباشر وNetwork Service Discovery.
يوفّر حزمة الشبكات الجديدة هذه العديد من المزايا الرئيسية للمطوّرين:
- بدون إعداد: لا حاجة بعد الآن إلى إعادة توجيه المنفذ يدويًا أو كتابة نصوص برمجية لأوامر adb.
- اتصال سلس بين الأجهزة: تعمل البروتوكولات المهمة، مثل اتصال Wi-Fi مباشر وNetwork Service Discovery، فورًا بين المحاكيات.
- تحسين الثبات: يحلّ هذا الإصدار مشاكل الثبات التي طال أمدها، مثل فقدان البيانات (المشكلة رقم 150758736) وانقطاع الاتصال (المشكلة رقم 449817856) التي تم رصدها في الحزمة القديمة.
للبدء، حدِّث إلى أحدث إصدار من Android Emulator في SDK Manager في استوديو Android. لمزيد من المعلومات، يمكنك الاطّلاع على المستندات هنا.
ميزات إضافية وإصلاحات للأخطاء
تمت إضافة أجهزة AVD جديدة من Pixel، بما في ذلك Pixel 10 وPixel 10 Pro وPixel 10 Pro XL وPixel 10 Pro Fold
إدراج كاميرات الويب بأسماء سهلة الاستخدام وإصلاح مشكلة في نظام التشغيل Linux حيث تعذّر على المحاكي رصد جميع كاميرات الويب المتصلة وإدراجها
[إصلاح خطأ]المشكلة رقم 333628462: تستهلك عملية crashpad_handler قدرًا كبيرًا من وحدة المعالجة المركزية على أجهزة macOS
تحديث 36.4.10 (9 مارس 2026)
- [إصلاح خطأ]المشكلة رقم 489369080 إصلاح عُطل في محاكي التلفزيون عند التمرير بعد التحديث إلى Panda 2
36.4.9 (الإصدار الثابت) (10 فبراير 2026)
لتبسيط عملية اختيار وحدة معالجة الرسومات ضمن واجهة المستخدم، تتضمّن عناصر التحكّم الموسّعة في "محاكي Android" الآن خيارات محدّدة للأجهزة والبرامج. بالنسبة إلى مستخدمي سطر الأوامر، يمكن الآن استخدام الخيار "-gpu software" لاختيار أفضل برامج العرض الخلفية المتوفّرة في GLES وVulkan لنظامك.
تم تفعيل Lavapipe كبرنامج عرض الرسومات التلقائي لتحسين توافق Vulkan على جميع المنصات
تحسينات Vulkan:
- تم تعديل أداة تحميل Vulkan المضمّنة في المحاكي
- تم إصلاح العديد من حالات الاستخدام غير الصالحة في الخلفية المستندة إلى Vulkan
- تمت إضافة إمكانية استخدام SkiaVk على systemui مع محاكاة قائمة انتظار الرسومات على صور النظام الجديدة
- تمت إضافة إمكانية استخدام Vulkan لإنشاء الصور المركّبة من أجل إيقاف استخدامات GL على المضيف. يتم تفعيل هذه الميزة تلقائيًا لصور الواقع الممتد، ويمكن تفعيلها باستخدام خيار سطر الأوامر -feature VulkanNativeSwapchain.
[إصلاح خطأ]المشكلة رقم 471008659 تسريب الذاكرة على جانب المضيف في المحاكي عند فتح الأنشطة أو إغلاقها
36.4.3 Canary (8 ديسمبر 2025)
محاكي جديد لنظارات الذكاء الاصطناعي
أضفنا محاكيًا تجريبيًا جديدًا لنظارات الذكاء الاصطناعي بهدف تطوير التطبيقات واختبارها التي تم إنشاؤها باستخدام حزمة تطوير البرامج (SDK) لمنصة Jetpack XR لنظارات الذكاء الاصطناعي. يمكنك تشغيل محاكي للنظارات الذكية إلى جانب محاكي للهاتف، وإقرانهما، وتنفيذ التفاعلات النموذجية التي تجريها عادةً على النظارات الذكية. اطّلِع على إنشاء أجهزة افتراضية لنظارات الذكاء الاصطناعي للحصول على معلومات حول تثبيت محاكي نظارات الذكاء الاصطناعي وإعداد بيئة التطوير.
محاكي "نظارات الذكاء الاصطناعي" هو أداة تجريبية. من المتوقّع حدوث مشاكل، خاصةً عند إعادة إقران النظارات بمحاكيات الهواتف والتفاعلات مع واجهة مستخدم لوحة اللمس.
محاكي جديد لنظارات الواقع الممتد
لقد وسّعنا نطاق استخدام محاكي Android XR الذي تم إطلاقه سابقًا ليشمل نظارات الواقع الممتد التي تستخدم تقنية OST (الرؤية البصرية المباشرة عبر العدسات). يمكنك استخدام محاكي نظارات بنظام الواقع الممتد لمعاينة تطبيقك مع مجال الرؤية والدقة التقريبيَين لجهاز نظارات بنظام الواقع الممتد. راجِع إنشاء أجهزة نظارات الواقع الممتد الافتراضية للحصول على معلومات حول تثبيت محاكي نظارات الواقع الممتد وإعداد بيئة التطوير.
إنّ محاكي نظارات الواقع المختلط ومحاكي نظارات الذكاء الاصطناعي هما أداتان تجريبيتان. قد تواجه مشاكل، خاصةً في بعض إعدادات وحدة معالجة الرسومات وبرامج التشغيل في Windows (يُرجى الاطّلاع على متطلبات نظام التشغيل Windows).
المشاكل المعروفة
ستساعدنا ملاحظاتك في تحسين الميزات وتحديد أولوياتها في المستقبل. راجِع مقالة الإبلاغ عن خطأ للحصول على معلومات حول الإبلاغ عن أخطاء متعلّقة بـ "استوديو Android" أو Android Emulator.
36.3.10 (الإصدار الثابت) (4 ديسمبر 2025)
[إصلاح خطأ]المشكلة رقم 452843321: انخفاض الأداء عند نقل ملفات كبيرة إلى المحاكي على الإصدار 34 من Android API والإصدارات الأحدث
تم إصلاح الأعطال في Vulkan composition عند تشغيل برامج ترميز الفيديو في وضع نسيج وحدة معالجة الرسومات.
إصلاح أعطال المحاكي عند وقوع حدث على الشاشة التي تعمل باللمس أثناء التشغيل باستخدام الخيار -debug-events
تحديث الإصدار 36.2.12 (13 أكتوبر 2025)
- إصلاح مشكلة التعطُّل على أجهزة Windows التي حدثت عند تشغيل تطبيق Vulkan في وضع العرض البرمجي
36.2.11 (9 أكتوبر 2025)
تمت إزالة دعم HAXM من المحاكي. إذا حاولت إنشاء جهاز محاكاة Android (AVD) باستخدام HAXM، سيظهر بانر يشير إلى عدم توفّر برنامج Hypervisor ورابط لاتّخاذ إجراء لتثبيت AEHD.
للحصول على معلومات حول إلغاء تثبيت HAXM، يُرجى الاطّلاع على إلغاء تثبيت HAXM.إصلاح لضمان استخدام وحدة معالجة الرسومات من Intel لإصدار OpenGL ES 3.0 لتجنُّب تعطُّل برنامج التشغيل
[إصلاح خطأ]المشكلة رقم 340322888 يتعذّر بدء تشغيل محاكي Android Virtual Device (AVD) عندما لا تتوفّر مساحة فارغة على الجهاز
[إصلاح خطأ]المشكلة رقم 150758736 فقدان متقطّع لبيانات بايت واحد على اتصالات TCP في المحاكي
[إصلاح خطأ]المشكلة رقم 434774381 تعذّر تشغيل نواة الجهاز الافتراضي بعد التشغيل السريع للإصدار 36 و35 من واجهة برمجة التطبيقات (وربما أكثر) على نظام التشغيل Windows 11 باستخدام WHPX على معالج i7-11850H
36.1.9 (31 يوليو 2025)
[إصلاح خطأ]المشكلة رقم 419157428: قد تؤدي أحرف UTF-8 في اسم المستخدم أو في مسار المحاكي الافتراضي لنظام التشغيل Android إلى منع بدء تشغيل المحاكي
[إصلاح خطأ]المشكلة رقم 423670833 تعذُّر تشغيل "محاكي Android" على نظام ملفات btrfs
ملاحظة: إذا كنت تواجه مشاكل في تشغيل المحاكي على X11، ننصحك باستخدام العرض البرمجي. يمكنك الاطّلاع على مقالة ضبط تسريع الرسومات لمعرفة كيفية ضبط عرض البرامج.
35.6.11 (الإصدار الثابت) (24 يونيو 2025)
تم تحسين التوافق مع وحدات معالجة الرسومات من AMD وNvidia على نظامَي التشغيل Windows وLinux لمحاكي الواقع الممتد
يمكن تشغيل جهاز Android الافتراضي (AVD) في الواقع الممتد (XR) كجهاز مضمّن في نوافذ تشغيل "استوديو Android".
تحسين تفاصيل تقرير الأعطال على Windows لتفعيل تفريغ كامل للمحاكي
[إصلاح خطأ]المشكلة #410485043 تعطُّل جهاز Android Emulator XR بسبب خطأ في Vulkan
[إصلاح خطأ]المشكلة رقم 388718417: يؤدي libndk_translation.so إلى إيقاف العملية بشكل غير طبيعي ويتسبّب في حدوث عُطل في Arm64AesEncode
35.5.10 (6 مايو 2025)
تمت إضافة عمليات تحقّق إضافية من توافق وحدة المعالجة المركزية مع رسائل الخطأ (مثلاً: عدم توفّر مساحة كافية على القرص)
إصلاح الأخطاء المتعلّقة بإدارة ذاكرة Vulkan وحالات الاستخدام غير الصالحة
يتم التحقّق من إمكانية استخدام لقطات Vulkan وتخطّيها بشكل صحيح عند التشغيل من خلال نافذة طرفية
تمّت إضافة إمكانية استخدام إضافة VK_KHR_multiview وتنسيق النسيج A1R5G5B5
تمت إضافة جهاز Pixel 9a الافتراضي
35.4.9 (الإصدار الثابت) (25 فبراير 2025)
تمت إضافة قائمة منسدلة في عناصر التحكّم الموسّعة لإعدادات برنامج تشغيل Guest GLES المفضّلة
[إصلاح خطأ]المشكلة رقم 389330750 يؤدي إرسال رسالة SMS إلى المحاكي تتضمّن الحرف Ñ إلى تقسيم الرسالة
[إصلاح خطأ]المشكلة رقم 382180488 تعذُّر تنفيذ الدالة "emuglConfig_get_vulkan_hardware_gpu_support_info" بسبب عدم رصد أي أجهزة Vulkan
ملاحظة: لا تتوفّر "محاكي Android XR" إلا في إصدارات Canary من "استوديو Android".
35.3.11 (الإصدار الثابت) (9 يناير 2025)
[إصلاح خطأ]المشكلة رقم 368059211 عدم عمل الوصول الآلي إلى VHAL في نظام التشغيل Android Auto باستخدام Car Service API
[إصلاح خطأ]المشكلة رقم 348598513 يحتوي المحاكي على طريقة عامة غير آمنة وغير ضرورية في قفل متعدد الخيوط
[إصلاح خطأ]المشكلة رقم 356896486 إيقاف طلبات البيانات من واجهة برمجة التطبيقات Vulkan نهائيًا عند التشغيل باستخدام -feature -Vulkan
35.4.4 Canary (12 ديسمبر 2024)
محاكي Android XR الجديد
أضفنا محاكيًا تجريبيًا جديدًا لنظام Android XR لتطوير التطبيقات واختبارها التي تم إنشاؤها باستخدام Jetpack XR SDK لسماعات الرأس. يمكنك الاطّلاع على إعداد حزمة تطوير البرامج (SDK) لمنصة Jetpack XR للحصول على معلومات حول تثبيت محاكي Android XR وإعداد بيئة التطوير.
محاكي Android XR هو أداة تجريبية. ومع ذلك، قرّرنا مشاركة هذه المعلومات معك في وقت مبكر لنمنحك فرصة تجربة الميزة قبل إطلاقها. من المتوقّع حدوث مشاكل، خاصةً في بعض إعدادات وحدة معالجة الرسومات وبرامج التشغيل على Windows. قد تنشأ أيضًا مشاكل حول اختبار التوافق للتطبيقات الحالية على الأجهزة الجوّالة ثنائية الأبعاد. ستساعدنا ملاحظاتك في تحسين الميزات وتحديد أولوياتها في المستقبل.
حتى الآن، تم اختبار محاكي Android XR على إعدادات الأجهزة التالية:
- Mac (ARM)
- Windows 11
- وحدة معالجة الرسومات من nVidia، وذاكرة وصول عشوائي للفيديو (vRAM) بسعة 4 غيغابايت، وإصدار برنامج التشغيل 553.35 أو إصدار أحدث
- ذاكرة وصول عشوائي (RAM) بسعة 16 غيغابايت أو أكثر
- 8 أنوية أو أكثر
المشاكل المعروفة
المحاكي - الثبات والأداء:
- قد تحدث عمليات قفل أو تعطُّل خطيرة للنظام أثناء عملية التشغيل أو أثناء تشغيل التطبيقات على بعض إعدادات Windows. يُرجى التأكّد من تفعيل Windows Hypervisor Platform (WHPX) باتّباع دليل المطوّرين في "استوديو Android" لتفعيل WHPX.
- مشاكل مثل عدم استجابة "جهاز Android الافتراضي" أو عناصر واجهة المستخدم على أجهزة الكمبيوتر المحمول بعد دورة تعليق واستئناف (مثل إغلاق الكمبيوتر المحمول وفتحه)
- تعطُّل التطبيق بشكل متقطع عند التبديل من "وضع الشاشة الرئيسية" إلى "وضع ملء الشاشة"
- لا تتوفّر واجهات Gemini API بعد، وسيحدث عطل في تطبيق نموذج Gemini API الأوّلي.
المحاكي - محاكاة الإدخال والإخراج:
- قد لا يظهر لوحة المفاتيح الافتراضية لحقول البحث والتعديل إلا بشكل جزئي في مجال الرؤية
لا يمكن نقل العناصر في الاتجاه z (داخل الشاشة وخارجها) باستخدام الماوس ولوحة المفاتيح
قد يؤدي عدم استقرار إدخال الصوت من المضيف إلى ميكروفون الجهاز الافتراضي إلى إعادة تشغيل الجهاز الافتراضي وتعطُّله.
يصدر صوت مشوّش أو غير واضح أحيانًا.
عندما يتم نقل الكاميرا خارج غرفة المعيشة الافتراضية، تظهر أخطاء في العرض.
تعرض إعدادات Windows ألوانًا أغمق من المعتاد.
يتوقف الصوت عن العمل بعد ترك المحاكي في وضع عدم النشاط وقفل الشاشة على نظام التشغيل macOS. (ستؤدي إعادة تشغيل المحاكي إلى استعادة هذه الحالة).
ينقطع الاتصال بالشبكة عندما يغيّر الجهاز المضيف شبكة Wi-Fi.
عند تفعيل مفتاح Caps Lock، سيتم كتابة الأحرف الصغيرة.
التنقل باستخدام لوحة اللمس على جهاز Mac ليس سلسًا.
قد لا يعمل التمرير السريع بالنقر مع السحب على بعض عناصر واجهة المستخدم حسب التصميم. إذا لم يكن الأمر كذلك، استخدِم عجلة الماوس للتمرير بدلاً من ذلك.
نص غير واضح وواجهة مستخدم غير واضحة وأخطاء أخرى في Chrome على بعض إعدادات نظام التشغيل Windows الحل المحتمل: تفعيل WHP
المحاكي - محاكاة الطائرات ونقاط الارتكاز:
- في بعض الأحيان، لا تظهر نقاط الارتكاز من جديد بالقرب من الموقع الجغرافي نفسه.
- قد لا يتم تثبيت الألواح المتحركة على الجدران أو السقف
- لا تتطابق الطائرات المحاكاة مع التخطيط الفعلي للغرفة الثلاثية الأبعاد في وضع "المرور"
- المناطق المحدودة بشكل عام لتثبيت العناصر في الغرفة الافتراضية
- ظهور تشويش صغير في عرض وضع "الرؤية من خلال الجهاز" على أجهزة Windows
- في بعض الحالات، قد يؤدي وضع نقاط الارتكاز إلى تعطُّل التطبيق
- قد تظهر خطوط سوداء فوق التطبيقات عند تحريكها بالقرب من الأرض على أجهزة Windows
المحاكي - أخرى:
- لا يبدأ المحاكي إلا في "الوضع المستقل". لم يتوفّر بعد الوضع "مضمّن" (واجهة مستخدم مضمّنة).
- قد يؤدي تسجيل الدخول باستخدام حسابات على المحاكي على جهاز Windows إلى توقّف المحاكي عن الاستجابة
- قد يختفي محتوى واجهة المستخدم للنوافذ بعد تغيير حجمها (الحلّ البديل: الضغط على زر "الصفحة الرئيسية")
- في تطبيق JXRCore ActivityPanelTest، لا يتم عرض اللوحة الثانوية في البداية
- قد تختفي عناصر "الإعدادات السريعة" من إعدادات النظام بعد فترة طويلة.
- قد تظهر واجهة مستخدم المحاكي خارج منطقة الشاشة في البداية. إذا كان الأمر كذلك، اضبط حجم نافذة المحاكي قليلاً وسيتم إرجاعها إلى مكانها.
- قد لا يتم تشغيل المحاكي عند استخدام الاتصال بجهازك عن بعد من Chrome على Windows
- لا يتوافق OpenXR حتى الآن مع المحاكي، وقد تؤدي تطبيقات OpenXR إلى تعطُّل المحاكي.
- حدوث أعطال نادرة عند محاولة إرسال تقارير الأخطاء باستخدام إعدادات "استوديو Android" الموسّعة على نظام التشغيل Windows
- لا يظهر رمز "الرجوع" بشكل صحيح في تطبيق "الإعدادات" إلى أن يمرّر المؤشر بالقرب منه على جهاز Mac
- في بعض الحالات، قد يحدث خطأ في عملية الإنشاء عند استخدام وحدة "الملف الشخصي للمرجع" كجزء من مشروع نموذج الواقع الممتد.
- تم حتى الآن دمج ميزة تسهيل الاستخدام "التعليق الشفهي في الواقع الممتد" بشكل جزئي فقط في المحاكي
تطبيق Scene Viewer:
- قد يؤدي نقل العناصر داخل Scene Viewer إلى تعطُّله. لحلّ هذه المشكلة، حرِّك موضع الرأس قليلاً بعيدًا عن موضعه الأولي (على سبيل المثال، باستخدام التحريك الأفقي أو التحريك العمودي أو مفاتيح WASD أو غير ذلك) قبل محاولة تحريك العنصر.
- لن تعمل ميزة "الحجم الحقيقي" 1:1 بشكل صحيح إذا كان الحجم الحقيقي للتصميم الثلاثي الأبعاد أقل من الحد الأدنى والأقصى للمقياس أو أكبر منهما (يتم حاليًا ضبط الحد الأدنى على 20 سم والحد الأقصى على 70 مترًا على التوالي).
- قد ينتقل التصميم الثلاثي الأبعاد إلى الإطار الأول بعد التحميل
35.2.10 (1 أكتوبر 2024)
- تمت إضافة أجهزة AVD جديدة من Pixel، بما في ذلك Pixel 9 وPixel 9 Pro وPixel 9 Pro XL وPixel 9 Pro Fold
- تمت إضافة صورة نظام جديدة للأجهزة اللوحية لإصدار Vanilla Ice Cream (الإصدار 35 من واجهة برمجة التطبيقات)
35.1.20 (29 أغسطس 2024)
- تمت إضافة محاكي جهاز Android الافتراضي (AVD) لهاتف Pixel 8a
- إصلاحات أخطاء متنوّعة للأجهزة القابلة للطي
- تحديث Qt وإصلاح الأعطال والتعليقات المرتبطة به
- [إصلاح خطأ] إصلاح الأعطال والتجميد على أجهزة Windows التي تستخدم تطبيقات Vulkan
34.2.16 (9 يوليو 2024)
- [إصلاح خطأ] توقّف واجهة المستخدم على هاتف Pixel Fold أثناء الطي أو الفتح
- [إصلاح خطأ] عرض إصدار Android بشكل غير صحيح على أنّه Android Vanilla Ice Cream Preview بدلاً من الإصدار 35 من واجهة برمجة التطبيقات على جهاز Mac M1
- [إصلاح خطأ] المشكلة رقم 296162661: تعرض HasSystemFeature FEATURE_SENSOR_HINGE_ANGLE القيمة "صحيح" على محاكي الجهاز اللوحي Pixel C
34.2.15 (31 مايو 2024)
- إصلاحات متنوّعة للأعطال المتعلّقة بوضع "التأرجح" وتنظيف بيانات المعلِنين
34.2.14 (20 مايو 2024)
تم اختباره باستخدام الإصدار 1 من حزمة تصحيح الإصدار الثابت من استوديو Android Jellyfish.
- [إصلاح خطأ] تعليق اللقطة أحيانًا على المحاكي المضمّن
- [إصلاح خطأ] الزرّان "لا" و"إلغاء" لا يعملان بشكل صحيح في اللقطة
- [إصلاح خطأ] أزرار لوحة الاتجاهات لا تعمل
- [إصلاح خطأ] تم إصلاح المشكلة التي تظهر على أجهزة Windows وتمنع بدء المحاكي في بعض الحالات عند استخدام أوضاع وحدة معالجة الرسومات مع ANGLE، وعرض رسالة الخطأ "تعذّر بدء محاكاة GL" في السجلّ. يُرجى العِلم أنّ بدء المحاكي من سطر الأوامر باستخدام الخيار
-gpu swangle_indirectقد يؤدي إلى ظهور هذا الخطأ مع هذا الإصدار. إذا كنت لا تزال تريد بدء المحاكي باستخدام سطر أوامر على نظام التشغيل Windows مع عرض الرسومات باستخدام برنامج في هذا الإصدار، يُرجى استخدام-gpu swiftshader_indirect - [إصلاح خطأ] يؤدي اختصار الموقع الجغرافي على لوحة المفاتيح إلى تحميل خريطة غير قابلة للاستخدام
- [إصلاح خطأ] أثناء ضبط الموقع الجغرافي، لا يظهر مربع الحوار "حفظ المسار"
34.2.13 (30 أبريل 2024)
تم الاختبار باستخدام الإصدار الثابت من استوديو Android Jellyfish.
- تحديث إلى Qt 6.5.3
- توفير التوافق مع آخر التعديلات على Google Maps API المستخدَمة في ميزات "الموقع الجغرافي" ضمن "عناصر التحكّم الموسّعة" في المحاكي، وذلك في نهاية شهر أيار (مايو)
- إصلاحات للأعطال الشديدة التأثير
- إصلاحات متنوّعة لأجهزة Pixel الافتراضية التي تعمل بنظام التشغيل Android
- تعديل مكتبة الرسومات المستخدَمة في العرض البرمجي
- [إصلاح خطأ]المشكلة 225541819 يؤدي بدء تشغيل Chrome إلى تعطُّل المحاكي على x86_64
- [إصلاح خطأ]المشكلة 314614435 لا يتم تحليل مفتاح التبديل
-http-proxyبشكل صحيح
34.1.20 (1 أبريل 2024)
تم الاختبار باستخدام الإصدار الثابت من "استوديو Android" Iguana.
- [إصلاح خطأ] المشكلة رقم 314614435: إصلاح المشكلة التي يتم فيها تحليل مفتاح التبديل
-http-proxyبشكلٍ غير صحيح
34.1.19 (7 مارس 2024)
تم الاختبار باستخدام الإصدار الثابت من "استوديو Android" Iguana.
- [إصلاح خطأ] المشكلة رقم 312677259: تم إصلاح مشكلة توقّف الشاشة في المحاكي المضمّن بعد تغيير حجم النافذة.
34.1.18 (29 فبراير 2024)
تم الاختبار باستخدام الإصدار الثابت من "استوديو Android" Iguana.
- تمت إضافة الأجهزة إلى المحاكي، بما في ذلك:
- Pixel Fold
- Pixel Tablet
- Pixel 8
- Pixel 8 Pro
- Pixel 7a
- اختبار تكامل gRPC: تتوفّر الآن نقاط نهاية gRPC للاختبارات التي تقيس حالة التطبيق والتي يتم إجراؤها داخل المحاكي، ما يتيح اختبار سيناريوهات واقعية. تتيح هذه الميزة للمطوّرين التفاعل بأمان مع نقطة نهاية gRPC التي يستضيفها "محاكي Android" من داخل اختبارات أدوات Android.
- إصلاحات أخطاء متنوّعة
33.1.24 (28 ديسمبر 2023)
تم الاختبار باستخدام الإصدار الثابت من استوديو Android Hedgehog والإصدار التجريبي الأول من Iguana.
- إصلاح مشكلة كاميرا الويب في المحاكي التي لا تسمح بتسجيل الشاشة بتنسيق mp4
- إصلاح مشكلة تعطُّل المحاكي على جهاز Pixel Fold AVD عند فتحه أثناء تسجيل الشاشة
- تم إصلاح المشكلة التي يعرض فيها Pixel Fold مظهرًا مختلفًا للهاتف مع لوحة مفاتيح منفصلة ولا يمكن استخدامه (تم إصلاح المشكلة على أجهزة Windows وMac Intel وLinux)
- إصلاح خلل في المظهر في "أجهزة الاستشعار الافتراضية" في "الوضع المستقل" (تم إصلاحه على أجهزة Windows وMac Intel وLinux)
- تم إصلاح بعض الأعطال، خاصةً أثناء إغلاق المحاكي
33.1.23 (30 نوفمبر 2023)
تم اختباره باستخدام الإصدار 4 من تصحيح Giraffe والإصدار الثابت من Hedgehog في "استوديو Android".
- تنفيذ جديد للأجهزة القابلة للطي لمحاكاة جهاز Pixel Fold بشكل أفضل، ويتوافق مع أحدث إصدار من واجهة برمجة التطبيقات 34
- ترقية نظام الخلفية للرسومات: نفّذنا بروتوكول gfxstream لنظام الخلفية للرسومات، ما يؤدي إلى تحسين الأداء العام للرسومات وثبات النظام. بالإضافة إلى ذلك، سنوفّر إمكانية استخدام الإصدار 1.3 من Vulkan بدءًا من صورة النظام التي تتضمّن المستوى 34 من واجهة برمجة التطبيقات.
- طلب ميزة: خيار لإيقاف إيماءة التصغير والتكبير أو إعادة تعيين مفتاح التشغيل السريع الخاص بها
- [إصلاح خطأ] المشكلة رقم 302562962 إصلاح تعطُّل كاميرا الويب في المحاكي عند استخدام نظام التشغيل MacOS Sonoma
- [إصلاح خطأ] المشكلة رقم 293503871 إصلاح المشكلة المتمثّلة في عدم حفظ إعداد "الميكروفون" عند إعادة تشغيل المحاكي
- [إصلاح خطأ] المشكلة رقم 270386314 إصلاح خطأ في الرسوم المتحركة حيث يظل الشريط الجانبي مفتوحًا بعد تصغير شاشة "جهاز Android الافتراضي"
- [إصلاح خطأ] المشكلة رقم 154896775 إصلاح أداة إرسال الأخطاء
32.1.15 (29 أغسطس 2023)
تم الاختبار باستخدام الإصدار 1 من حزمة تصحيح Giraffe والإصدار 16 من Hedgehog Canary في "استوديو Android".
- الالتزام بمتطلبات أجهزة GAS لأجهزة الاستشعار في محاكي AAE
- [إصلاح خطأ] المشكلة رقم 266201208 عدم إرسال رسائل SMS باللغة العبرية على الإصدار 33 من واجهة برمجة التطبيقات
- [إصلاح خطأ] المشكلة 257097404: لا يعرض المحاكي الوقت الصحيح بعد تنشيط الجهاز المضيف على الإصدارين 29 و30 من واجهة برمجة التطبيقات
- [إصلاح خطأ] المشكلة رقم 228201899 لا يمكن رؤية "خرائط Google" داخل "عناصر التحكّم الموسّعة" في "محاكي Android"
32.1.14 (27 يونيو 2023)
تم اختبارها باستخدام الإصدار 8 من Canary من استوديو Android Hedgehog والإصدار 5 من الإصدار التجريبي Giraffe والإصدار الثابت Flamingo.
- إصلاح مشاكل اتجاهات الكاميرا والتشويهات في المحاكي
- [إصلاح خطأ] المشكلة رقم 257097404 "لا يعرض المحاكي الوقت الصحيح بعد تنشيط الجهاز المضيف". لا يزال من الممكن إعادة إنتاج هذا الخطأ في المستوى 29 والمستوى 30 لواجهة برمجة التطبيقات.
- [إصلاح خطأ] المشكلة 243456582 "قد لا يتم تشغيل إصدارات Android بعد المستوى 30 من واجهة برمجة التطبيقات بشكل صحيح في المحاكي على أجهزة Mac M1"
32.1.13 (22 مايو 2023)
تم الاختبار باستخدام الإصدار 2 من Canary في استوديو Android Hedgehog والإصدار التجريبي 1 من Giraffe والإصدار الثابت من Flamingo.
- إضافة دعم لأجهزة Pixel Fold وPixel Tablet الافتراضية
- تحسين مشكلة تعطُّل gLinux
- [إصلاح خطأ] المشكلة رقم 215231636 "المحاكي الذي يتضمّن واجهة برمجة تطبيقات أعلى من المستوى 30 لا يعمل على معالج Intel من الجيل الثاني عشر".
- [إصلاح خطأ] المشكلة رقم 275397905 حدوث عدد كبير من الأعطال على Android Emulator M1 عند نقل تركيز المؤشر داخل المحاكي وخارجه بشكل متكرر.
- مشكلة معروفة في تشغيل المحاكي الافتراضي لنظام التشغيل Android (AVD) عند توفّر تقرير تعطل لمحاكي أحدث. لمزيد من المعلومات، اطّلِع على تحديد المشاكل في المحاكي وحلّها.
32.1.12 (21 مارس 2023)
تم الاختبار باستخدام الإصدار 10 من قناة Canary في استوديو Android Giraffe والإصدار المحتمل من Flamingo والإصدار 2 من حزمة تصحيح Electric Eel.
- [إصلاح خطأ] المشكلة رقم 267647323: لا تعمل الشبكة على المحاكي الذي تم تشغيله من "استوديو Android"
- [إصلاح خطأ] المشكلة رقم 268498686: شاشة المحاكي تومض
- [إصلاح خطأ] المشكلة رقم 270034824 انخفاض أداء المحاكي بعد التحديث إلى الإصدار 33.1.1
- [إصلاح خطأ] المشكلة رقم 225541819 يؤدي بدء تشغيل Chrome إلى تعطُّل المحاكي على x86_64
- [إصلاح خطأ] المشكلة رقم 257097404 لا يعرض المحاكي الوقت الصحيح بعد تنشيط الجهاز المضيف
- إضافة ميزة إعداد تقارير الأعطال لأجهزة Apple M1
32.1.11 (8 فبراير 2023)
تم الاختبار باستخدام الإصدار 2 من قناة Canary للإصدار Giraffe من "استوديو Android" والإصدار التجريبي 1 من الإصدار Flamingo والإصدار 1 من حزمة تصحيح الإصدار Electric Eel.
- تحسينات سرعة الشبكة
- إمكانية استخدام الماوس في "المحاكي المضمّن"
- تحسينات على virtio-snd
- إيقاف استخدام الروابط الرمزية أثناء فك ضغط Android Emulator أثناء التثبيت
- إصلاح عُطل في emulator-check
31.3.14 (13 ديسمبر 2022)
تم الاختبار باستخدام الإصدارات استوديو Android Dolphin وElectric Eel RC1 وFlamingo Canary 9.
- [إصلاح خطأ] إصلاح أعطال المحاكي التي تحدث عند تسجيل الدخول إلى "متجر Google Play"
31.3.13 (27 أكتوبر 2022)
تم الاختبار باستخدام الإصدارات Android Studio Dolphin وElectric Eel Beta 2 وFlamingo Canary 5.
- [إصلاح خطأ] المشكلة رقم 249948338: مَعلمة المنطقة الزمنية لا تعمل
- [إصلاح خطأ] المشكلة رقم 249366543: لا يعمل خيار -dns-server في المحاكي بعد الإصدار 31 من واجهة برمجة التطبيقات
31.3.12 (10 تشرين الأول/أكتوبر 2022)
تم الاختبار باستخدام الإصدار التجريبي الأول من استوديو Android Dolphin وElectric Eel.
يتضمّن هذا التحديث التحسينات والإصلاحات التالية:
- [إصلاح خطأ] المشكلة رقم 247843000: خطأ في معالجة المسار النسبي لجهاز Android الافتراضي
- زيادة حجم القرص في الإصدار 24 من واجهة برمجة التطبيقات والإصدارات الأحدث
31.3.11 (23 سبتمبر 2022)
تم الاختبار باستخدام الإصدار 10 من Canary في "استوديو Android" Dolphin وElectric Eel.
يتضمّن هذا التحديث التحسينات والإصلاحات التالية:
- [إصلاح خطأ] تعطُّل جهاز Android الافتراضي (AVD) للمحاكي المضمّن في نافذة "عناصر التحكّم الموسّعة"
- [إصلاح خطأ] المشكلة رقم 183139207: مشاكل الصوت المرتبطة بتفعيل المحاكي للميكروفون
- [إصلاح خطأ] المشكلة رقم 229764024: خطأ في اللمس الثابت في "الجهاز الافتراضي لنظام التشغيل Android" يؤدي إلى حدوث مشاكل في سلوك واجهة المستخدم
- [إصلاح خطأ] حدث خطأ عند تشغيل محاكي Android الظاهري (AVD) الذي يستهدف المستوى 33 من واجهة برمجة التطبيقات على جهاز Mac M1.
- [إصلاح خطأ] المشكلة رقم 243053479: بطء سرعة الشبكة بعد تحديث المحاكي
- [إصلاح خطأ] المشكلة رقم 244617627: عدم عمل الموقع الجغرافي في "خرائط Google" على أجهزة Windows وLinux
- [إصلاح خطأ] المشكلة رقم 232971796: زر "الاتصال بالجهاز" لا يعمل في صفحة "عناصر التحكّم الموسّعة" > "الهاتف"
- تحديث "محاكي Android" إلى minigbm
- نقل نصوص الإنشاء البرمجية إلى Python3
31.3.10 (18 أغسطس 2022)
تم الاختبار باستخدام الإصدار التجريبي 5 من استوديو Android Dolphin والإصدار 9 من Electric Eel Canary.
تتوفّر الآن عمليات تنزيل مستقلة للمحاكي. إذا واجهت أي مشاكل أو أعطال في هذا الإصدار الثابت الأخير، يُرجى تسجيل خطأ وتجربة تنزيل إصدار سابق كان يعمل بشكل جيد من أرشيف تنزيل المحاكي.
يتضمّن هذا التحديث التحسينات والإصلاحات التالية:
- تحسين إمكانية استخدام مسارات Unicode على أجهزة Windows
- تحسين طريقة التعامل مع إيقاف المحاكي، ما يتيح إمكانية تشغيل AVD نفسه بنجاح.
- تعديل تصميم المحاكي للأجهزة الافتراضية القابلة للطي والإعدادات التلقائية
- أزرار معدَّلة في محاكي Wear
- تحسينات على بث الصوت باستخدام gRPC
- تمت إضافة أمر وحدة تحكّم المحاكي القابل لتغيير الحجم
- إصلاح Chrome للإصدار 31 من واجهة برمجة التطبيقات
- [إصلاح خطأ] تعذّر مصادقة حساب Google باستخدام GmsCore الإصدار 21.42.18
31.2.10 (20 أبريل 2022)
تم الاختبار باستخدام الإصدار التجريبي 8 من Android Studio Dolphin والإصدار 1 من Chipmunk RC.
يتضمّن هذا التحديث التحسينات والإصلاحات التالية:
- إضافة أداة لتحميل دوال Vulkan مع بدائل
- [إصلاح خطأ] إصلاح خطأ في الإصدار gcc8
31.2.9 (23 مارس 2022)
تم الاختبار باستخدام الإصدار 7 من استوديو Android Dolphin Canary.
يتضمّن هذا التحديث الإصلاح التالي:
- [إصلاح خطأ] تجاهل ضغط الذاكرة عند حفظ اللقطة على M1
31.2.8 (7 شباط/فبراير 2022)
تم اختباره باستخدام الإصدار 1 من حزمة تصحيح استوديو Android Bumblebee والإصدار 6 من Chipmunk Canary.
يتضمّن هذا التحديث التحسينات والإصلاحات التالية:
- [إصلاح خطأ] يتعذّر تسجيل الدخول إلى التطبيقات
- [إصلاح خطأ] المشكلة رقم 215368358: سيؤدي تنفيذ الأمر "adb reboot" على منصة Intel إلى تعطُّل المحاكي AVD مع ظهور الرسالة "vcpu shutdown request"
31.2.7 (1 فبراير 2022)
تم اختباره باستخدام الإصدار 1 من حزمة تصحيح استوديو Android Bumblebee والإصدار 6 من Chipmunk Canary.
يتضمّن هذا التحديث الإصلاح التالي:
- [إصلاح خطأ] خطأ تعليق المحاكي على أجهزة M1
31.2.6 (20 يناير 2022)
تم الاختبار باستخدام الإصدارات Arctic Fox وBumblebee Beta 4 وChipmunk Canary 6 من "استوديو Android".
يتضمّن هذا التحديث التحسينات والإصلاحات التالية:
- تمت إضافة أزرار Wear إلى محاكي Wear OS.
- أتحنا إمكانية تعديل جميع خصائص المركبة في علامة التبويب VHAL.
- [إصلاح خطأ] تعذّر مصادقة حساب Google باستخدام الإصدار 21.42.18 من GmsCore.
- [إصلاح خطأ] لم يعمل Netshaper بشكلٍ جيد مع VirtioWifi.
- [إصلاح خطأ] لم يعمل الأمر event mouse في وحدة التحكّم.
- تمت إضافة عملية التحقّق من KVM لإنشاء أجهزة AVD محلية.
31.1.3 (18 يناير 2022)
يتضمّن هذا التحديث التحسينات والإصلاحات التالية:
- تم تفعيل منافذ وحدة التحكّم في Fuchsia.
- عند تغيير حجم نافذة على شاشات متعددة، يتم تجاهل اتجاه الشاشة.
- Wi-Fi: تمت إضافة إمكانية فلترة حِزم الإرسال الأحادي استنادًا إلى عنوان MAC الخاص بـ MAT.
- Wi-Fi: تم إصلاح عُطل عند استخدام vmnet.
30.9.5 (15 ديسمبر 2021)
يتضمّن هذا التحديث التحسينات والإصلاحات التالية:
- تمت إضافة إمكانية تغيير الحجم بسهولة إلى نافذة بحجم كمبيوتر مكتبي أو جهاز لوحي.
- تمت إضافة إمكانية إدخال البيانات باللمس المتعدد من الأجهزة المضيفة المتوافقة.
- VirtioWifi: تمت إضافة دعم لشبكة tap.
- تم تفعيل ميزة "الإدخال الدوّار" في صور نظام Wear.
- تم إصلاح مشكلة إعدادات الصوت في gRPC.
- تم تعديل ميزة "تشغيل المحاكي SensorReplay" لتتوافق مع أجهزة استشعار Android العادية.
- ربط المحاكي بالأجهزة الطرفية والأجهزة باستخدام USB مع ميزة "مرور الإشارة عبر USB"
30.4.5 (23 شباط/فبراير 2021)
يتضمّن هذا التحديث التحسينات والإصلاحات التالية:
- macOS: تم إصلاح المشاكل المتعلّقة بتشويه إدخال الصوت.
- تمت إضافة دعم لـ virtio-vsock في مساحة المستخدم.
- ستستخدم صور النظام المستقبلية virtio-console لرسائل logcat والنواة.
- تسريع العرض باستخدام Vulkan
- تمت إضافة إمكانية تصحيح الأخطاء في اللقطات عند تعذُّر الاختبار.
- virtio-gpu: تم تعديل التعريفات لتتوافق مع أحدث تعدادات موارد blob.
- تمت إضافة إمكانية أخذ لقطات شاشة لنقل الرسومات من النوع "asg".
- macOS: تمت إضافة إمكانية إنشاء إصدارات متوافقة مع الإصدار 11.1 من حزمة تطوير البرامج (SDK) أو إصدار أحدث لنظام التشغيل macOS.
- يتم تفعيل KVMclock تلقائيًا على صور الأنظمة الأحدث.
- تمت إضافة إمكانية استخدام مستشعر معدّل نبضات القلب في محاكيات Wear.
- تمت إزالة libportability Vulkan backend.
- تمت إضافة إمكانية استخدام المزيد من الميزات في محاكي المودم.
30.0.26 (16 أغسطس 2020)
يتضمّن هذا التحديث العديد من الميزات الجديدة والتحسينات على الميزات الحالية وإصلاحات للأخطاء.
إتاحة الأجهزة القابلة للطي مع مستشعر المفصلة الافتراضية والعرض الثلاثي الأبعاد
تمت إضافة إمكانية استخدام أجهزة استشعار المفصلات للأجهزة القابلة للطي. ويتطلّب ذلك توفّر صورة نظام Android 11 في المستقبل وإعداد AVD. تم الآن دمج مَعلمات المفصلة والعرض القابل للطي ثلاثي الأبعاد مع الإعدادات المسبقة الحالية للأجهزة القابلة للطي. يمكن استخدام ما يلي مع ملف
config.iniالخاص بجهاز محاكاة Android القابل للطي مقاس 7.3 بوصة، على سبيل المثال:hw.sensor.hinge = yes hw.sensor.hinge.count = 1 hw.sensor.hinge.type = 1 hw.sensor.hinge.ranges = 180-360 hw.sensor.hinge.defaults = 180 hw.sensor.hinge.areas = 54.7-0 hw.sensor.posture_list=4, 3 hw.sensor.hinge_angles_posture_definitions=210-360, 180-210 hw.sensor.hinge.fold_to_displayRegion.0.1_at_posture=4تتضمّن الأجهزة القابلة للطي الآن أيضًا مَعلمة نوع فرعي. أصبحت السمة
config.inihw.sensor.hinge.sub_type = hinge/foldمتاحة الآن. لمزيد من المعلومات، يُرجى الاطّلاع على منشور المدوّنة تطوير تطبيقات Android 11 باستخدام محاكي Android.تم الآن تفعيل مستشعر المفصلة تلقائيًا.
في حال ضبط جهاز قابل للطي، يرسل المحاكي الآن إلى الضيف تحديثات بشأن مستشعرات زاوية المفصلة وتغييرات الوضع. ستتمكّن الأجهزة القابلة للطي الحالية من تعديل زاوية مفصلة الجهاز ووضعيته عند الضغط على زرَي الطي أو الفتح في شريط الأدوات.

المحاكي للمضيفين الذين يستخدمون بنية ARM64
يتيح رمز المصدر لمحاكي Linux الآن إمكانية تجميع البرامج على أجهزة مضيفة تعمل بنظام التشغيل x86_64 ونظام التشغيل arm64، ما يتيح تشغيل صور نظام arm64 باستخدام المحاكاة الافتراضية KVM. في الوقت الحالي، لا يتوفّر سوى
-gpu swiftshader_indirect(عرض Swiftshader arm64 على الجهاز المضيف)، ولكن يمكن أيضًا استخدام مجموعة متوافقة من مكتبات libEGL/libGLESv2 لوحدة معالجة الرسومات على الجهاز المضيف من خلال استبدال lib64/gles_swiftshader بها ثم إعادة التشغيل باستخدام-gpu swiftshader_indirect. قد لا تعمل اللقطات أيضًا (أضِف-no-snapshotإلى سطر الأوامر). التعليمات:mkdir emu cd emu repo init -u https://android.googlesource.com/platform/manifest -b emu-master-dev --depth=1 repo sync -qcj 12 cd external/qemu pip install absl-py pip install urlfetch sudo apt-get install crossbuild-essential-arm64 python android/build/python/cmake.py --noqtwebengine --noshowprefixforinfo --target linux_aarch64نعمل حاليًا على توفير الدعم لأجهزة Apple Silicon.
توافق virtio-gpu
- تمت إضافة إمكانية استخدام موارد blob متوافقة مع المضيف virtio-gpu القادمة على جانب المضيف.
- بسبب طريقة عمل عرض المحاكي، نعالج الآن virtio-gpu virtqueue في سلسلة vcpu (لأنّ العرض يتم نقله إلى سلاسل أخرى على أي حال). سيتم تفعيل عرض virtio-gpu في إصدار مستقبلي من صورة النظام والمحاكي.
- في صورة نظام مستقبلية، سيتمكّن المحاكي من تشغيل جميع الرسومات باستخدام حزمة تستند إلى virtio-gpu.
ميزات وتحسينات جديدة أخرى
- أصبحت ميزة "مرور إشارة USB" متاحة الآن على أجهزة Windows باستخدام
-qemu -usb -device usb-host,vendorid=<usb-vendor-id>,productid=<usb-product-id>. (من المفترض أن تكون هذه الميزة متاحة أيضًا على Linux وmacOS) - تم تعديل مكتبات WebRTC إلى الإصدار 83 من Chrome.
- يتيح المحاكي الآن بث الصوت في الحاويات عبر WebRTC.
- تمت إزالة نقطة نهاية قناة darwinn.
- أصبح فك ترميز VPx باستخدام CUDA متاحًا الآن للفيديو، إذا كان فك ترميز VPx باستخدام CUDA متاحًا في الأجهزة، وذلك من خلال متغيّر البيئة
ANDROID_EMU_MEDIA_DECODER_CUDA_VPX=1. - على أجهزة macOS، تتوفّر الآن حزمة تعليمات SSE 4.1 و4.2 من داخل نظام التشغيل Android الضيف.
- على أجهزة macOS، تم الآن تفعيل INVTSC تلقائيًا. ويمكن أن يؤدي ذلك إلى تحسين دقة قياسات الوقت التي يقدّمها الضيف.
- نتتبّع الآن لوحة التحكّم الموسّعة التي اختارها المستخدم في المقاييس.
- يستخدم محاكي Linux الآن ساعة KVM شبه الافتراضية عندما يكون إصدار نواة نظام التشغيل الضيف >= 5.4 (صور نظام التشغيل R أو الإصدارات الأحدث).
- يستخدم المحاكي الآن LZ4 لفك ضغط نُوى الضيف، ما يجعله متوافقًا مع مسار النواة الحديث.
تمت إضافة أوامر وحدة التحكّم للحصول على دليل AVD الخاص بالمحاكي ومسار ملف الاكتشاف في حالة الاستخدام المضمّن في Studio ومسار اللقطات:
adb emu avd path # Obtains path to AVD directory adb emu avd discoverypath # Obtains path to discovery file adb emu avd snapshotspath # Obtains path to snapshots folder adb emu avd snapshotpath <snapshotName> # Obtains path to the folder that stores the snapshot for the snapshot with name <snapshotName>
لتسهيل حفظ مساحة الشاشة العمودية، أضفنا خيارًا لإخفاء إطار الجهاز لجهاز Android الافتراضي الحالي في عناصر التحكّم الموسّعة > الإعدادات. لإخفاء إطارات الأجهزة بشكل عام في جميع أجهزة Android الافتراضية، أتحنا علامة الميزة
NoDeviceFrameالتي يمكن تفعيلها من خلال تشغيل المحاكي من سطر الأوامر باستخدام إطار-feature NoDevice، أو لقفلها، من خلال إضافةNoDeviceFrame = onإلى~/.android/advancedFeatures.ini(أنشئ هذا الملف إذا لم يكن موجودًا من قبل).تمت إضافة عنصر قائمة منسدلة في صفحة شبكة الجوّال لتفعيل ميزة "الاستخدام المحدود للبيانات" وإيقافها، وهي لا تؤثر في صور النظام القديمة التي لا تتوافق مع خيار تفعيل/إيقاف ميزة "الاستخدام المحدود للبيانات" على شبكة الجيل الخامس.
- تمت أيضًا إضافة أمر وحدة تحكّم للغرض نفسه:
gsm meter on|off
- تمت أيضًا إضافة أمر وحدة تحكّم للغرض نفسه:
تمت ترقية سلسلة الأدوات / الإصدار إلى C++17.
الإصلاحات: المحاكي المضمّن
- من المفترض أن تعمل الحافظة الآن.
- تم إصلاح المشكلة التي كانت تؤدي إلى عرض الأحرف الكبيرة كأحرف صغيرة في المحاكي.
- تم إصلاح مشكلة تحميل رمز وحدة التحكّم من مسار Unicode في نظام التشغيل Windows.
- تم إصلاح رسالة الخطأ
SO_REUSEPORTعلى نظام التشغيل Linux. - تم إصلاح مشكلة تلف اللقطة عند إرسال أوامر اللقطة من خلال gRPC، وكذلك عند الضغط على زر حفظ اللقطة في المحاكي المضمّن في "استوديو Android".
عند استخدام محاكي Linux المضمّن في "استوديو Android"، تبيّن لنا أنّه في حال إجراء ذلك من خلال "الاتصال بجهازك عن بعد من Chrome"، هناك خطأ يؤدي إلى عدم ضبط
XDG_RUNTIME_DIR، ما قد يؤدي إلى تعذُّر ظهور المحاكي المضمّن بسبب وضع ملفات البحث عن المحاكي فيXDG_RUNTIME_DIR. يمكنك الاطّلاع على حالة المشكلة ذات الصلة في أداة تتبُّع المشاكل في Chrome.كحلّ بديل، يعود المحاكي الآن إلى استخدام ملفات البحث في دليل مختلف محتمل استنادًا إلى معرّف UID الخاص بالمستخدم:
/run/user/<uid>.المحاكي المضمّن: يمكن الآن للأجهزة ذات الزوايا الدائرية أو النتوءات تغيير تصميمها بشكل صحيح لإتاحة مساحة للزوايا والنتوءات. ويتطلّب ذلك إعادة تشغيل هذه المحاكيات.
تتيح نقطة نهاية gRPC الآن إرسال رسائل SMS إلى الجهاز.
إصلاحات عامة
- لقد رصدنا مشاكل في التوافق عند تشغيل محاكي Windows مع تفعيل Riot Vanguard. يرصد محاكي Windows الآن برنامج Vanguard لمكافحة الغش، ويعرض رسالة تحذير إذا تم رصد البرنامج.
- تم إصلاح الخطأ
FD_SETSIZEعلى أجهزة Windows. نستخدم الآنWSAEventSelect()بدلاً منselect()لإنشاء اتصالات غير حظرية بخوادم العودة. - تمت إضافة إمكانية استخدام ميزة F16C CPUID إلى محاكي Linux مع إصلاح المشاكل التي تحدث عند تشغيل بعض تطبيقات ARM64 من خلال ترجمة NDK، ويجري العمل على توفيرها في نظامَي التشغيل macOS وWindows.
- تم إصلاح مشكلة تشغيل مسار GPX/KML ليتوافق مع الطوابع الزمنية.
- تم إصلاح مشكلة ارتداد الرمز عند التشغيل على نظام التشغيل macOS.
- إذا كان
hw.audioInput=noوhw.audioOutput=noفيconfig.ini، تم الآن إيقاف صوت المحاكي بشكل صحيح. - تم إصلاح مشكلة ظهور نافذة عناصر التحكّم الموسّعة عند تغيير حجم نافذة المحاكي إذا تم تصغير نافذة المحاكي وكانت نافذة عناصر التحكّم الموسّعة مفتوحة ولكن غير نشطة. سنزيل السلوك بالكامل (كما هو الحال مع نافذة عناصر التحكّم الموسّعة النشطة) في تحديث مستقبلي.
- تم إصلاح خطأ متقطع يتعلّق بعدم الاتصال بشبكة Wi-Fi عند بدء تشغيل المحاكي.
- تم إصلاح مشكلة التعليق عند الخروج عندما يرسل المحاكي أوامر shell مع مهلات طويلة أو غير محدّدة.
- تم تعديل pc-bios لإصلاح المشاكل التي تؤدي إلى عدم إتاحة عرض الصور الكبيرة التي يتم تمريرها إلى
-initrdبشكل جيد، إذ كان نظام BIOS السابق يستخدم طريقة غير فعّالة. - تم إصلاح عُطل ثابت أثناء الإنهاء عند استخدام الخيار
-wifi-server-port. - يعرض المحاكي الآن تحذيرًا في حال تمرير خيارات غير متوافقة إلى
-prop(لا تتوفّر سوى خصائص qemu.*). - عند إنشاء المحاكي على نظام التشغيل Windows، من المفترض أن تقلّ فرص مواجهة أخطاء متقطّعة عند الكتابة في الملفات. لمزيد من المعلومات، يُرجى الاطّلاع على تعليمات إنشاء إصدار Windows.
- تم إيقاف زر "التكبير" لأجهزة AVD القابلة للطي، ما كان يتسبب في حدوث مشاكل.
- يعرض المحاكي الآن وقت التشغيل بشكل صحيح عند إعادة تشغيل الجهاز.
- Linux: في حال عدم توفّر أذونات KVM كافية، يعرض المحاكي الآن تعليمات تصحيح الأخطاء بشكل أسرع.
- تم إصلاح المشكلة التي تعذّر فيها تشغيل المحاكي لصور النظام الحديثة بدون تسريع.
- تم إصلاح مشكلة تلف الذاكرة أو تعطُّل التطبيق عند بدء التشغيل من أداة رصد اكتمال عملية التشغيل.
- تم إصلاح مشكلة تسرب الذاكرة أثناء جلسات تسجيل الشاشة الطويلة.
- تم تعديل رموز المحاكي لتعكس العلامة التجارية لإصدار Studio 4.1.
- تمت إضافة دعم أفضل لرصد الجلسات عن بُعد على أجهزة Windows.
إصلاحات: الرسومات وفك ترميز الفيديو
- تم إصلاح مشكلة عرض أحدث إصدار من لعبة Asphalt 9 بشاشة سوداء.
- تمت إزالة المحتوى غير المرغوب فيه بشأن إفراغ المخزن المؤقت الذي تم ربطه باستخدام
NULL. - تم إصلاح مشكلة تداخل عند إيقاف حالة Vulkan عند الخروج من تطبيق Vulkan للضيوف.
- تم الآن دمج أدوات تظليل محاكاة ASTC/ETC2 في Vulkan في مكتبة libOpenglRender. سيكون هذا الإجراء أكثر موثوقية مقارنةً بالقراءة من نظام الملفات.
- تم إصلاح مشكلة في Vulkan كانت تتسبّب في أن يؤدي تشغيل مثيل Vulkan 1.0 على المضيف إلى أن يمحو
vkGetImageMemoryRequirements2KHRالحقلpNextفي البنيةVkMemoryRequirements2التي تم عرضها بشكل غير صحيح. - تم إصلاح تسرب في الذاكرة في أداة العرض Vulkan.
- تم إصلاح مشكلة حديثة في الإصدارات السابقة حيث تعذّر تجميع برامج التظليل GLSL ES 1.00 التي تتضمّن أسماء متغيّرة مثل
isampler2D. - تم تعديل أداة ترجمة ANGLE shader لتشمل إصلاحات مختلفة تعالج المشاكل المحتملة في تجميع shaders على نظام التشغيل Linux.
- نوقف الآن المحاكي إذا تعذّر تجميع أداة تظليل نقل إطار المخزن المؤقت الأساسي، وذلك لتتبُّع هذه المشكلة.
- تم تعديل أداة ترجمة تظليل ANGLE لمواكبة أحدث إصدار من ANGLE. وقد أدّى ذلك إلى حلّ مشكلة تلف الذاكرة عند ترجمة وتصغير رموز OpenGL ES البرمجية التي تستخدم مصفوفات غير مربّعة. أصبح برنامج ترجمة التظليل الآن مكتبة مشتركة منفصلة،
libshadertranslator.dll. - تم إصلاح مشكلة في عملية تهيئة Vulkan على بعض برامج تشغيل وحدات معالجة الرسومات، حيث لم يتم العثور على بعض وظائف الأجهزة 1.1.
- Vulkan: عدنا إلى استخدام أداة التحميل المسبقة الإنشاء لأنّ استخدام أداة تحميل Vulkan التابعة للنظام تسبّب في حدوث مشاكل في بعض عمليات الإعداد، وسنحاول إيجاد حلّ أفضل.
- تم إصلاح مشكلة عند استخدام ذاكرة Vulkan الخارجية، حيث كان من الممكن استيراد فهارس أنواع الذاكرة غير المتطابقة على الجهاز المضيف.
- تم إصلاح مشكلة في محاكاة
GL_ALIASED_POINT_SIZE_RANGEحيث لم يكن التعداد غير متاح على الجهاز المضيف. - تم إصلاح المشكلة التي كانت تمنع تجميع برامج تظليل Skia على بعض وحدات معالجة الرسومات المضيفة بسبب أخطاء متعلقة بـ
GL_EXT_shader_framebuffer_fetch. - بما أنّ نسختنا من برنامج العرض D3D9 ANGLE تمت إزالتها قبل بضعة إصدارات، سنبدّل تلقائيًا أيضًا المستخدمين الذين كانوا يستخدمون برنامج العرض هذا إلى d3d11 ANGLE إذا تم اختياره في الإعدادات المفضّلة لواجهة المستخدم.
- تمت إضافة المزيد من معلومات تصحيح الأخطاء إلى عملية تهيئة WGL على أجهزة Windows لتتبُّع حالات التعذُّر.
- عندما تكون قيمة
hw.gltransport=virtio-gpu-pipe، يتم تحسين الأداء من خلال عدم الانتظار على المضيف أثناء عمليات النقل من المضيف إلى الجهاز الضيف. - تمت إضافة المزيد من سجلّات تصحيح الأخطاء في حال تعذُّر بدء محاكاة OpenGLES.
- تم إصلاح مشكلة عدم ظهور فيديوهات YouTube أو ظهور وميض فيها عند تحميل اللقطة.
- تمت إعادة التبديل إلى فك الترميز باستخدام البرامج في libvpx في الوقت الحالي، وذلك بعد رصد مشاكل في فك الترميز باستخدام أجهزة CUDA في libvpx. إذا كان لديك عملية تنفيذ متوافقة لفك ترميز أجهزة CUDA على جانب المضيف، يمكن إعادة تفعيل فك ترميز أجهزة libvpx من خلال متغير البيئة
ANDROID_EMU_MEDIA_DECODER_CUDA_VPX=1.
30.0.10 (30 أبريل 2020)
يتضمّن هذا التحديث إمكانية تشغيل المحاكي مباشرةً في استوديو Android والأجهزة الافتراضية مع تفعيل "وضع النافذة الحرة" تلقائيًا.
تشغيل المحاكي في "استوديو Android"
يمكن الآن تشغيل Android Emulator مباشرةً في "استوديو Android". استخدِم هذه الميزة للحفاظ على مساحة الشاشة، والتنقّل بسرعة بين المحاكي ونافذة المحرّر باستخدام مفاتيح الاختصار، وتنظيم سير عمل بيئة التطوير المتكاملة والمحاكي في نافذة تطبيق واحدة.
وضع النافذة الحرة
يمكنك الآن إنشاء جهاز محاكاة Android مزوّدًا بوضع "النافذة الحرة" من خلال اختيار ملف الأجهزة اللوحي "النافذة الحرة" مقاس 13.5 بوصة عند إنشاء جهاز افتراضي في "استوديو Android". يتطلّب ملف الأجهزة هذا صورة نظام تتضمّن الإصدار 3 أو إصدارًا أحدث من "معاينة المطوّرين" لنظام التشغيل Android 11.
المشاكل المعروفة
يتعذّر حاليًا تغيير حجم النوافذ الحرة بسبب مشاكل في نقل التركيز إلى "مدير النوافذ". ستتم معالجة هذه المشكلة في إصدار مستقبلي من صورة نظام Android 11.
30.0.0 (19 فبراير 2020)
يتضمّن هذا التحديث صور نظام Android 11 (مستوى واجهة برمجة التطبيقات 30) وتحسينات على الأداء عند تشغيل ملفات ARM الثنائية.
صور نظام Android 11
يمكنك الآن إنشاء جهاز محاكاة افتراضي يعمل بنظام التشغيل Android 11 من خلال اختيار أي من صور النظام المتوفّرة بالمستوى 30 من واجهة برمجة التطبيقات:
- x86: تتضمّن واجهات التطبيق الثنائية x86 وARMv7.
- x86_64: تتضمّن واجهات التطبيق الثنائية x86 وx86_64 وARMv7 وARM64.
إتاحة استخدام ملفات ARM الثنائية على صور نظام Android 9 و11
إذا لم يكن بإمكانك استخدام "محاكي Android" في السابق لأنّ تطبيقك كان يعتمد على ملفات ARM الثنائية، يمكنك الآن استخدام صورة نظام Android 9 x86 أو أي صورة نظام Android 11 لتشغيل تطبيقك، ولم يعُد من الضروري تنزيل صورة نظام معيّنة لتشغيل ملفات ARM الثنائية. تتوافق صور نظام التشغيل Android 9 وAndroid 11 هذه مع بنية ARM تلقائيًا، كما أنّها توفّر أداءً أفضل بكثير مقارنةً بتلك التي تتضمّن محاكي ARM الكامل.
المشاكل المعروفة
- لا يمكن تشغيل بعض ملفات ARMv7 الثنائية على صور نظام Android 11 x86 وx86_64. ننصحك بإنشاء إصدارات متوافقة مع بنية ARM64 عند استهداف الإصدار 11 من نظام التشغيل Android.
29.0.11 (29 مايو 2019)
يتضمّن هذا التحديث التحسينات والإصلاحات التالية:
- في نظام التشغيل Windows: يعتمد المحاكي الآن على ملف
libgccDLL الذي نرسله بدلاً من تجميعه بشكل ثابت معlibgcc. - Linux: تمت إضافة إمكانية استخدام logcat إلى واجهة برمجة التطبيقات gRPC. لمزيد من المعلومات عن gRPC، يُرجى الاطّلاع على محاكي البث المباشر في gRPC (نظام التشغيل Linux).
- يتضمّن المحاكي الآن إصدارًا بلا واجهة مستخدم رسومية لبرامج x86 32 بت الضيف (
qemu-system-i386). تتيح هذه الميزة تشغيل صور x86 32 بت لمستويات واجهة برمجة التطبيقات 26 والإصدارات الأقدم باستخدام الإصدار بلا واجهة مستخدم رسومية. يُرجى العِلم أنّه بالنسبة إلى الأجهزة الافتراضية x86 التي تعمل بنظام 32 بت والتي تتضمّن الإصدار 27 من واجهة برمجة التطبيقات أو الإصدارات الأحدث، يستخدم المحاكي المحرّك 64 بت (qemu-system-x86_64) لأنّه في صور النظام هذه، يكون مساحة المستخدم 32 بت، بينما تكون النواة 64 بت. يستخدم "استوديو Android" النواة لاختيار محركات المحاكاة. - يمكنك الآن تحديد مسارات مخصّصة لمكتبة Qt باستخدام
ANDROID_QT_LIB_PATHمتغيّر البيئة. - يمكنك الآن تشغيل المحاكي باستخدام ملفات ثنائية سابقة تستخدم QEMU1 إذا تم وضع ملفات QEMU1 التنفيذية (
emulator[64]-[x86|arm|etc]) في دليل المحاكي. - Windows: تم إصلاح مشكلة كانت تتسبّب أحيانًا في تعذُّر بدء المحاكي مع ظهور الرسالة "طلب إيقاف وحدة المعالجة المركزية الافتراضية".
- تم إصلاح مشكلة متعلّقة بحاجز غير ضروري في مسار العرض في مواد العرض المضغوطة المحاكية في Vulkan.
- تم إصلاح خطأ حدث مع طلبات خادم وكيل http عند استخدام ترميز النقل المجزّأ. لمزيد من المعلومات، يُرجى الاطّلاع على تفاصيل عملية الإيداع.
29.0.9 (7 مايو 2019)
يتضمّن هذا التحديث الإصلاح التالي:
- Windows: تم إصلاح مشكلة عدم عمل كاميرا المشهد الافتراضي وكاميرا الويب على المحاكي.
29.0.8 (6 مايو 2019)
يتضمّن هذا التحديث التحسينات والإصلاحات التالية:
- تمت إضافة إمكانية استخدام شاشات أجهزة افتراضية متعددة عند توفّر خدمة ضيف لتعداد كل شاشة وضبطها. سيتم تضمين شاشات متعددة للأجهزة الافتراضية في تحديث مستقبلي لصورة نظام المحاكي.
- تمت إضافة خيار جديد لسطر الأوامر:
-delay-adb. يؤدي هذا الخيار إلى إيقاف معالجة حِزم ADB إلى أن يكمل الضيف عملية التشغيل (من خلال إعادة التشغيل الباردة). يساعد هذا الخيار في حل المشاكل التي قد تحدث إذا كنت تستخدم المحاكي في بيئة دمج متواصل تعيد تشغيل المحاكي وتستخدم أداة DDMS في الوقت نفسه. - تم إصلاح الخطأ الذي كان يحدث عند تحميل اللقطات حيث كانت الدالة
glIsRenderbufferتعرض قيمة غير صحيحة. - تم إصلاح بعض المشاكل المتعلّقة بالحالة القديمة عند إعادة تشغيل جهاز Android الضيف.
- Windows: تم إصلاح المشاكل التي كانت تمنع بدء المحاكي عندما يحتوي اسم مستخدم Windows على أحرف خارج نطاق ASCII أو مسافات.
المشاكل المعروفة
- تم إيقاف واجهة مستخدم اللقطات لصور نظام Automotive لأنّ اللقطات غير متاحة حاليًا لهذه الصور.
29.0.6 (1 مايو 2019)
يتضمّن هذا التحديث العديد من الميزات الجديدة والتحسينات على الميزات الحالية وإصلاحات للأخطاء.
إزالة QEMU1 والتوافق مع نظام التشغيل Windows بسرعة 32 بت
للحفاظ على المحاكي بشكل أفضل، لم نعد نتيح حزم QEMU1 وWindows 32 بت الثنائية. إذا كنت تستخدم نظام التشغيل Windows 32 بت، لا يمكنك الترقية إلى الإصدار 29.0.6.
متطلبات صور نظام Android Q
إذا كنت تريد تشغيل جهاز محاكاة Android (AVD) يستخدم صورة نظام Android Q، عليك الآن استخدام الإصدار 29.0.6 (إصدار هذا الإصدار) أو إصدار أحدث.
تحسينات Project Marble
يأتي هذا التحديث في إطار جهودنا المتواصلة بشأن مبادرة Project Marble التي أعلنّا عنها في مؤتمر Android Developer Summit في نوفمبر 2018. لمزيد من المعلومات حول التحسينات الأخرى التي تم إجراؤها في إطار Project Marble في الإصدارات السابقة، يُرجى الاطّلاع على Android Emulator: تحسينات Project Marble.
في هذا التحديث، تم تخصيص معظم جهودنا في إطار "مشروع Marble" لتقليل استخدام موارد المحاكي، مثل تقليل استخدام وحدة المعالجة المركزية (CPU) للمحاكي أثناء عدم النشاط. أجرينا أيضًا تغييرات تسهّل استخدام المحاكي في مجموعة متنوعة من البيئات، وعالجنا مشاكل عامة متعلّقة بالجودة.
توضّح الأقسام التالية التحسينات التي تم إجراؤها في إطار Project Marble وتم تضمينها في هذا التحديث:
تحسينات على سلوك الصوت للمضيف
بدءًا من الإصدار 28.0.3، يحظر المحاكي إدخال الصوت من الجهاز المضيف تلقائيًا.
إذا أردت استخدام بيانات الصوت من الجهاز المضيف، يمكنك تفعيل هذا الخيار من خلال الانتقال إلى عناصر التحكّم الموسّعة > الميكروفون وتفعيل يستخدم الميكروفون الافتراضي إدخال الصوت من الجهاز المضيف. يتم إيقاف هذا الخيار تلقائيًا عند إعادة تشغيل المحاكي.
إذا كنت تستخدم سطر الأوامر، يمكنك أيضًا تفعيل صوت المضيف باستخدام الخيار -allow-host-audio، ويمكنك استخدام أوامر ADB التالية لتفعيل بيانات صوت المضيف أو إيقافها، على التوالي:
adb emu avd hostmiconadb emu avd hostmicoff
تحسينات على إصدارات المحاكي بلا واجهة مستخدم رسومية
بدءًا من الإصدار 28.0.25، يتضمّن المحاكي خيار إنشاء بلا واجهة مستخدم رسومية يمكن تشغيله بدون واجهة المستخدم. يمكنك استخدام إصدارات بلا واجهة مستخدم رسومية للمساعدة في إعداد المحاكي لعمليات سير عمل Docker و"الدمج المستمر" (CI).
من خلال هذا التحديث، أجرينا المزيد من التحسينات للسماح للمحاكي بالعمل مع الحد الأدنى من التبعيات. في نظام التشغيل Linux، لم تعُد الإصدارات التي لا تتضمّن واجهة مستخدم تتضمّن المكتبتَين pulseaudio أو libX11. تم تقليل عدد المكتبات المشتركة التي يعتمد عليها النظام والتي لم يتم تضمينها في الحزمة مع المحاكي إلى القائمة التالية:
Linux-vdso.so.1Libutil.so.1Libm.so.6Libdl.so.2Librt.so.1Libpthread.so.0Libgcc_s.so.1Libc.so.6ld-linux-x86-64.so.2
تمت ترقية مكتبات واجهة مستخدم Qt إلى الإصدار 5.12 LTS
يتضمّن هذا التحديث التحسينات التالية من إصدار Qt 5.12 LTS:
- لتجنُّب حدوث أعطال في عملية فك ترميز
libpngفي Qt عند بدء تشغيل بعض صور النظام، يستخدم المحاكي الآن نسخة خاصة به منlibpngلفك ترميز صور PNG. - لحلّ المشاكل المتعلّقة ببعض عمليات تثبيت Linux التي تحتوي على إصدارات غير متوافقة من بعض المكتبات التي تعتمد على Qt، نضمّن الآن
libfreetypeوlibsoftoknوlibsqlite3وlibxkbcommonمع المحاكي. - يستخدم المحاكي الآن مكتبات النوافذ المجمّعة من رموز برمجية أصلية في النظام الأساسي للحصول على أبعاد الشاشة، بدلاً من استخدام مكتبات Qt التي كانت تعرض نتائج غير موثوقة.
عمليات التحسين التلقائي لوحدة المعالجة المركزية بعد إعادة التشغيل البارد
لمعالجة مشكلة استخدام وحدة المعالجة المركزية، ينفِّذ المحاكي الآن أوامر ADB التالية عند إعادة التشغيل البارد بعد تلقّي الإشارة boot complete:
adb shell settings put screen_off_timeout 214783647- يزيد هذا الأمر من مهلة إيقاف تشغيل الشاشة حتى يمكن استخدام المحاكي في وضع البطارية بدون شحن. في وضع البطارية، يتم تقليل استهلاك وحدة المعالجة المركزية في الخلفية بشكل كبير.
- في وضع الشحن عبر التيار المتردد، يمكن أن تستخدم عمليات GMSCore التي تعمل في الخلفية، مثل تحديثات التطبيقات، جميع نوى وحدة المعالجة المركزية في الجهاز، وبالتالي جهاز المستخدم، بدون أي تحذير.
adb shell pm revoke com.google.android.googlequicksearchbox android.permission.RECORD_AUDIO- يؤدي هذا الأمر إلى إبطال أذونات الميكروفون لتطبيق "بحث Google"، ما يقلّل بشكل كبير من استخدام وحدة المعالجة المركزية في الخلفية على الشاشة الرئيسية وفي مشغّل التطبيقات عندما يكون تطبيق "بحث Google" نشطًا.
- يتم تنفيذ هذا الأمر بالإضافة إلى السلوك التلقائي للمحاكي الذي يتمثل في إيقاف صوت المضيف. بالإضافة إلى ذلك، يوفّر هذا الإعداد تلقائيًا إجراءات الحدّ من استخدام وحدة المعالجة المركزية (CPU) الموضّحة في رصد الكلمات المحفّزة من الإصدار 28.0.23.
متغيّرات بيئة جديدة لتتبُّع الأداء
يمكنك الآن استخدام متغيّرَي بيئة جديدَين لتفعيل المراقبة التفصيلية لأداء المحاكي واستخدام الموارد.
SHOW_PERF_STATS=1- يتيح متغيّر البيئة هذا تتبُّع استخدام وحدة المعالجة المركزية وذاكرة الوصول العشوائي. يتيح تتبُّع استخدام ذاكرة الوصول العشوائي التمييز بين استخدام الرسومات وإجمالي الذاكرة المقيمة.
ANDROID_EMU_TRACING=1- يتيح متغير البيئة هذا إمكانية الطباعة في كل مرة تستغرق فيها عملية إدخال أو رسومات وقتًا طويلاً (أكثر من 1 ملي ثانية).
- نستخدم أيضًا متغيّر بيئة التشغيل هذا للمساعدة في تشخيص المشاكل التي واجهها مستخدمو Windows، والتي تتضمّن حدوث إيقاف مؤقت لعرض واجهة المستخدم (إطارات تم إسقاطها) أكثر من المشاكل التي يواجهها مستخدمو macOS أو Linux.
تحسينات عامة في Project Marble
يتضمّن هذا التحديث أيضًا التحسينات العامة التالية التي تشكّل جزءًا من مبادرة Project Marble:
- يمكنك الآن إيقاف جميع وحدات المعالجة المركزية الافتراضية مؤقتًا على المحاكي على الفور باستخدام أوامر وحدة التحكّم التالية:
adb emu avd pauseadb emu avd resume
- تم تقليل النفقات العامة لرسم OpenGL بشكل كبير. يؤدي هذا التحسين إلى تقليل استخدام وحدة المعالجة المركزية (CPU) أثناء تشغيل المحاكي للصور المتحركة.
- تمت استعادة إمكانية استخدام جهاز الشبكة الافتراضي e1000 في QEMU. يمكنك استخدام هذا الجهاز لإعداد المحاكي في بيئة شبكة مرتبطة. في بيئة شبكة مرتبطة، يظهر المحاكي على شبكة المضيف، وتظهر شبكة المضيف على المحاكي.
- يتم الآن استخدام ملفات ثنائية لنظام الإدخال والإخراج الأساسي (BIOS) مناسبة لإصدار QEMU 2.12 لبدء تشغيل المحاكي.
- تمت ترقية إصدار
ffmpegإلى 3.4.5 لترميز الفيديو وفك ترميزه. - تم تقليل الحمل الزائد بشكل كبير في عملية الإدخال والإخراج الخاصة بالحلقة الرئيسية في QEMU على نظام التشغيل macOS من خلال استبدال الحلقة الرئيسية المستندة إلى
select()بحلقة رئيسية مستندة إلىkqueue. - تمت زيادة حجم المخزن المؤقت لـ Logcat إلى 2 ميغابايت لمعالجة المشاكل المتعلّقة بنهاية الملف غير المتوقّعة والمتقطّعة عند تشغيل Logcat باستخدام المحاكي.
- يصدّر المحاكي الآن متغير البيئة
LC_ALL=Cتلقائيًا. يحلّ هذا التغيير المشاكل المتعلّقة بالأعطال وعدم التوافق التي تحدث عند تشغيل المحاكي بلغات مختلفة. - يمكنك الآن تتبُّع استخدام وحدة المعالجة المركزية وذاكرة الوصول العشوائي للمحاكي باستخدام إحصاءات الأداء التي يمكنك الوصول إليها من خلال عناصر التحكّم الموسّعة > الإعدادات > الإعدادات المتقدّمة > إحصاءات الأداء. استخدِم هذه الإحصاءات لتشخيص المشاكل بسرعة إذا بدا أنّ المحاكي يستخدم الكثير من وحدة المعالجة المركزية أو ذاكرة الوصول العشوائي.
- يستخدم
glReadPixels GL_IMPLEMENTATION_COLOR_READ_TYPEالآن نتيجة وحدة معالجة الرسومات (GPU) الخاصة بالجهاز المضيف بدلاً من نتيجة محاكية. يساعد هذا التغيير في حلّ المشاكل التي لا يتم فيها عرض الصور ومواد العرض بسبب التنسيق غير المناسب للقراءة. - تمت إضافة إمكانية استخدام إضافتَي OpenGL ES
GL_EXT_texture_format_BGRA8888وGL_APPLE_texture_format_BGRA8888إذا كان المضيف يتيح استخدامهما. - تمت إضافة المزيد من معلومات التشخيص إلى واجهة مستخدم Bugreport. بالإضافة إلى ذلك، يمكنك الوصول إلى تقارير الأخطاء من وحدة التحكّم باستخدام الأوامر التالية:
telnet localhost 5554avd bugreport
- في صور نظام Android Q، يزيد المحاكي الحد الأدنى لحجم ذاكرة الوصول العشوائي إلى 2 غيغابايت.
- تمت إضافة المزيد من التسجيل والطباعة عند تعذُّر تهيئة OpenGL أو برنامج Hypervisor.
- إذا تعذّر على المحاكي بدء مثيل
-read-onlyمتزامن لجهاز Android الافتراضي (AVD)، سيحاول المحاكي الآن إعادة تشغيل جهاز Android الافتراضي-read-only3 مرات أخرى على مدار 3 ثوانٍ. يزيد هذا التغيير من احتمالية تمكُّن المحاكي من تشغيل مثيلات-read-onlyمتزامنة لجهاز Android الافتراضي إذا لم يتم الانتهاء من تنظيف الملفات القديمة من مثيلات جهاز Android الافتراضي الأخرى القابلة للكتابة. - بالنسبة إلى صور النظام القادمة، يتيح المحاكي الآن استخدام الإصدار 2.0 من Hardware Composer. من المفترض أن يؤدي هذا التغيير إلى تقليل الحمل الزائد لبرنامج التشغيل عند تنفيذ معظم الرسوم المتحركة.
- يستند إصدار المحاكي الآن إلى CMake/Ninja.
- في واجهة مستخدم عناصر التحكّم الموسّعة للمحاكي، تمت استعادة خطوط الفواصل في جدول اختصارات لوحة المفاتيح.
- يمكن للمستخدمين الآن الموافقة على تزويد فريقنا بمقاييس استخدام وحدة المعالجة المركزية وذاكرة الوصول العشوائي على فترات زمنية مدتها 10 ثوانٍ. نستخدم هذه المقاييس لإثراء بياناتنا حول استخدام موارد المحاكي بحالات استخدام مختلفة من المستخدمين، ما يتيح لنا جعل المحاكي أكثر كفاءة واستجابة.
إصلاحات عامة في Project Marble
يتضمّن هذا التحديث أيضًا الإصلاحات العامة التالية التي تشكّل جزءًا من مبادرة Project Marble:
- تم إصلاح المشاكل المتعلقة بالارتعاش والإطارات غير الصحيحة التي كانت تظهر على الأنظمة التي تتضمّن وحدات معالجة الرسومات من Intel عند استخدام صور نظام Android Q.
- تم إصلاح المشاكل التي كانت تؤدي إلى عرض شاشة سوداء عند استخدام صور نظام Android Q مع تصميمات Pixel 2 XL (أو أي تصميم يتضمّن نتوءًا أو زوايا مستديرة).
- تم إصلاح مشكلة عدم ضبط خيار سطر الأوامر
-partition-sizeلحجم قسم البيانات. - تم إصلاح مشكلة تعذُّر تشغيل pulseaudio على محاكي Linx واستهلاك وحدة معالجة مركزية كاملة في بعض الحالات.
- تم إصلاح مشاكل الوصول إلى الذاكرة من خارج الحدود عند معالجة مواد العرض المضغوطة.
- تم إصلاح أخطاء GL التي حدثت على الجهاز المضيف في
glTexSubImage2Dعند تعديل بعض مخازن gralloc المؤقتة (بالتنسيق RGB 565 وRGB10A2 وRGB(A)16F). - تم إصلاح مشكلة في العرض في صور نظام Android Q مع لقطات شاشة حيث تم عرض شكل لوحة الإشعارات باستخدام إعداد غير مناسب لقاسم المثيل.
- تم إصلاح بعض المشاكل التي يصعب إعادة إنتاجها والمتعلّقة بتعطُّل التطبيق وتجمّده عند التشغيل، والتي حدثت بسبب فقدان Qt للإشارات أو بسبب حالات غير مستقرة وغير متسقة عند بدء التشغيل.
- تم إصلاح العديد من المشاكل المتعلقة بالتزامن. أصبح بإمكاننا الآن إنشاء محاكي Linux باستخدام ThreadSanitizer (TSAN)، ما يتيح لنا رصد الأخطاء التي يصعب إعادة إنتاجها.
- بالنسبة إلى مستخدمي Linux، تبيّن لنا أنّه في بعض نُوى المضيف، يمكن أن تحدث أخطاء في نواة Android الضيف وتخرج من KVM مع حدوث خطأ عام في الأجهزة. سيتوقف المحاكي الآن
abort()عند حدوث ذلك من أجل زيادة إمكانية تصحيح الأخطاء (في السابق، كان المحاكي يتوقف عن العمل فقط). - لمستخدمي Linux: لتسهيل عمليات إعداد التكامل المستمر، يمكنك استخدام خيار سطر الأوامر الجديد
-stdouterr-file <file-name>لإعادة توجيه كل منstdoutوstderrإلى ملف. - تم إصلاح المشكلة المتمثّلة في استخدام
SO_REUSEADDRبشكل غير صحيح. لمزيد من المعلومات، راجِع تفاصيل عملية الإيداع. - تم إصلاح مشكلة قديمة في محاكي Windows، وهي تعذُّر بدء العمليات الفرعية، مثل أوامر ADB، إذا كان اسم المستخدم يتضمّن مسافات.
- تم إصلاح مشكلة عدم تهيئة RCU في سلاسل HAXM vCPU. قد يؤدي هذا الإصلاح إلى حلّ بعض الأعطال وحالات التزامن.
- تم إصلاح عُطل حدث مع أنماط معيّنة من حفظ اللقطات وتحميلها من واجهة مستخدم اللقطات باستخدام صور نظام Android Q الحديثة.
- تم إصلاح مشكلة ظهور شاشة فارغة لكاميرا المشهد الافتراضي عند تهيئة المحاكي من لقطة شاشة إذا كان يتم تشغيل وحدة ماكرو للواقع المعزّز عند حفظ لقطة الشاشة هذه.
- تم إصلاح مشكلة ظهور شاشة سوداء عند تشغيل المحاكي على Linux لدى بعض المستخدمين الذين يستخدمون إعدادات سطح المكتب البعيد. ولتجنُّب ذلك، يضبط المحاكي الآن
MESA_RGB_VISUALبشكل صريح. لمزيد من المعلومات، يُرجى الاطّلاع على تفاصيل عملية الإيداع. - تم إصلاح مشكلة ظهور أزرار التدوير على أجهزة Android الافتراضية للتلفزيون.
- تم إصلاح مشكلة كانت تؤدي إلى ظهور نافذة عناصر التحكّم الموسّعة في كل مرة يتم فيها تدوير المحاكي، وذلك في حال ضبط المحاكي على أن يكون دائمًا في المقدمة.
ملفات الأجهزة القابلة للطي
يتضمّن المحاكي الآن ملفات شخصية للأجهزة القابلة للطي. لاستخدام ملفات تعريف الأجهزة الجديدة هذه، يجب استخدام الإصدار 10 من استوديو Android 3.5 Canary أو إصدار أحدث.
تتوفّر ملفّان شخصيان للأجهزة القابلة للطي يمكنك استخدامهما لإنشاء جهاز محاكاة Android:
- 7.3" قابل للطي: 1536x2152 عند الفتح، 4.6" 840x1960 عند الطي
- هاتف قابل للطي بحجم 8 بوصة: 2200x2480 عند الفتح، و6.6 بوصة 1480x2480 عند الطي
عند تشغيل المحاكي باستخدام أحد ملفات الأجهزة هذه، يمكنك طي الجهاز وفتحه باستخدام إجراءَي الطي والفتح في شريط أدوات المحاكي أو أوامر وحدة التحكّم أو اختصارات لوحة المفاتيح التالية:
- طيّ:
Ctrl + F(Command + Fعلى أجهزة macOS) - فتح:
Ctrl + U(Command + Uعلى أجهزة macOS)
وحدات ماكرو الواقع المعزّز
يتضمّن المحاكي الآن وحدات ماكرو للواقع المعزّز يمكن أن تساعدك في اختبار إجراءات الواقع المعزّز الشائعة. على سبيل المثال، يمكنك استخدام وحدة ماكرو لإعادة ضبط جميع مستشعرات الجهاز إلى حالتها التلقائية.
لمزيد من المعلومات، يُرجى الاطّلاع على اختبار إجراءات الواقع المعزّز الشائعة باستخدام وحدات الماكرو.
التوافق مع Vulkan (أنظمة التشغيل Windows وLinux)
يمكن لمستخدمي Windows وLinux الآن اختبار تطبيقات Vulkan باستخدام "محاكي Android" حتى Vulkan 1.1 عند استخدام صورة نظام متوافقة (الإصدار التجريبي 3 من Android Q أو إصدار أحدث من Vulkan 1.1، والإصدار التجريبي 2 من Android Q من أجل Vulkan 1.0) ووحدة معالجة الرسومات المضيفة المتوافقة (يشمل ذلك معظم وحدات معالجة الرسومات من Intel وNVIDIA وAMD منذ عام 2014 والإصدارات الأحدث).
لتفعيل إمكانية استخدام Vulkan، يجب إضافة علامات الميزات التالية إلى ملف ~/.android/advancedFeatures.ini (أنشئ الملف إذا لم يكن متوفّرًا):
Vulkan = onGLDirectMem = on
توفير الدعم الأولي لمطوّري ذاكرة القراءة فقط (ROM)
يمكن الآن لمطوّري ذاكرة القراءة فقط (ROM) الذين ينشئون إصدارات sdk_phone_x86 أو sdk_phone_x86_64 (الإصداران userdebug وeng) على فرع master من AOSP تشغيل محاكي متوافق مع Vulkan.
لا تزال هذه الميزة في المرحلة التجريبية وهي مخصّصة بشكل أساسي للمطوّرين الذين يعملون على صور النظام وبرامج التشغيل ومحرّكات الألعاب. ولا تزال العديد من الإضافات غير متوفّرة.
ومع ذلك، تتوافق الأجهزة مع ذاكرة HOST_COHERENT، ويجب أن تتمكّن الآن من تشغيل أمثلة البرنامج التعليمي لواجهة برمجة التطبيقات Vulkan.
إذا كنت تستخدم نظام التشغيل Linux، يمكنك تجربة ذلك باستخدام الأوامر التالية:
mkdir aosp-mastercd aosp-masterrepo init -u https://android.googlesource.com/platform/manifest -b master --depth=1repo sync -c -j12. build/envsetup.shlunch sdk_phone_x86_64-userdebugmake -j12emulator -no-snapshot -feature Vulkan,GLDirectMem
عرض Skia باستخدام Vulkan
تتوافق وحدات معالجة الرسومات من NVIDIA وAMD التي تتوافق مع Vulkan أيضًا مع إمكانية التشغيل التفاعلي بدون نسخ مع OpenGL من خلال الإضافة GL_EXT_memory_objects. يستفيد المحاكي من هذه الإمكانية لتوفير طريقة كاملة لعرض واجهة مستخدم Android باستخدام واجهات Skia Vulkan API.
إذا كان لديك وحدة معالجة الرسومات من NVIDIA أو AMD متوافقة مع Vulkan، استخدِم الأوامر التالية لاختبار عرض Skia باستخدام صورة نظام متوافقة (الإصدار التجريبي 3 من Android Q والإصدارات الأحدث):
adb shellsusetprop debug.hwui.renderer skiavkstopstart
توافُق macOS مع Vulkan
لا تزال إمكانية استخدام المحاكي على نظام التشغيل macOS تجريبية، ولكن يتضمّن المحاكي حاليًا واجهات برمجة التطبيقات Swiftshader وMoltenVK وlibportability (gfx-rs). يمكنك تجربة واجهات برمجة التطبيقات هذه من خلال ضبط متغيرات البيئة التالية:
- Swiftshader:
ANDROID_EMU_VK_ICD=swiftshader - MoltenVK:
ANDROID_EMU_VK_ICD=moltenvk - libportability:
ANDROID_EMU_VK_ICD=portability
المشاكل المعروفة
في بعض الأحيان، يتعذّر على HAXM ربط ذاكرة Vulkan المتسقة بالجهاز الافتراضي، ويتم إيقاف المحاكي. سيتم حلّ هذه المشكلة في تحديث HAXM القادم.
محاكي البث المباشر باستخدام gRPC (نظام التشغيل Linux)
نحاول دائمًا جعل المحاكي متعدد الاستخدامات قدر الإمكان من خلال السماح بعرض الرسومات على وحدة معالجة الرسومات المضيفة والتفاعل في أوسع نطاق من سياقات التشغيل. يواجه مستخدمو التكامل المستمر وسطح المكتب البعيد المشاكل التالية منذ فترة طويلة:
- يتضمّن إرسال أوامر الإدخال إلى المحاكي آليًا إما تنفيذ أوامر adb shell التي قد تستغرق وقتًا طويلاً، أو استخدام وحدة تحكّم telnet، وهي أسرع، ولكنها قد لا تعمل مع بعض إعدادات الشبكة.
- غالبًا ما يشغّل مستخدمو التكامل المستمر المحاكيات بدون واجهة مستخدم رسومية، ما قد يصعّب ملاحظة المشاكل التي تتطلّب أن تكون الشاشة مرئية أو تفاعلية.
- في كثير من الأحيان، لا يمكن لمستخدمي سطح المكتب البعيد التفاعل مع المحاكي عند استخدام عرض وحدة معالجة الرسومات على الجهاز المضيف، لأنّ عرض وحدة معالجة الرسومات غالبًا ما يكون مرتبطًا بالشاشات غير الافتراضية للجهاز المضيف.
لحلّ هذه المشكلة، يوفّر المحاكي الآن خدمة gRPC عند تشغيله على جهاز Linux. gRPC هو إطار عمل عام لإجراء استدعاء الإجراءات عن بُعد (RPC) عبر HTTP.
يكون خادم gRPC للمحاكي غير مفعّل تلقائيًا، ولكن يمكنك تفعيله باستخدام خيار سطر الأوامر التالي، حيث يمثّل <port> المنفذ الذي يجب أن يعرض المحاكي طلبات gRPC (عادةً ما يكون 5556):
-grpc <port>
بعد بدء تشغيل الخدمة، يمكن إصدار أوامر gRPC من العملاء. تتيح المجموعة الحالية من الأوامر إرسال أحداث الإدخال وتلقّي لقطات الشاشة. تساعد هذه الأوامر في حلّ المشاكل التالية:
- يمكن إرسال أوامر الإدخال إلى المحاكي مع الحد الأدنى من الحمل الزائد عبر HTTP. يتيح بروتوكول HTTP أيضًا إرسال الأوامر في إعدادات الشبكة الإضافية.
- يمكن إرسال أوامر لقطة الشاشة للاستعلام عن الشاشة الحالية، حتى إذا كان المحاكي يعمل بدون واجهة مستخدم رسومية. للتفاعل، يمكن أيضًا إرسال أحداث الإدخال إلى المحاكي.
- يمكن لمستخدمي الاتصال عن بعد بين أجهزة الكمبيوتر تشغيل المحاكي بلا واجهة مستخدم رسومية على الشاشة الرئيسية مع عرض سريع باستخدام وحدة معالجة رسومات، وذلك أثناء استخدام gRPC للحصول على لقطات شاشة وإرسال أحداث الإدخال للتفاعل مع المحاكي.
للحصول على قائمة كاملة بالأوامر المتاحة، يُرجى الاطّلاع على ملف protobuf هذا.
لمساعدتك في بدء استخدام gRPC، قدّمنا بعض العملاء النموذجيين الذين يمكنك الرجوع إليهم.
يتضمّن ذلك حاليًا النماذج التالية:
- خدمة مستندة إلى Go يمكن استخدامها للاستعلام عن حالات المحاكي.
- تطبيق React يوضّح التفاعل عن بُعد من خلال لقطة شاشة وطلبات إجراءات عن بُعد. يتطلّب هذا النموذج الإصدار 3.7.0 أو الإصدارات اللاحقة من protobuf.
- نموذج Python يستعلم عن إعدادات الجهاز الافتراضي للمحاكي ثم يرسل سلسلة من الأوامر.
28.0.25 (29 مارس 2019)
يتضمّن هذا التحديث التحسينات والإصلاحات التالية:
إنشاء محاكي بدون واجهة مستخدم رسومية
كان من الصعب إعداد المحاكي باستخدام Docker وغيرها من عمليات سير العمل المتكاملة المستمرة (CI) بسبب التوقّعات الضمنية بأنّ النظام يجب أن يكون قادرًا على توفير الدعم لـ Qt إلى جانب تبعيات المكتبة المشتركة (من بين مشاكل أخرى).
كخطوة أولى لمعالجة هذه المشكلة، طرحنا إصدارًا من مشغّل المحاكي يتضمّن ملفات QEMU التنفيذية التي لا تعتمد على Qt. على نظام التشغيل Linux، لا يزال هناك رابط يؤدي إلى libX11، ولكنّنا نأمل إزالته قريبًا أيضًا.
لاستخدام المحاكي بدون واجهة مستخدم رسومية، شغِّل المحاكي من سطر الأوامر كالمعتاد،
ولكن استبدِل استدعاء المحاكي الثنائي بـ emulator-headless. لمزيد من المعلومات، يُرجى الاطّلاع على ملاحظات إصدار Canary 28.1.8.
- تم إصلاح مشكلة الارتعاش وعرض الإطارات بشكل غير صحيح على وحدات معالجة الرسومات من Intel عند تشغيل صور نظام Android Q.
- تم إصلاح المشاكل التي كانت تؤدي إلى ظهور شاشة سوداء عند استخدام صور نظام Android Q مع مظاهر Pixel 2 XL.
- يتم الآن استخدام أحدث ملفات BIOS الثنائية لبدء المحاكي. يمكن أن يساعد هذا التغيير في تقليل أخطاء "طلب إيقاف وحدة المعالجة المركزية الافتراضية" التي تحدث أحيانًا عند تشغيل المحاكي على نظام التشغيل Windows.
- تم نقل إصلاح المشكلة"عرض غير صحيح عند استئناف صور نظام Android Q من لقطة" إلى إصدار أقدم.
- كان المستخدمون يواجهون مشاكل في المحاكيات"غير المصرح بها"
بسبب تغيير غير متوافق في ADB في الإصدار 28.0.2 من platform-tools. يمكنك الآن استخدام ADB بأمان من الإصدار 28.0.2 من حزمة platform-tools مع المحاكي. إذا كنت تواجه مشاكل في المحاكيات "غير المصرّح بها"، اتّبِع الخطوات التالية لتحديد المشاكل وحلّها:
- اخرج من جميع المحاكيات.
- احذف الملفين
~/.android/adbkeyو~/.android/adbkey.pub. - نفِّذ الأمر التالي:
adb kill-server - نفِّذ الأمر التالي:
adb devices - محو بيانات المحاكي.
- أعِد تشغيل المحاكي.
28.0.23 (29 يناير 2019)
يتضمّن هذا التحديث التحسينات والإصلاحات التالية:
يكون إدخال الصوت من المضيف غير مفعّل تلقائيًا
أوضح منشور حديث على Reddit أنّ نظام التشغيل Android الضيف سيستخدم دائمًا الصوت من ميكروفون المضيف، ما يسمح بتفعيل ميزة "Ok Google" بشكل غير متوقّع. نحن نعتذر عن هذا الخطأ وسنعمل مع فريق Android للتأكّد من إيقاف ميزة "التعرّف على الكلمات المحفّزة" في صورة النظام أيضًا.
ولحلّ هذه المشكلة، أجرينا التغييرات التالية:
- يتم الآن كتم صوت المضيف الفعلي تلقائيًا. عندما يستخدم الضيف الميكروفون، يتم نقل الصمت بدلاً من صوت المضيف.
- إذا أردت استخدام بيانات الصوت من الجهاز المضيف، يمكنك تفعيل هذا الخيار من خلال الانتقال إلى عناصر التحكّم الموسّعة > الميكروفون وتفعيل يستخدم الميكروفون الافتراضي إدخال الصوت من الجهاز المضيف. يتم إيقاف هذا الخيار تلقائيًا عند إعادة تشغيل المحاكي.
تعديلات على التحقيقات في استخدام وحدة المعالجة المركزية
أثناء تحقيقاتنا في Project Marble، لاحظنا أنّ الاستخدام المرتفع لوحدة المعالجة المركزية على المحاكي يندرج بشكل عام ضمن الفئات الثلاث التالية:
في وضع الخمول: صور التحديثات التلقائية للتطبيقات في "متجر Play"
تبيّن لنا أنّه يتم تحديث جميع التطبيقات المثبَّتة على فترات عشوائية، حتى عندما لا يكون المستخدم مسجّلاً الدخول. أثناء العملية، يرتفع معدّل استخدام وحدة المعالجة المركزية إلى عدد النوى مضروبًا في %100 (عادةً حوالي %400) في GMSCore وdex2oat. يمكنك الحدّ من هذه المشكلة من خلال إيقاف التحديثات التلقائية للتطبيقات في تطبيق "متجر Google Play".
في وضع الخمول: رصد الكلمة المفتاح
عندما تكون على الشاشة الرئيسية وبدون تشغيل أي تطبيق في المقدّمة، قد يكون هناك معدّل كبير لاستخدام وحدة المعالجة المركزية (حوالي% 25 مع ارتفاعات تصل إلى %50). ويحدث ذلك بسبب ميزة "رصد الكلمة المفتاح" التي ترسل طلبات ping باستمرار إلى الجهاز المضيف. لا يمكنك حلّ هذه المشكلة من خلال إيقاف إدخال الصوت من المضيف لأنّ تكلفة وحدة المعالجة المركزية (CPU) ناتجة بشكل أساسي عن الوقت الذي يستغرقه الصوت للوصول إلى الضيف من المضيف. ومع ذلك، يمكنك الحدّ من هذه المشكلة من خلال إلغاء أذونات الوصول إلى الميكروفون من تطبيق Google.
أثناء الاستخدام النشط، وأحيانًا في وضع الخمول: صور متحركة
المصدر الثالث لارتفاع معدّل استخدام وحدة المعالجة المركزية هو الصور المتحركة. لقد تبيّن لنا أنّه من خلال تحسين حزمة برنامج تشغيل الرسومات، يمكننا أيضًا تقليل استخدام وحدة المعالجة المركزية حتى عندما لا يكون المحاكي في وضع الخمول. سنطرح تحسينات على برامج تشغيل الرسومات بشكل تدريجي كجزء من "مشروع Marble".
28.0.22 (21 ديسمبر 2018)
يتضمّن هذا التحديث التحسينات والإصلاحات التالية:
- تم إصلاح مشكلة قديمة كانت تؤدي إلى إعادة تشغيل محاكي Mac أو حدوث خطأ في النواة عند حفظ Quickboot في بعض الإعدادات. (المشكلة 120951634)
- عند استخدام ملف تم ربطه كلقطة لذاكرة الوصول العشوائي، سيزيل المحاكي الآن ربط الملف بشكل صريح عند الخروج.
28.0.20 (11 كانون الأول/ديسمبر 2018)
يتضمّن هذا التحديث التحسينات والإصلاحات التالية:
- تم إصلاح مشكلة في نظام التشغيل Windows كانت تتسبّب في توقّف المحاكي عند تحميل اللقطة باستخدام طُرز معيّنة من وحدات معالجة الرسومات من Intel.
- تم إصلاح مشكلة كانت تؤدي إلى ظهور حالة جهاز
unauthorizedADB عند استخدام موقعANDROID_SDK_HOMEغير عادي. - تم إصلاح مشكلة في نظام التشغيل Windows تسبّبت في تعطُّل المحاكي عند تشغيل صور النظام مع إيقاف تسريع وحدة المعالجة المركزية.
- تم إصلاح مشكلة عرض المحاكي بشكل غير واضح. من المفترض أن تعمل ميزة تقليل معدّل نقل البيانات الآن.
- تم إصلاح مشكلة في الإصدار 10.14 من نظام التشغيل macOS والإصدارات الأحدث، حيث كان من الممكن أن يصبح عنصر التحكّم في مظهر الماوس الخاص بكاميرا المشهد الافتراضي حساسًا جدًا بسبب التفاعل مع إعدادات الأمان الجديدة لتسهيل الاستخدام.
- تم إصلاح خطأ في احتساب المنطقة الزمنية كان يمكن أن يؤدي إلى تغيير ساعة المحاكي بشكل متقطع.
- تم إصلاح أخطاء العرض في تطبيقات مختلفة تستخدم cocos2d وUnreal Engine.
- تمت إضافة إمكانية استخدام Wi-Fi peer-to-peer في المحاكي.
يمكن الآن لجهازَي محاكاة التواصل مع بعضهما البعض مباشرةً عبر شبكة Wi-Fi في حال استخدام أحدث صورة لنظام التشغيل Pie في "متجر Google Play". لاستخدام شبكة Wi-Fi من جهاز إلى جهاز، ابدأ تشغيل جهازَي محاكاة Android مع استخدام وسيطتَي
-wifi-server-portو-wifi-client-portنفسيهما:emulator @<server-avd-name> -wifi-server-port 9999emulator @<client-avd-name>-wifi-client-port 9999
- تمت إضافة دعم المزيد من كاميرات الويب على أجهزة Windows من خلال أخذ أي أحجام إطارات غير متوافقة وتغيير حجمها ديناميكيًا لتناسب إعدادات الكاميرا في نظام Android الضيف.
28.0.16 (تشرين الثاني/نوفمبر 2018)
يتضمّن هذا التحديث العديد من الميزات الجديدة والتحسينات على الميزات الحالية وإصلاحات للأخطاء.
استخدام الموارد
يستخدم المحاكي الآن ذاكرة وصول عشوائي (RAM) أقل بشكل عام، خاصةً عند استخدام صور نظام بمستوى واجهة برمجة تطبيقات 28 أو أعلى. تتضمّن صور النظام هذه تحسينات على استخدام الذاكرة لبرامج تشغيل الرسومات على الجهاز الظاهري.
بالإضافة إلى ذلك، حسّنّا أيضًا استخدام الموارد في المجالات التالية:
- تقليل استخدام ذاكرة المحاكي أثناء الاختبارات الطويلة إذا كنت لا تزال تواجه مشاكل في استخدام الذاكرة أثناء الاختبارات الطويلة، يُرجى إنشاء بطاقة مشكلة توضّح حالة الاستخدام في Issue Tracker.
- تقليل استخدام وحدة المعالجة المركزية (CPU) عند تشغيل التطبيقات التي تتضمّن صورًا متحركة
- تم إصلاح مشكلة تسريب سياق QEMU AIO على نظام التشغيل Windows.
تشغيل عدة مثيلات لجهاز محاكاة Android واحد في الوقت نفسه
يمكنك الآن تشغيل عدة مثيلات من محاكي Android نفسه في الوقت نفسه. تكون المثيلات التي يتم تشغيلها بعد المثيل الأول للقراءة فقط، ويتم تجاهل التغييرات التي يتم إجراؤها على القرص الظاهري للضيف عند الخروج.
لتشغيل عدة مثيلات من محاكي Android الافتراضي نفسه في الوقت نفسه، شغِّل أي مثيلات بعد المثيل الأول من سطر الأوامر باستخدام العلامة -read-only.
تتوفّر هذه الميزة من خلال نسخ ملفات QCOW2 المرتبطة بأجزاء صورة Android القابلة للكتابة. لمساعدتك في إدارة مساحة القرص، أضفنا أيضًا أداة سطر الأوامر qemu-img للسماح لك بتنفيذ عملية ما قبل الالتزام لملفات QCOW2 قبل تشغيل عدة أجهزة افتراضية.
بالإضافة إلى ذلك، عند استخدامها مع ميزة لقطات ذاكرة الوصول العشوائي (RAM) للضيف المستندة إلى الملفات ، تتشارك مثيلات متعدّدة من "جهاز Android الافتراضي" لقطة Quickboot الرئيسية لجهاز Android الافتراضي كمصدر مشترك لنسخ ذاكرة الوصول العشوائي (RAM) للضيف عند الكتابة. تعني هذه السمة أنّ الأجهزة الافتراضية تتشارك في الكثير من ذاكرة الوصول العشوائي. استخدِم هذه الميزة لإجراء اختبارات تتطلّب تشغيل أجهزة متعددة بالتوازي.
نقدّر ملاحظاتك حول حالات الاستخدام المحتملة التي تشكّل جزءًا من سير العمل التفاعلي أو سير عمل التكامل المستمر العادي. يُرجى إنشاء مشاكل أو التصويت عليها في Issue Tracker.
لقطات ذاكرة الوصول العشوائي (RAM) للضيف المستندة إلى الملفات
من خلال التخصيص المسبق لذاكرة الوصول العشوائي (RAM) الخاصة بالضيف وربطها كملف، يمكن للمحاكي الآن حفظ لقطات Quickboot أثناء وقت التشغيل، بدلاً من تنفيذ كل العمل عند الخروج. إذا كنت تواجه حاليًا أوقات حفظ طويلة عند إغلاق المحاكيات، فعِّل هذه الميزة لتحسين أداء ميزة Quickboot. يتم تلقائيًا حفظ لقطة Quickboot عند الخروج وإعادة تحميلها في كل مرة، مثل تعليق جهاز حقيقي وتنشيطه.
بما أنّه يتم الآن تلقائيًا حفظ ذاكرة الوصول العشوائي (RAM) الخاصة بنظام التشغيل Android للضيف، إذا أردت تحديد حالة جهاز وتحميلها بشكل متكرر، عليك إخبار المحاكي بتجاهل التغييرات بعد كل جلسة. يمكنك إجراء ذلك بالطرق التالية:
- استخدِم العلامتَين
-no-snapshot-saveأو-read-onlyعند تشغيل المحاكي من سطر الأوامر. - انتقِل إلى عناصر التحكّم الموسّعة > اللقطات > الإعدادات وغيِّر الخيار هل تريد الحفظ التلقائي للحالة الحالية في Quickboot؟ إلى لا.
- عليك إعادة تشغيل المحاكي بعد تحديد هذا الخيار. إذا كان المحاكي مضبوطًا على الحفظ التلقائي، يمكنك تنفيذ الأمر التالي لضبط نقطة حفظ:
بعد تنفيذ هذا الأمر، ستبقى لقطة Quickboot للمحاكي عند نقطة التحقّق هذه. نفِّذ الأمر نفسه مرة أخرى لتحميل المحاكي من نقطة التحقّق.adb emu avd snapshot remap 0
تعمل اللقطات التي يتم أخذها وتحميلها من خلال وظيفة واجهة مستخدم اللقطات كما كانت من قبل، بدون ربط الملفات.
بما أنّ هذا التغيير كبير في طريقة عمل Quickboot، يهمّنا معرفة رأيك حول ما إذا كان يحسّن أداء Quickboot وأنواع المشاكل التي تواجهها عند استخدامه. في حال حدوث مشاكل، يمكنك إيقاف هذه الميزة عن طريق إضافة السطر التالي إلى ملف ~/.android/advancedFeatures.ini:
QuickbootFileBacked = off
عند بدء المحاكي من لقطة (إما باستخدام خيار سطر الأوامر -snapshot أو التشغيل من لقطة في "مدير الأجهزة الافتراضية")، يوقف المحاكي كلاً من الحفظ التلقائي للقطات Quickboot وحفظ لقطات Quickboot عند الخروج. يقلّل ذلك من فرص الكتابة فوق لقطة Quickboot عن طريق الخطأ، ويتجنّب مسارات الرجوع البطيئة التي لا تستخدم لقطات Quickboot المستندة إلى الملفات.
QEMU 2.12
أعدنا ضبط إصدار QEMU الذي نستخدمه من QEMU 2.9 إلى QEMU 2.12. يتضمّن هذا التحديث التغييرات التالية على QEMU:
- https://wiki.qemu.org/ChangeLog/2.10
- https://wiki.qemu.org/ChangeLog/2.11
- https://wiki.qemu.org/ChangeLog/2.12
في ما يلي بعض التغييرات الملحوظة التي تؤثر في "محاكي Android":
- x86: يتيح
gdbstubالآن الوصول إلى سجلات SSE. - صور الأقراص: تمت إضافة ميزة قفل الصور وتفعيلها تلقائيًا. لا يمكن لعمليات QEMU المتعددة الكتابة إلى الصورة نفسها ما دام المضيف يتيح OFD أو قفل posix، ما لم يتم تحديد خيارات أخرى.
- يتيح
qemu-img: qemu-img resizeالتخصيص المسبق للأجزاء الجديدة من الصورة. - أصبح من الممكن الآن تقليل حجم ملفات QCOW2 في
qemuوqemu-img.
تسهيل الاستخدام
- تم إصلاح المشاكل المتعلّقة بقارئات الشاشة، كما تم تحسين توافق هذه الأدوات مع واجهة المستخدم الخاصة بميزتَي "تسجيل الشاشة" و"لقطة الشاشة".
- أصبح بإمكان المستخدمين المصابين بعمى الألوان الوصول بسهولة أكبر إلى رموز الإشعارات في ميزة "Quick Boot".
الرسومات
- تم إصلاح مشكلة الوصول إلى الذاكرة من خارج الحدود التي قد تحدث لمؤشرات مصفوفة الرؤوس في OpenGL ES.
- لم تكن بعض وحدات معالجة الرسومات القديمة متوافقة مع OpenGL 2.1 أو الإصدارات الأحدث (وهو الإصدار المطلوب)، أو كانت تواجه مشاكل أخرى في الموثوقية. وقد تتسبّب هذه المشاكل في تعطُّل المحاكي عند بدء تشغيله أو تجميده أو عدم إمكانية استخدامه مع إعدادات وحدة معالجة الرسومات التلقائية. ويبدّل المحاكي الآن تلقائيًا إلى برنامج العرض Swiftshader إذا رصد استخدام وحدات معالجة الرسومات هذه.
- تم إصلاح مشكلة تسبّبت في عدم نشر المحاكي لإطار المخزن المؤقت الصحيح إذا كان
FBO != 0مرتبطًا في وقتeglSwapBuffers. - تم إصلاح المشكلة التي كانت تتسبّب في ظهور شاشة Android الافتراضية في أعلى يسار الشاشة فقط. نعتقد أنّ السبب في ذلك هو الضبط غير الصحيح لمتغيرات بيئة Qt. يتجاهل المحاكي الآن جميع متغيرات البيئة ذات الصلة بتغيير حجم Qt.
- تم إصلاح المشكلة التي كانت تؤدي إلى تعطُّل المحاكي في بعض الحالات عند تحميل تطبيقات GLES1 من لقطة.
- تم إصلاح مشاكل التزامن في OpenGL وتشغيل سلاسل عرض قد تؤدي إلى تحرير مزدوج أو تلف البيانات.
- يتيح "محاكي Android" الآن استخدام نسيج مضغوط بتنسيق ASTC LDR
(
GL_KHR_texture_compression_astc_ldr) لصور النظام التي تستخدم المستوى 28 من واجهة برمجة التطبيقات أو مستوى أحدث. - من المفترض أن تتمكّن معظم وحدات معالجة الرسومات الحديثة الآن من تشغيل المحاكي مع تفعيل OpenGL ES 3.x تلقائيًا بدون استخدام علامة الميزة
GLESDynamicVersion. - تم إيقاف ميزة
-gpu guest(العرض البرمجي في الجهاز الظاهري) نهائيًا. يتم الآن تلقائيًا التبديل إلى استخدام Swiftshader في صور النظام التي تستهدف المستوى 28 من واجهة برمجة التطبيقات أو أعلى (-gpu swiftshader_indirect). - إذا تم تشغيل المحاكي من سطر الأوامر باستخدام العلامة
-no-window، سيكون برنامج العرض التلقائي هو Swiftshader.
الموقع الجغرافي
- يمكن للمحاكي الآن تعديل اتجاه الحركة بالإضافة إلى خطوط الطول والعرض. يعدّل مستشعر المغناطيسية الافتراضي نفسه بشكل ديناميكي ليطابق الشمال المغناطيسي، وذلك من خلال استنتاج الحركة عند تشغيل ملف GPX أو KML.
- يمكن الآن ضبط سرعة الجهاز في صفحة "الموقع الجغرافي".
- عند تشغيل ملف GPX أو KML، يتم ضبط السرعة تلقائيًا، ويتم ضبطها على صفر عند انتهاء التشغيل.
- لم يعُد الارتفاع محصورًا بين -1,000 و+10,000 متر.
- تم إصلاح مشكلة عدم تعديل الموقع الجغرافي الافتراضي لنظام تحديد المواقع العالمي (GPS) بشكل دوري ما لم يتم فتح نافذة "عناصر التحكّم الموسّعة" مرة واحدة على الأقل.
الكاميرا
على نظام التشغيل Windows، يتوافق المحاكي الآن مع المزيد من كاميرات الويب لأنّه يعيد ضبط حجم إطارات الكاميرا التي يتم عرضها من كاميرا الويب بشكل ديناميكي. تمنع هذه الميزة أيضًا حدوث أخطاء في عرض اللقطات تؤدي إلى توقّف المحاكي.
متجر Play
لحلّ المشاكل المتعلّقة بنفاد مساحة التخزين على القرص في صور "متجر Play"، يعيد المحاكي الآن تلقائيًا تغيير حجم قسم بيانات المستخدم إلى 6 غيغابايت عند التشغيل باستخدام جهاز Android الافتراضي الجديد الذي يتضمّن "متجر Play".
تحسينات وإصلاحات عامة في الجودة
- أبلغ بعض المستخدمين عن بطء أداء المحاكي. لقد حدّدنا سببًا محتملاً يتمثل في أنّ الدليل المؤقت للمحاكي يحتوي على عدد كبير جدًا من الملفات القديمة. كحلّ بديل، لم يعُد المحاكي يخزّن ملفات فحص نشاط ADB في هذا الدليل. ومع ذلك، قد يساعد أيضًا حذف محتوى هذا المجلد. يقع المجلد في أحد المواقع التالية،
حسب نظام التشغيل:
- Windows:
C:\Users\<username>\AppData\Local\Temp\AndroidEmulator\* - على أجهزة macOS أو Linux:
/tmp/android-<username>/*
- Windows:
- إذا تعذّر بدء المحاكي بسبب عدم توفّر ذاكرة وصول عشوائي (RAM) كافية، سيتم الآن عرض رسالة خطأ. إذا كنت تستخدم نظام التشغيل Windows ولاحظت توفّر ذاكرة وصول عشوائي (RAM) مجانية، ولكن لا يزال يتعذّر عليك بدء المحاكي، قد يكون تم تجاوز رسوم الالتزام. للحصول على مساعدة بشأن هذه المشكلة، راجِع صفحة تحديد المشاكل وحلّها في المحاكي.
- يتجاوز خيار سطر الأوامر
-sysdirالآن بشكل صحيح دليل صور النظام المستنتج. - يتيح المودم الافتراضي الآن طلب البحث
+MAIالخاص بمعلومات نشاط النموذج. - تم إصلاح مشاكل متعدّدة تتعلّق بتسرُّب الذاكرة وتلفها واستخدام وحدة المعالجة المركزية (CPU). إذا كنت تواجه أعطالاً أو تسريبًا للذاكرة أو استخدامًا عاليًا للموارد، يُرجى إنشاء مشكلة في Issue Tracker.
- تم إصلاح مشكلة ظهرت مجددًا على نظام التشغيل macOS 10.14، وهي أنّ استخدام سمّاعات رأس تعمل بالبلوتوث مع المحاكي يؤدي إلى خفض جودة الصوت على مستوى العالم. ولتجنُّب ذلك، يتجنّب المحاكي الآن استخدام صوت البلوتوث عند التشغيل على نظام التشغيل macOS. (المشكلة 37070892)
- تم إصلاح مشكلة في نظام التشغيل Windows كانت تؤدي إلى عدم ضبط المنطقة الزمنية بشكل صحيح في ساعة المحاكي.
- تم إصلاح مشكلة بطء المحاكي وتعليقه على أنظمة Linux التي تستخدم محركات أقراص ثابتة (HDD).
- تم إصلاح بعض تحذيرات التجميع التي قد تؤدي إلى تلف الحزمة على نظام التشغيل macOS.
- تم إصلاح المشاكل التي قد تؤدي إلى تقارير مضلِّلة عن التعليق.
- تم إصلاح مشكلة تتعلّق بإيقاف مجموعات سلاسل التعليمات التي قد تتسبّب في حدوث عطل إذا لم يتم إنشاء إحدى سلاسل التعليمات بنجاح.
- تم إصلاح مشكلة في نظام التشغيل macOS حيث أصبحت المؤقتات غير موثوقة، ما أدّى إلى حدوث تعليقات وسلوكيات غريبة أخرى. إذا واجهت مشاكل في تعليق المحاكي على نظام التشغيل macOS، يُرجى إنشاء مشكلة في Issue Tracker.
- تم إصلاح مشكلة كانت تؤدي إلى إيقاف واجهة المستخدم عند إغلاق المحاكي، ولكن بدون إغلاقه فعليًا.
- تم إصلاح المشاكل المتعلقة بالأعطال العرضية، بما في ذلك الإيقاف بسبب فتح عدد كبير جدًا من مثيلات
/dev/urandom. - تم إصلاح مشكلة كانت تتسبّب في تعذُّر بدء المحاكي بعد المرة الأولى في حال تم إنهاء تصحيح أخطاء Android (ADB) بالقوة.
- تمت إزالة إصدار MIPS. إذا كنت لا تزال بحاجة إلى MIPS، يُرجى إنشاء مشكلة في Issue Tracker.
- تم إصلاح مشكلة كانت تؤدي إلى تلف اتصالات ADB عند تحميل لقطة.
- تم إصلاح مشكلة ظهور صورة باهتة أو انتقال سريع خارج الشاشة لنافذة المحاكي عند استئناف لقطة شاشة كان فيها اتجاه الجهاز مختلفًا عن الاتجاه التلقائي لجهاز Android الافتراضي.
- تم إصلاح المشاكل المتعلقة بالأعطال عند حفظ اللقطات.
- في نظام التشغيل Linux، يمكن أن تتسبّب أنظمة ملفات btrfs في حدوث تباطؤ شديد لأنّ المحاكي يحفظ اللقطات تلقائيًا ويستخدم ميزة "النسخ عند الكتابة" لأجهزة الأقراص الافتراضية. ننصحك بتنظيف دليل
~/.android/avdوتنفيذ الأمر التالي على دليل~/.android/avdالفارغ: يؤدي ذلك إلى إنشاء لقطات جديدة في مجلد تكون فيه ميزة "النسخ عند الكتابة" غير مفعّلة.chattr +C
HAXM 7.3.2
نودّ الإشارة مجددًا إلى الإصدار 7.3.2 من HAXM لأنّه يجب تثبيته لكي تعمل صور النظام الحديثة بشكل سليم على المحاكي. من المفترض أن يكون الإصدار 7.3.2 من HAXM متاحًا في القناة الثابتة، ويمكن أيضًا تثبيته يدويًا من https://github.com/intel/haxm/releases.
في ما يلي بعض المشاكل التي تم حلّها في هذا الإصدار من HAXM:
- تم إصلاح الأعطال العشوائية لأنظمة التشغيل الضيف التي تستخدم نواة Linux حديثة (الإصدار 4.6 أو أحدث). على سبيل المثال، Ubuntu 18.04 (#39، #74).
- تم إصلاح خطأ في محاكي تعليمات x86 كان يمكن أن يؤدي إلى تعطُّل المضيف (#93).
إيقاف إصدارات Windows بسرعة 32 بت نهائيًا
بسبب انخفاض معدّل الاستخدام وارتفاع تكاليف الصيانة، نخطّط لإيقاف الإصدار 32 بت من "محاكي Android" الذي يعمل على نظام التشغيل Windows. سنطرح خطة انتقال قبل إيقاف الإصدار 32 بت من Android Emulator نهائيًا. مع ذلك، نسعى جاهدين إلى تلقّي أي ملاحظات أو استفسارات بشأن هذا التغيير المستقبلي.
يُرجى إعلامنا في Issue Tracker إذا كنت تعتمد حاليًا على الإصدار 32 بت من "محاكي Android" الذي يعمل على نظام التشغيل Windows، وإخبارنا بكيفية التعاون معك على أفضل وجه في المستقبل.
27.3.10 (أغسطس 2018)
يتضمّن هذا التحديث إصلاح الخطأ التالي:
إصلاح مشكلة إعداد حجم ذاكرة الوصول العشوائي
أبلغ بعض المستخدمين عن بطء أداء المحاكي. لقد حدّدنا أحد الأسباب المحتملة، وهو أنّه تم ضبط حجم ذاكرة الوصول العشوائي (RAM) لجهاز Android الافتراضي بشكل غير صحيح في ملف config.ini الخاص بالجهاز.
للتخفيف من حدة هذه المشكلة، يزيد المحاكي الحد الأدنى لمستوى ذاكرة الوصول العشوائي للصور التي تستخدم المستوى 26 من واجهة برمجة التطبيقات أو المستويات الأعلى إلى المستوى التلقائي في "استوديو Android" البالغ 1536 ميغابايت. إذا لم يعرض ملف config.ini لجهاز AVD قيمة hw.ramSize بالميغابايت، يُرجى إنشاء مشكلة في Issue Tracker.
يمكنك العثور على ملف config.ini في الموقع التالي:
~/.android/avd/<avdname>.avd/config.ini
27.3.9 (يوليو 2018)
يتضمّن هذا التحديث التحسينات وإصلاحات الأخطاء التالية:
رسائل خطأ محسَّنة لميزة Windows Hypervisor Platform
واجه بعض المستخدمين صعوبة في تحديد سبب تعذُّر بدء تشغيل Windows Hypervisor Platform
(WHPX) عند تفعيل أداة محاكاة WHPX. لمساعدتك في
تشخيص هذه المشاكل، أضفنا رسائل خطأ أكثر إفادة. يمكنك تفعيل رسائل الخطأ هذه من خلال تشغيل المحاكي من سطر الأوامر باستخدام العلامة -verbose.
إصلاحات عامة
- تم إصلاح أخطاء OpenGL التي تحدث عند تحميل لقطة في تطبيق "الكاميرا".
27.3.8 (يوليو 2018)
يتضمّن هذا التحديث العديد من الميزات الجديدة والتحسينات على الميزات الحالية وإصلاحات للأخطاء.
اللقطات
يمكنك الآن حفظ لقطات متعددة من "جهاز Android الافتراضي" لإعداد جهاز معيّن واختيار اللقطة المحفوظة التي تريد تحميلها عند بدء المحاكي.
بدءًا من الإصدار 3.2 Canary 13 من استوديو Android، يتضمّن كل إعداد جهاز عنصر تحكّم في الإعدادات المتقدّمة ضمن مربّع الحوار "إعداد الجهاز الافتراضي" يمكنك من خلاله تحديد لقطة AVD التي سيتم تحميلها عند بدء تشغيل AVD.
لاستيعاب هذا التوسّع في ميزات اللقطات، أضفنا فئة اللقطات إلى مربّع الحوار عناصر التحكّم الموسّعة. تحتوي هذه اللوحة الجديدة على عناصر تحكّم لحفظ لقطات AVD وتحميلها، بما في ذلك عناصر التحكّم لحفظ لقطة التشغيل السريع وتحميلها التي كانت سابقًا في لوحة الإعدادات.
يمكنك تعديل اسم ووصف كل لقطة محفوظة.
لمزيد من التفاصيل، يُرجى الاطّلاع على اللقطات.
HAXM 7.2.0
يتوفّر الإصدار 7.2.0 من HAXM الآن في جميع القنوات.
يتضمّن هذا التحديث إصلاحات للأخطاء وتحسينات على مستوى التوافق مع كميات كبيرة من ذاكرة الوصول العشوائي. بالإضافة إلى ذلك، مع هذا التحديث لـ HAXM والإصدار 27.3 من المحاكي والإصدارات الأحدث، يتم تحميل محتويات اللقطات إلى ذاكرة الوصول العشوائي عند الطلب بدلاً من تحميل اللقطة بأكملها عند بدء تشغيل الجهاز الافتراضي. من المفترض أن يؤدي هذا التغيير إلى تقليل الوقت اللازم لتحميل لقطة بشكل كبير.
لمزيد من التفاصيل، يُرجى الاطّلاع على ضبط تسريع الآلة الافتراضية.
27.2.9 (مايو 2018)
يتضمّن هذا التحديث العديد من الميزات الجديدة والتحسينات على الميزات الحالية وإصلاحات للأخطاء.
تسجيل الشاشة
يمكنك الآن تسجيل فيديو وصوت من "محاكي Android" وحفظ التسجيل في ملف WebM أو ملف GIF متحرك.
تتوفّر عناصر التحكّم في تسجيل الشاشة في علامة التبويب تسجيل الشاشة ضمن نافذة عناصر التحكّم الموسّعة.
ملاحظة: يمكنك أيضًا فتح عناصر التحكّم في تسجيل الشاشة من خلال الضغط على Control + Shift + R (أو Command + Shift + R على جهاز Mac).
لبدء تسجيل الشاشة، انقر على الزر بدء التسجيل في علامة التبويب تسجيل الشاشة. لإيقاف التسجيل، انقر على إيقاف التسجيل.
تظهر عناصر التحكّم في تشغيل الفيديو المسجّل وحفظه في أسفل علامة التبويب تسجيل الشاشة. لحفظ الفيديو، اختَر WebM أو GIF من القائمة في أسفل علامة التبويب وانقر على حفظ.
يمكنك أيضًا تسجيل وحفظ تسجيل للشاشة من المحاكي باستخدام الأمر التالي في سطر الأوامر:
adb emu screenrecord start --time-limit 10 [path to save video]/sample_video.webm
لقطات الشاشة
يمكنك التقاط لقطات شاشة من سطر الأوامر باستخدام أي من الأوامر التالية:
screenrecord screenshot [destination-directory]adb emu screenrecord screenshot [destination-directory]
يتم حفظ لقطات الشاشة بتنسيق PNG.
كاميرا المشهد الافتراضي وARCore
أصبح تطوير تطبيقات الواقع المعزّز (AR) واختبارها باستخدام ARCore أسهل من أي وقت مضى بفضل كاميرا المشهد الافتراضي الجديدة التي تتيح لك تجربة الواقع المعزّز في بيئة افتراضية.
للحصول على معلومات حول استخدام كاميرا المشهد الافتراضي في المحاكي، يُرجى الاطّلاع على تشغيل تطبيقات الواقع المعزّز في "محاكي Android".
صور "متجر Google Play" على جهاز Pixel
تم الآن تفعيل "متجر Google Play" لصور أجهزة Pixel وPixel 2. يظهر ذلك في أداة إدارة أجهزة Android الافتراضية في "استوديو Android" 3.2 والإصدارات الأحدث مع شعار Google Play في عمود متجر Google Play. تحتوي المحاكيات الافتراضية التي تم تفعيل "متجر Google Play" عليها على علامة التبويب Google Play في مربّع الحوار عناصر التحكّم الموسّعة، والتي توفّر زرًا مناسبًا لتحديث "خدمات Google Play" على الجهاز.
اللقطات
يمكنك الآن تحميل لقطة Quick Boot بدون إعادة تشغيل المحاكي. لتحميل لقطة، افتح نافذة عناصر التحكّم الموسّعة وانتقِل إلى صفحة الإعدادات وانقر على الزر تحميل الآن.
أجرينا العديد من التحسينات على عملية تحميل اللقطات وحفظها بهدف تحسين كفاءة استخدام الموارد وتقليل الوقت الذي تستغرقه كل عملية. إذا استمرت المشكلة، يُرجى إبلاغنا عنها مع تقديم تفاصيل حول وحدة المعالجة المركزية وذاكرة الوصول العشوائي وإعدادات أي برامج مكافحة فيروسات أو جدار حماية أو برامج أمان أخرى قيد التشغيل.
العرض باستخدام Skia
عند استخدام صور للإصدار 27 من واجهة برمجة التطبيقات أو الإصدارات الأحدث، يمكن للمحاكي عرض واجهة مستخدم Android باستخدام Skia، ما يتيح عرضًا أكثر سلاسة وفعالية.
في الوقت الحالي، يتطلّب استخدام Skia تفعيلها بشكل صريح.
لتفعيل عرض Skia، استخدِم الأوامر التالية في adb shell:
su setprop debug.hwui.renderer skiagl stop start
الكاميرا
على أجهزة Windows، يستخدم "محاكي Android" الآن Media Foundation كبرنامج الخلفية لكاميرا الويب، ما يؤدي إلى تحسين الأداء وعدد اللقطات في الثانية بشكل كبير عند تسجيل الفيديو باستخدام كاميرا الويب، وبدقة تصل إلى 720 بكسل و30 لقطة في الثانية.
على أجهزة Mac، يمكنك الآن استخدام webcam0 وwebcam1 معًا.
متنوعة
تم تغيير خيار سطر الأوامر -phone-number-prefix إلى -phone-number [number]، ما يتيح ضبط رقم الهاتف الكامل.
يمكنك الآن استخدام عناوين الرسائل القصيرة الأبجدية الرقمية.
الإصلاحات
- تم الآن إنشاء إصدار Linux من "محاكي Android" باستخدام مجموعة أدوات حديثة من Clang C++. يحلّ هذا التغيير مشكلة تعذُّر بدء المحاكي بسبب أخطاء libGL وlibstdc++.
- تم إصلاح العديد من أسباب الأعطال والتعليق.
- لتجنُّب الأعطال والتعليق الناتجَين عن عدم توفّر مساحة كافية على القرص، يتحقّق المحاكي الآن من توفّر مساحة كافية على القرص عند بدء التشغيل، ولن يبدأ إلا إذا توفّرت مساحة خالية تبلغ 2 غيغابايت على الأقل.
- تم إصلاح مشكلة كانت تمنع عرض بعض ألعاب Unity.
- تم إصلاح مشكلة نظام أسماء النطاقات (DNS) التي كانت تتسبّب في تعذُّر اتصال المحاكي بالشبكة.
- تم إصلاح مشكلة كانت تتسبّب في عدم عمل التغييرات التي يتم إجراؤها على مساحة التخزين الداخلية المخصّصة لجهاز Android الافتراضي (AVD) من خلال مربّع الحوار "إعدادات الجهاز الافتراضي".
- تم إصلاح مشكلة إنشاء العديد من عمليات adb وعدم إيقافها بشكل صحيح.
- تم إصلاح مشكلة كانت تؤدي إلى عدم استجابة أزرار التدوير وأجزاء أخرى من واجهة المستخدم ما لم تكن نافذة "عناصر التحكّم الموسّعة" مفتوحة.
- تم إصلاح مشكلة كانت تتسبّب في عدم عمل وظيفتَي النسخ واللصق من الجهاز المضيف إلا بعد فتح مربع الحوار "عناصر التحكّم الموسّعة" مرة واحدة على الأقل.
- تم تعديل مستطيل تغيير الحجم في المحاكي بدون إطار ليتوافق بشكل أفضل مع المظهر المرئي للمحاكي.
- تم الآن إيقاف الهاتف والرسائل القصيرة SMS بشكل صحيح عند تفعيل "وضع الطيران".
- تم إصلاح مشكلة تسببت في إيقاف وظائف الرسائل القصيرة والشبكة الخلوية بعد تحميل لقطة.
- لن تتلقّى بعد الآن رسائل تحذيرية خاطئة تقول
“Unable to open... \pstore.bin. Permission denied.” - تم إصلاح مشكلة كانت تمنع إعادة ضبط موضع محاكي Android على بعض شاشات Mac.
- تم إصلاح المشاكل المتعلّقة بظهور وميض وشاشات فارغة على أجهزة كمبيوتر MacBook Pro الأحدث عند تشغيل أجهزة محاكاة Android مزوّدة بمظاهر Pixel 2 XL.
- تم إصلاح المشاكل المتعلّقة بالشاشات الفارغة عند التبديل إلى وضع التكبير أثناء تشغيل محاكي بدون إطار.
- تم إصلاح مشكلة كانت تؤدي إلى عدم مزامنة محتوى الجهاز الظاهري ومحتوى المحاكي عند التكبير.
إذا استمرّت المشاكل في التعليق أو عدم الاستقرار، يُرجى إبلاغنا بها.
27.1.12 (آذار/مارس 2018)
يتضمّن هذا التحديث إصلاحات للمشاكل التالية:
- انخفاض جودة الصوت عبر البلوتوث بعد بدء المحاكي (المشكلة 37095756)
- تم إرسال المواقع الجغرافية التي تم إرسالها إلى محاكي واحد إلى جميع المحاكيات. (المشكلة 73450633)
- تم تجاهل الموقع الجغرافي لنظام تحديد المواقع العالمي (GPS) الذي تم ضبطه باستخدام وحدة التحكّم، واستخدام القيم التي تم ضبطها باستخدام عناصر التحكّم الموسّعة > الموقع الجغرافي في واجهة المستخدم الرسومية. (المشكلة 73471760)
إذا استمرّت المشاكل في التعليق أو عدم الاستقرار، يُرجى إبلاغنا بها.
باستخدام هذا التحديث وصورة نظام حالية وإصدار مبكر حصري من "استوديو Android"، يمكنك استخدام Android Emulator لتشغيل تطبيقات الواقع المعزّز التي تم إنشاؤها باستخدام ARCore. للاطّلاع على المتطلبات والتعليمات المفصّلة، يُرجى الرجوع إلى مقالة تشغيل تطبيقات الواقع المعزّز في "محاكي Android".
27.1.10 (فبراير 2018)
درجة دقة التقاط الصور بالكاميرا
يمكن الآن التقاط لقطات بدقة 720 بكسل من كاميرا ويب خارجية.
للعمل مع صور نظام Android 8.1 (المستوى 27 من واجهة برمجة التطبيقات) والإصدارات الأحدث، يجب أن تكون أي كاميرا ويب خارجية متصلة قادرة على التقاط لقطات بدقة 720 بكسل.
الإصلاحات
- تم إصلاح مشكلة كانت تؤدي أحيانًا إلى عرض صورة مشوّهة أو خضراء بالكامل عند التقاط المحتوى من كاميرا الويب.
- تم إصلاح المشكلة التي كانت تتسبب في ظهور الرسالة التالية حتى في حال عدم حدوث تعليق فعلي: "محاكي: خطأ: تم رصد سلسلة تعليمات معلقة 'حلقة معالجة أحداث Qt'. لم يتم تلقّي أي ردّ خلال 15000 ملي ثانية".
إذا استمرّت المشاكل في التعليق أو عدم الاستقرار، يُرجى إبلاغنا بها.
27.1.7 (فبراير 2018)
نافذة المحاكي بدون إطار:
يتم الآن عرض المحاكيات التي تحتوي على ملفات تصميم الأجهزة تلقائيًا بدون إطار نافذة محيط. لعرض إطار النافذة المحيطة، فعِّل الخيار عرض إطار النافذة حول الجهاز في لوحة "الإعدادات" ضمن نافذة عناصر التحكّم الموسّعة.
تحسينات على Quick Boot لجعل العمل مع لقطات AVD أكثر فعالية:
- يمكنك حفظ لقطة من جهاز Android الافتراضي في أي وقت باستخدام الزر حفظ الآن في لوحة الإعدادات ضمن مربّع الحوار عناصر التحكّم الموسّعة.
- يقلّل المحاكي من الوقت المستغرَق لحفظ لقطة في العديد من الحالات من خلال حفظ الفرق بين الحالة الحالية واللقطة المحفوظة سابقًا فقط.
لمزيد من التفاصيل، يُرجى الاطّلاع على مستندات Quick Boot.
تم تعديل المحاكي لاستخدام QEMU 2.9.
تشمل بعض التحسينات البارزة ما يلي:
- تحسين عمليات الإدخال والإخراج وإغلاق سلاسل عمليات الإدخال والإخراج بدقة أكبر لتحقيق أداء أفضل
- تم إصلاح الأخطاء منذ الإصدار 2.8 من QEMU (الإصدار 26.1.4).
- تنفيذ جديد للواجهة الخلفية HAXM
يمكنك الاطّلاع على القائمة الكاملة بالتغييرات في سجلّ التغييرات في QEMU 2.9.
تنفيذ Swiftshader المتوافق مع OpenGL ES 3.0:
يتوافق برنامج العرض Swiftshader في المحاكي الآن بشكل كامل مع OpenGL ES 3.0. للحصول على تفاصيل حول أداة العرض Swiftshader، يُرجى الاطّلاع على القسم الإعدادات > الإعدادات المتقدّمة في عناصر التحكّم الموسّعة.
الإصلاحات
- تم إصلاح مشكلة عدم عمل ميزة مشاركة الحافظة إلا بعد إيقاف الخيار تفعيل مشاركة الحافظة ثم إعادة تفعيله.
- تم إصلاح مشكلة التعليق عند استخدام الخلفية النهائية للعرض Swiftshader مع أجهزة AVD منخفضة الدقة.
27.0.5 (يناير 2018)
تم الآن إيقاف ANGLE تلقائيًا لعرض المحتوى على أجهزة Windows.
إذا كان ANGLE يعمل بشكل أفضل بالنسبة إليك، يمكنك إعادة تفعيله باستخدام علامة
-gpu angle_indirectفي سطر الأوامر. أو افتح نافذة "عناصر التحكّم الموسّعة"، وانتقِل إلى الإعدادات > الإعدادات المتقدّمة، ثم اختَر ANGLE D3D11 لإعداد عارض OpenGL ES.تم إصلاح المشكلة التي لا تؤدي فيها الضغط على Shift+B إلى كتابة الحرف B الكبير.
27.0.2 (ديسمبر 2017)
توفر ميزة Quick Boot الجديدة أوقات بدء أسرع للمحاكي، وذلك استنادًا إلى لقطة من مثيل جهاز Android الافتراضي.
يتم تفعيل ميزة Quick Boot تلقائيًا لجميع الأجهزة الافتراضية التي تعمل بنظام التشغيل Android. على الرغم من أنّ تشغيل جهاز AVD للمرة الأولى يتطلّب إجراء إعادة تشغيل باردة (تمامًا مثل تشغيل الجهاز)، فإنّ جميع عمليات التشغيل اللاحقة تكون سريعة ويتم استعادة النظام إلى الحالة التي أغلقت فيها المحاكي (على غرار تنبيه الجهاز).
إذا أردت التحكّم في وقت حفظ المحاكي للّقطة، افتح نافذة "عناصر التحكّم الموسّعة" في المحاكي وانقر على الإعدادات. يمكنك هنا اختيار أحد الإعدادات التالية لخيار حفظ حالة التشغيل السريع عند الخروج:
- نعم: يتم دائمًا حفظ لقطة "التشغيل السريع" عند إغلاق المحاكي. وهذا هو الخيار التلقائي.
- لا: عدم حفظ لقطة التشغيل السريع مطلقًا، وإجراء عملية إعادة تشغيل باردة دائمًا
- السؤال: يُطلب منك تحديد ما إذا كنت تريد حفظ لقطة سريعة لحالة الجهاز عند إغلاق المحاكي أم لا.
لا ينطبق اختيارك إلا على محاكي Android المفتوح حاليًا.
لمزيد من المعلومات، يُرجى الاطّلاع على مستندات Quick Boot.
تمت إضافة إمكانية استخدام OpenGL ES 3 على أجهزة Mac (لصور النظام التي تستخدم مستوى واجهة برمجة التطبيقات 24 والإصدارات الأحدث، وواجهات Google API، وواجهة التطبيق الثنائية x86).
لتحقيق ثبات إضافي في تطبيقات OpenGL ES 2+، يستخدم المحاكي الآن ملف OpenGL الأساسي إذا كان متاحًا.
خيارات جديدة للعرض باستخدام Swiftshader / ANGLE:
-
-gpu swiftshader_indirect: إصدار أسرع وأكثر ثباتًا من Swiftshader يتوافق مع ميزة "Quick Boot". -gpu angle_indirect(في نظام التشغيل Windows فقط): إصدار أكثر استقرارًا من ANGLE D3D يعمل أيضًا مع ميزة "التشغيل السريع".
تم إيقاف الخيارَين القديمَين
-gpu swiftshaderو-gpu angleنهائيًا. في نافذة "عناصر التحكّم الموسّعة"، يستخدم الخياران "SwiftShader" و"ANGLE" لإعداد برنامج العرض OpenGL ES في الإعدادات > الإعدادات المتقدّمة الآن صيغ*_indirect.-
إصلاحات أخطاء أخرى متنوّعة.
26.1.4 (أغسطس 2017)
هذا إصدار ثانوي يتضمّن إصلاحات للأخطاء والتحسينات التالية على إعدادات وحدة معالجة الرسومات:
- تفعيل صورة بدء التشغيل عند استخدام عارض ANGLE
- إيقاف GLES3 عند التشغيل على عارض ANGLE
26.1.3 (أغسطس 2017)
هذا إصدار ثانوي يتضمّن إصلاحات للأخطاء وتحسينات في الأداء وتغييرات بسيطة في الميزات.
- يجب استخدام هذا الإصدار الآن لاستخدام أحدث صور نظام Android 8.0.
وهي متوافقة مع Treble،
وتتضمّن أقسام
vendor.imgمنفصلة. - يتوفّر الآن الإصدار الجديد 6.2.0 من HAXM (يمكنك التحقّق من ذلك في أداة SDK Manager) ويتضمّن التحديثات التالية:
- تحسين استخدام الذاكرة لم يعُد الحد الأقصى لمجموعة العمل من الذاكرة المثبّتة بواسطة HAXM يساوي حجم ذاكرة الوصول العشوائي (RAM) لجهاز Android الافتراضي (AVD)، بل يتم تقسيم الذاكرة إلى صفحات عند الطلب. من المفترض أن يساعد ذلك في تشغيل المحاكي بشكل أكثر موثوقية على الأجهزة التي تتضمّن مقدارًا أقل من ذاكرة الوصول العشوائي.
- يمكن الآن تشغيل المحاكي الذي يتضمّن HAXM 6.2.0 بشكل أسرع على نظام التشغيل macOS، وذلك من خلال تخطّي مرحلة الإعداد الطويلة.
- تحسينات على إعدادات وحدة معالجة الرسومات
- تم إصلاح المشاكل المتعلّقة بالشاشة السوداء عند بدء التشغيل عند إجراء عرض للبرامج على جانب الضيف من خلال الرجوع إلى عرض البرامج على جانب المضيف باستخدام Swiftshader. يجب أن تتضمّن أحدث مراجعات صور النظام لمستويات واجهة برمجة التطبيقات من 19 إلى 25 مع واجهات برمجة تطبيقات Google عملية عرض صحيحة على جانب الضيف.
- تم إصلاح مشكلة تم فيها التبديل إلى برنامج العرض البرمجي في المحاكي
بسبب رصد وحدات معالجة رسومات Intel قديمة، ولكن كان المحاكي
يعمل في الواقع على وحدة معالجة رسومات منفصلة. يتم تحديد وحدات معالجة الرسومات التي سيتم التبديل إلى استخدام ANGLE أو Swiftshader في العرض على النحو التالي:
- تواجه وحدات معالجة الرسومات المدمجة (iGPU) القديمة من Intel مشاكل في برامج التشغيل على كل من OpenGL وANGLE D3D. سيستخدم المستخدمون الذين لديهم معالج رسومات Intel HD Graphics 3xxx والإصدارات الأقدم Swiftshader.
- أبلغ بعض المستخدمين عن تعذُّر استخدام صور بمستوى واجهة برمجة التطبيقات 25 بسبب خطأ يؤدي إلى ظهور الرسالة "يتوقف تطبيق Pixel Launcher باستمرار". يبدو أنّ هذه المشكلة مرتبطة ببرنامج تشغيل في بعض طُرز Intel HD 4xxx. لذا، سيتم التبديل إلى استخدام ANGLE تلقائيًا.
- للحصول على أفضل النتائج عند محاكاة وحدة معالجة الرسومات، ننصحك باستخدام وحدة معالجة رسومات منفصلة من NVIDIA أو AMD، أو وحدة معالجة رسومات أحدث من Intel (Iris أو HD 5xxx أو HD 5xx/6xx).
- تم إصلاح مشكلة تعذُّر بدء المحاكي (تعذُّر إعداد محاكاة OpenGL) إذا تم إعداد الجهاز الافتراضي الذي يعمل بنظام التشغيل Android باستخدام
hw.gpu.mode=hostوتم تشغيل المحاكي في برنامج سطح مكتب بعيد. - تم توضيح إعدادات "مستوى واجهة برمجة تطبيقات OpenGL ES (يتطلّب إعادة التشغيل)"، وتمت إضافة خيار للرجوع من OpenGL ES 3 إلى OpenGL ES 2 في حال مواجهة مشاكل أو الحاجة إلى الاختبار على مستويات أقل من واجهة برمجة تطبيقات OpenGL ES.
- تم إيقاف عارض Mesa نهائيًا، وسيتم الآن التبديل تلقائيًا إلى استخدام Swiftshader على المضيف في
hw.gpu.mode=mesa.
- تحسينات على نظام التشغيل macOS:
- يتوافق المحاكي الآن تمامًا مع نظام التشغيل macOS 10.13 High Sierra من خلال Hypervisor.Framework أو HAXM 6.2.0.
- يتم الآن تفعيل Hypervisor.framework تلقائيًا على أجهزة macOS لصور x86 ذات 32 بت، وذلك لتحسين الأداء والتوافق مع macOS. إذا واجهت مشاكل في هذا الملف تحديدًا، يُرجى تسجيل تقرير خطأ وإضافة
HVF = offإلى~/.android/advancedFeatures.ini(أنشئ هذا الملف إذا لم يكن متوفّرًا). - تم إصلاح المشاكل المتعلقة بعدم توفّر اتصال بالإنترنت أو تعذُّر ربط أداة تصحيح الأخطاء أثناء استخدام Hypervisor.framework.
- لتحسين توافق عملية التقاط الصور بالكاميرا وأدائها، تم استبدال عملية التقاط الصور بالكاميرا المستندة إلى QTKit بعملية مخزّنة مؤقتًا مستندة إلى AVFoundation.
- تمت إضافة إمكانية استخدام شبكة Wi-Fi في بعض صور النظام (مستوى واجهة برمجة التطبيقات 25 فقط في الوقت الحالي).
تتوفّر نقطة وصول باسم "AndroidWifi" ويتصل بها جهاز Android تلقائيًا. يمكن إيقاف دعم شبكة Wi-Fi من خلال تشغيل المحاكي باستخدام مَعلمة سطر الأوامر
-feature -Wifi. - أشار بعض المستخدمين إلى أنّ صور نظام "متجر Google Play" ذات الحجم الثابت لا تتضمّن مساحة تخزين كافية. لذلك، رفعنا الحد الأقصى للحجم إلى 2 غيغابايت تلقائيًا (بدلاً من 800 ميغابايت).
- تمت إضافة اختصار لوحة مفاتيح (Ctrl+Shift+U) لفتح صفحة واجهة مستخدم الإبلاغ عن الأخطاء مباشرةً من صفحة الإعدادات.
- تم إصلاح مشكلة كانت تؤدي إلى تعذُّر تشغيل المحاكي إذا تم ضبط أكثر من نواة واحدة عند استخدام وحدة معالجة مركزية قديمة مزوّدة بتقنية Intel x86 EPT ولكن بدون UG.
- تم إصلاح مشكلة عدم رصد HyperV بشكل صحيح إذا كان المحاكي يعمل في برنامج Xen Hypervisor.
- تم إصلاح مشكلة كانت تؤدي إلى تعطُّل المحاكي عند بدء التشغيل في بعض إعدادات Linux.
26.1.2 (يوليو 2017)
يتضمّن هذا الإصدار ميزات جديدة وتحسينات في الأداء.
تمت إضافة إمكانية تحديد إعدادات مخصّصة لخادم وكيل HTTP في عناصر التحكّم الموسّعة (انقر على المزيد
، ثم على الإعدادات والخادم الوكيل). يستخدم المحاكي تلقائيًا إعدادات خادم وكيل HTTP في Android Studio، ولكن تتيح لك هذه الشاشة تحديد إعدادات خادم وكيل يدوي.
تمت إضافة إمكانية استخدام VNC لوحدة معالجة الرسومات في "وضع الضيف"، ما يتيح عرض المحاكي والتحكّم فيه عن بُعد. على سبيل المثال، يمكنك تشغيل المحاكي والسماح لبروتوكول VNC بالاستماع إلى المنفذ 5901 على النحو التالي:
- التنفيذ:
emulator -gpu guest -avd avd_name -no-window -qemu -vnc :1 افتح برنامج عرض VNC، مثل tightvnc viewer، للاتصال بالمنفذ 5901.
لاستخدام برنامج مشاركة الشاشة المضمّن في جهاز Mac، يجب توفير كلمة مرور VNC عند تشغيل المحاكي. لضبط كلمة مرور، استخدِم الأمر التالي:
emulator -gpu guest -avd avd_name -no-window -qemu -vnc :1,password -monitor stdioثم أدخِل
change vnc passwordفي وحدة التحكّم، وأدخِل كلمة مرور.
لا يتوافق الإصدار Android O حاليًا مع وضع VNC.
- التنفيذ:
تمت إضافة زر الإبلاغ عن خطأ في شاشة "المساعدة" الخاصة بعناصر التحكّم الموسّعة (انقر على المزيد
،
ثم انقر على مساعدة ومساعدة المحاكي). يؤدي النقر على الإبلاغ عن خطأ إلى فتح مربّع حوار يمكنك من خلاله الاطّلاع على تفاصيل تقرير الخطأ، مثل لقطة الشاشة ومعلومات إعداد المحاكي AVD وسجلّ تقرير الخطأ. يمكنك بعد ذلك حفظ التقرير لنفسك أو
الإبلاغ عن مشاكل المحاكي.تمت إضافة مستشعر الجيروسكوب إلى المحاكي ولوحة المستشعرات الافتراضية. يتطلّب ذلك توفُّر صورة نظام تتوافق مع الجيروسكوب لكي تعمل (حاليًا، مستوى واجهة برمجة التطبيقات 24 و25).
تمت إضافة نظام أسماء النطاقات المفضّل للمضيف إلى قائمة نظام أسماء النطاقات في Qemu على أجهزة Windows، وذلك عندما تؤدي واجهات الشبكة الافتراضية المتعددة على المضيف إلى ظهور عناوين متعددة لنظام أسماء النطاقات لا تعمل مع المحاكي.
تمت إضافة دعم تجريبي لـ Hypervisor.Framework على نظام التشغيل macOS للصور x86 ذات 32 بت على الإصدار 10.10 من نظام التشغيل macOS والإصدارات الأحدث من خلال علامات الخادم، ما من شأنه تحسين وقت التشغيل والأداء.
- إذا واجهت مشاكل في ذلك، أضِف السطر
HVF = offفي~/.android/advancedFeatures.ini.
- إذا واجهت مشاكل في ذلك، أضِف السطر
يتم الآن تفعيل OpenGL ES 3.x تلقائيًا لصور النظام ووحدات معالجة الرسومات المضيفة التي تتوافق مع OpenGL ES 3. في الوقت الحالي، لا تتوافق واجهة OpenGL ES 3 إلا مع الإصدار Android O (المستوى 26 من واجهة برمجة التطبيقات) ومضيفَي Windows وLinux.
- إذا واجهت مشاكل في OpenGL ES 3، أضِف السطر
GLESDynamicVersion = offفي~/.android/advancedFeatures.ini.
- إذا واجهت مشاكل في OpenGL ES 3، أضِف السطر
يستخدم المحاكي الآن كائنات إطار العرض المؤقت (FBO) من OpenGL خارج الشاشة لجميع عمليات العرض باستثناء نشر صورة العرض النهائية، ما سيساعد في حلّ مشاكل اتساق الألوان على جميع الأنظمة الأساسية.
بعد جمع بيانات حول المشاكل المتعلّقة بالتباطؤ المفاجئ للمحاكي، تبيّن لنا أنّ المشكلة قد تكون مرتبطة بتفاعل بين برامج تشغيل OpenGL القديمة من Intel وتحديثات Windows. وبناءً على ذلك، تم ضبط العرض تلقائيًا للمستخدمين الذين لديهم بطاقات رسومات Intel HD 4000 و3000 و2000 (وبطاقات الرسومات ذات الصلة) على استخدام إما أداة عرض D3D (ANGLE) أو Swiftshader (أداة عرض برمجية).
26.0.0 (مارس 2017)
هذا الإصدار متوافق مع مستوى واجهة برمجة التطبيقات 26. ويتضمّن أيضًا عددًا من التحسينات على الأداء وإصلاحات للأخطاء.
الإصدار الثانوي 26.0.3 (مايو 2017)
- تضيف هذه السمة علامات ميزات يمكن تحديثها على الإنترنت لمعالجة المشاكل بسرعة الناجمة عن إعدادات الأجهزة التي تتضمّن مشاكل. ويسمح ذلك لشركة Google بطرح إصلاحات وميزات تعتمد على إعدادات المستخدمين من خلال تعديل العلامات من جهة الخادم. إذا لاحظت مشاكل في أجهزة معيّنة، يُرجى الإبلاغ عن خطأ حتى نتمكّن من التحقيق في المشكلة.
- إتاحة إدخال البيانات باستخدام زر التدوير في صور نظام Android Wear API المستوى 25. لمحاكاة إدخال البيانات عبر وحدة تحكم دورانية على جهاز Wear OS، انقر على علامة التبويب الإدخال الدوّار في النافذة الموسّعة.
- يمكن الآن تغيير حجم مربّع الحوار "إعداد تقارير الأعطال"، ولم يعُد يتم إعادة ضبط وقت إرسال تقارير الأعطال إلى السؤال بدون إدخال أي بيانات.
- يتطلّب المحاكي 32 بت الآن أن يكون الحد الأقصى لحجم ذاكرة الوصول العشوائي (RAM) لجهاز Android الافتراضي أقل من أو يساوي 512 ميغابايت، وذلك لمنع المحاكي من نفاد المساحة في مساحة العناوين الافتراضية البالغة 2 غيغابايت.
- تتم إضافة إمكانية استخدام المسارات المطلقة في صور المحاكي.
- تضيف هذه السمة علامة تبويب جديدة في النافذة الموسّعة لصور "متجر Google Play" تعرض إصدار "خدمات Play" وزرًا للتحقّق من توفّر تحديثات لـ "خدمات Play".
- تضيف هذه السمة قائمة منسدلة لاختيار عارض OpenGL في صفحة "إعدادات المحاكي". إذا كنت تواجه مشاكل في برنامج تشغيل OpenGL على جهاز يعمل بنظام التشغيل Windows، حاوِل استخدام الخيارَين ANGLE (D3D11) أو ANGLE (D3D9) (يتطلّب ذلك إعادة التشغيل). إذا كنت تواجه مشاكل في برنامج تشغيل OpenGL على جهاز غير تابع لنظام التشغيل Windows، جرِّب استخدام برنامج العرض Swiftshader (يتطلّب ذلك إعادة التشغيل).
- تم إصلاح عُطل نادر يحدث عند الخروج من المحاكي عندما يتلقّى الأمرَين
exitوminimize. - إصلاح مشكلة في تغيير الحجم عند تغيير شاشات العرض على جهاز Mac (المشكلة 268296)
- تم إصلاح مشكلة استهلاك المحاكي لـ 300% من وحدة المعالجة المركزية (CPU) واستمرار استهلاكها بعد استئناف عمل الكمبيوتر المضيف من وضع السكون أو عند تشغيل المحاكي لفترة طويلة.
- تم إصلاح عُطل يحدث عند إيقاف المحاكي.
التحديثات التي تتضمّن الإصدار 6.1.1 من HAXM (مارس 2017)
ملاحظة: يتوفّر الإصدار 6.1.1 من HAXM لمستخدمي Mac من خلال مدير حزمة SDK اعتبارًا من 30 آذار (مارس)، وسيتوفّر لمستخدمي Windows قريبًا.
يتوافق الإصدار 26.0.0 من "محاكي Android" مع الإصدار 6.1.1 من HAXM، الذي يتضمّن التحديثات التالية:
- تتيح هذه السمة محاكاة وحدات مراقبة الأداء (PMU). (المشكلة 223377)
- إصلاحات للتوافق مع VirtualBox وDocker على أجهزة Mac (المشكلة 197915)
- تم تعديل رسالة الخطأ التي تظهر عند تعذُّر التثبيت بسبب عدم تمكّن برنامج التثبيت من رصد Intel VT-x على Windows، ويكون السبب عادةً هو تفعيل Hyper-V.
- تضيف هذه الإضافة إمكانية تسريع Android Emulator في جهاز Windows افتراضي يستند إلى Hyper-V. يتطلّب هذا التحديث أن يستخدم مثيل Hyper-V المضيف (المسؤول عن إدارة الجهاز الظاهري/الضيف لنظام التشغيل Windows) أحدث إصدار من Hyper-V مع تفعيل ميزة المحاكاة الافتراضية المتداخلة. يجب إيقاف ميزة Hyper-V في مثيل Hyper-V الضيف (الجهاز الظاهري الذي يعمل بنظام التشغيل Windows).
الطلبات التابعة
- الإصدار 25.0.4 أو إصدار أحدث من حزمة تطوير البرامج (SDK) لأدوات النظام الأساسي في Android
- الإصدار 26.0.0 أو إصدار أحدث من أدوات حزمة تطوير البرامج (SDK) لنظام التشغيل Android
ميزات جديدة وإصلاحات للأخطاء
- متوافق مع مستوى واجهة برمجة التطبيقات 26.
- متوافق تمامًا مع GLES 2.0 إذا كان لديك وحدة معالجة رسومات مضيفة تتضمّن برامج تشغيل OpenGL متوافقة مع أجهزة الكمبيوتر، سيجتاز المحاكي الآن% 100 من
mustpassقائمة dEQP-GLES2 في مجموعة أدوات اختبار التوافق (CTS) لنظام التشغيل Android. تم طرح هذه الميزة لإصدارات المستوى 24 لواجهة برمجة التطبيقات من صور x86 (الإصدار 11 والإصدارات الأحدث)، وسيتم تضمينها قريبًا في جميع صور النظام. - تحسين أداء تشغيل الفيديو يخزّن المحاكي الآن جميع مخازن الألوان الخاصة بالفيديو في الذاكرة المشتركة بين المضيف والضيف، ويجري عملية التحويل النهائية اللازمة من YUV إلى RGB في وحدة معالجة الرسومات. من المفترض أن يكون معدل 1080p30 متاحًا لمعظم الأنظمة حاليًا. تم طرح هذه الميزة لإصدارات صور x86 من المستوى 24 لواجهة برمجة التطبيقات (الإصدار 11 والإصدارات الأحدث)، وسيتم تضمينها قريبًا في جميع صور النظام.
- يزيل المحاكي الآن تسجيل نفسه بشكل صحيح من قائمة
adb devicesعند الخروج ويغلق منافذ TCP المفتوحة على أجهزة Linux. - أصبحت اتصالات adb أكثر موثوقية الآن. يتم رصد المحاكي الذي يتم تشغيله بشكل أسرع، ولن يتم ضبط حالته على "غير متصل" أو "غير مصرح به" بعد الآن.
25.3.0 (مارس 2017)
اعتبارًا من هذا الإصدار، سيتم طرح Android Emulator بشكل منفصل عن أدوات حزمة تطوير البرامج (SDK). يحتوي هذا الإصدار على مجموعة متنوعة من التحسينات في الأداء والميزات الجديدة وإصلاحات للأخطاء.
المراجعة الثانوية 25.3.1 (مارس 2017)
- تم إصلاح عُطل يحدث في بعض إعدادات وحدة معالجة الرسومات من خلال إيقاف GLAsyncSwap تلقائيًا.
تمت إضافة هذه الميزة في الإصدار 25.3.0 لتحسين توقيت عرض اللقطات وعدد اللقطات في الثانية للألعاب والفيديوهات، ولكنها تتسبّب في تعذُّر تشغيل المحاكي على بعض إعدادات الأجهزة غير المعروفة. يمكنك تفعيلها يدويًا من خلال فتح ملف
android_sdk/emulator/lib/advancedFeatures.iniوضبطGLAsyncSwap = on.
الطلبات التابعة
- الإصدار 24 أو إصدار أحدث من "أدوات النظام الأساسي لحزمة تطوير البرامج (SDK) لنظام التشغيل Android"
- الإصدار 25.3.0 من "أدوات حزمة تطوير البرامج (SDK) لنظام التشغيل Android"
ميزات جديدة وإصلاحات للأخطاء
- تم تعديل محرك المحاكاة إلى QEMU 2.7، بما في ذلك جميع إصلاحات الأخطاء الأخيرة وتحسينات الأداء والميزات الجديدة.
- إتاحة بروتوكول IPv6 الجديد
- يستخدم المحاكي الآن SwiftShader كبرنامج عرض خالص على الجهاز المضيف.
- تحسينات على أداء Android Pipe: أصبح Android Pipe، وهو قناة الاتصال الرئيسية بين المحاكي ونظام التشغيل Android، أسرع بكثير، ويوفّر وقت استجابة أقل وأداءً أفضل في المهام المتعددة. يؤدي ذلك إلى تحسينات عديدة في أداء المحاكي، بما في ذلك:
- تحسين سرعة نقل البيانات عبر ADB
- تحسين توافق تسريع الرسومات الثلاثية الأبعاد
- تحسين الاستجابة الإجمالية للمحاكي
- تحسين أداء الرسومات
- يستخدم المحاكي الآن المخازن المؤقتة من جهة وحدة معالجة الرسومات (glBindBuffers / glBufferData) عندما يطلبها نظام التشغيل الضيف، ما يقلّل من الحمل الزائد لوحدة المعالجة المركزية في بعض التطبيقات.
- تحسين توافق الصوت
- سرعة أكبر في عمليات الإدخال والإخراج على القرص: يستخدم المحاكي الآن سلاسل تعليمات منفصلة لتوزيع المهام على عمليات الإدخال والإخراج على القرص، ما يؤدي إلى تقليل وقت الاستجابة وتحسين سرعة معالجة البيانات (سرعة عمليات الإدخال والإخراج التسلسلية أكبر بمقدار 1.5 مرة، وسرعة عمليات الإدخال والإخراج العشوائية أكبر بمقدار 5 مرات). يؤدي ذلك أيضًا إلى تقليل عدد عمليات نقل البيانات إلى القرص، ما يؤدي إلى خفض كبير في معدل استخدام الجهاز الفعلي.
- يستخدم المحاكي الآن ملفات متفرقة لعمليات تشغيل القرص على أجهزة Windows ، ما يؤدي إلى تسريع عمليات التشغيل الأولى وعمليات التشغيل التي تتضمّن "محو البيانات". عند إنشاء جهاز AVD أو إعادة ضبطه، يكتب المحاكي الآن بيانات تتراوح بين 100 و200 ميغابايت على القرص، بدلاً من 2 غيغابايت أو أكثر.
- تحسينات متنوّعة في واجهة المستخدم الرسومية:
- يستخدم المحاكي الآن الإصدار 5.7.0 من Qt، والذي يتضمّن إصلاحات للأخطاء وتحسينات في الأداء.
- لم يعُد تهيئة واجهة المستخدم تحاول تحميل جميع ملفات تنفيذ المحاكي كإضافات Qt، لذا أصبحت المدة أقصر بكثير، خاصةً على محركات الأقراص الثابتة.
- أصبحت التفاعلات مع واجهة المستخدم أسرع وأكثر سلاسة، بما في ذلك تدوير الشاشة وتغيير حجم النافذة وتحميل نافذة عناصر التحكّم الموسّعة وإغلاقها.
OpenXR™ وشعار OpenXR هما علامتان تجاريتان مملوكتان لشركة The Khronos Group Inc. ومسجَّلتان كعلامة تجارية في الصين والاتحاد الأوروبي واليابان والمملكة المتحدة.