يتم تضمين Android Emulator في "استوديو Android".
تم توزيع إصدارات المحاكي الأقدم من 25.3.0 كجزء من أدوات حزمة تطوير البرامج (SDK) لنظام التشغيل Android.
للتأكّد من أنّ لديك أحدث إصدار، يمكنك الاطّلاع على SDK Manager لمعرفة التحديثات.
لتنزيل الإصدارات السابقة من Android Emulator، يُرجى الاطّلاع على أرشيف تنزيل المحاكي.
للاطّلاع على ملاحظات إصدارات "المحاكي" الأقدم من 25.3.0، يُرجى مراجعة ملاحظات إصدار أدوات حزمة تطوير البرامج (SDK) لنظام التشغيل Android.
للاطّلاع على المشاكل التي تم إصلاحها في أحدث إصدارات Android Emulator، يُرجى مراجعة المشاكل المغلقة.
للاطّلاع على المشاكل المعروفة وتحديد المشاكل وحلّها، يُرجى الاطّلاع على تحديد مشاكل المحاكي وحلّها.
الجيل التالي من Android Emulator (نسخة حصرية)
بدءًا من الإصدار التجريبي 1 من Android Studio Rabbit 3، تتوفّر نسخة حصرية من الجيل التالي من Android Emulator ويتم استخدامها تلقائيًا للأجهزة الافتراضية المؤهَّلة.
من خلال الترقية من إصدار QEMU 2 القديم إلى إصدار QEMU الحديث (الإصدار 11 والإصدارات الأحدث)، يتميز المحرّك الجديد بفصل عملية المحرّك عن واجهة المستخدم، وهو مصمَّم لتوفير دقة عالية وأداء أعلى.
سيستفيد المطوّرون من:
- أوقات تشغيل أسرع وتقليل استهلاك وحدة المعالجة المركزية/الذاكرة
- تحسين استقرار الجلسة باستخدام عمليات معزولة للمحرك وواجهة المستخدم
- محاكاة افتراضية حديثة مع نماذج أجهزة virtio المحدّثة ورسومات Vulkan
للبدء، أنشِئ جهاز Android افتراضيًا (AVD) يعمل بالمستوى 37.0 من واجهة برمجة التطبيقات أو إصدار أحدث، وشغِّله من Android Studio Canary. ستستمر أجهزة Android الافتراضية الحالية في العمل بسلاسة على محرّك المحاكي الكلاسيكي في الوقت الحالي.
الإصدار الثابت 37.2.12 (1 أكتوبر 2026)
[إصلاح خطأ]المشكلة رقم 537802959 نظام التشغيل macOS (شريحة Apple Silicon): يؤدي استخدام gRPC streamScreenshot مع ImageTransport MMAP إلى تعطُّل محرّك المحاكي أو عدم كتابة اللقطات بدون إرسال إشعار بذلك
[إصلاح خطأ]المشكلة رقم 507078580 المحاكي يمنع نظام التشغيل macOS من الدخول في وضع السكون
[إصلاح خطأ]المشكلة رقم 506475581 تم حلّ المشكلة المتبقية المتعلقة بتشويه الصوت والتشويش عند بدء التشغيل على نظام التشغيل macOS عند استخدام واجهة الصوت مع أكثر من قناتين (الاسترجاع، الإخراج المتعدد)
الإصدار الثابت 37.1.11 (30 يوليو 2026)
سيتم إيقاف برنامج تشغيل Android Emulator hypervisor (AEHD) نهائيًا في 31 ديسمبر 2026. للمساعدة في عملية الانتقال، يساعد استوديو Android الآن مستخدمي Windows في التحويل من AEHD إلى Windows Hypervisor Platform (WHPX). يمكنك الاطّلاع على ضبط تسريع الأجهزة الافتراضية باستخدام WHPX للحصول على معلومات حول ضبط تسريع الأجهزة الافتراضية باستخدام WHPX.

تمت إضافة جهاز Pixel 10a افتراضي
تمت إضافة إمكانية استخدام إضافات Vulkan الجديدة المطلوبة لتشغيل صور نظام المستوى 37 من واجهة برمجة التطبيقات
[إصلاح خطأ]المشكلة رقم 324465986 لا يظهر خطأ "نفاد مساحة التخزين" عند التقاط لقطة شاشة على محاكي لا يتضمّن مساحة
[إصلاح خطأ]المشكلة رقم 526671872 إتاحة استخدام لاحقات الوحدات (مثل "6G" و"32M") لإعدادات حجم ذاكرة الوصول العشوائي (RAM) في جهاز Android الافتراضي (AVD) وحجم الذاكرة الديناميكية في الجهاز الافتراضي (VM) في ملف config.ini
[إصلاح خطأ]المشكلة رقم 325814592 ظهرت مشكلة في نظام التشغيل macOS 14 حيث يبدأ المحاكي في التجمّد والعمل ببطء شديد بعد تشغيل الكاميرا
الإصدار الثابت 36.6.11 (2 يونيو 2026)
بدءًا من المستوى 37 لواجهة برمجة التطبيقات، تم رفع الحد الأدنى للذاكرة (RAM) التي يستخدمها الجهاز الافتراضي في جهاز Android الافتراضي إلى 4 غيغابايت.
لتلبية متطلبات الذاكرة الأعلى في Android 17 (المستوى 37 من واجهة برمجة التطبيقات)، تتطلّب الأجهزة الافتراضية المتوافقة مع Android (AVD) للهواتف الآن حدًا أدنى صارمًا يبلغ 4 غيغابايت من ذاكرة الوصول العشوائي (RAM). إذا تم ضبط جهازك الافتراضي على Android بذاكرة أقل، سيستبدل المحاكي الإعداد تلقائيًا لتخصيص 4 غيغابايت على الأقل، ما يمنع حدوث مشاكل محتملة في وقت التشغيل.
تمت إضافة وضع الكاميرا "البيئة" إلى المحاكي لخلفيات المشاهد الافتراضية القابلة للضبط. يتم تحديد هذه المشاهد في ملف environment.ini الخاص بجهاز AVD ويمكن إعادة تحميلها ديناميكيًا في وقت التشغيل.
تم إصلاح خلل يتعلّق بعدم محو معاينة اللقطة في المحاكي المستقل بعد حذف اللقطة.
[إصلاح خطأ]المشكلة رقم 506475581 صوت المحاكي مشوَّه بشدة على نظام التشغيل macOS عند استخدام واجهة صوتية مع أكثر من قناتَين (الاسترجاع، الإخراج المتعدّد)
[إصلاح خطأ]المشكلة رقم 516455370 تم إصلاح مشكلة كبيرة في تسرُّب الذاكرة في الإصدار 26.3 من نظام التشغيل macOS عند إغلاق المحاكي، وهي مشكلة تتعلّق بتنظيف الموارد التي تستخدمها واجهات برمجة التطبيقات Hypervisor.framework.
الإصدار التصحيحي 36.5.11 (23 أبريل 2026)
- [إصلاح خطأ]المشكلة رقم 492228020 يعرض Android Emulator شاشة سوداء عند استخدام ميزة "عرض الرسومات التلقائي/باستخدام الأجهزة" على وحدة معالجة الرسومات من Intel
الإصدار الثابت 36.5.10 (2 أبريل 2026)
يتضمّن هذا التحديث الميزة وإصلاحات الأخطاء التالية:
اختبار التفاعلات على أجهزة متعدّدة باستخدام Android Emulator
يتميز Android Emulator الآن بحزمة شبكات جديدة لتحسين اختبار الأجهزة المتعددة، مما يلغي الحاجة إلى إعادة توجيه المنفذ يدويًا لتوصيل مثيلات AVD متعددة على نفس المضيف. يمكن لأجهزة AVD الآن اكتشاف بعضها البعض والتواصل مع بعضها البعض تلقائيًا كما لو كانت على نفس الشبكة الافتراضية. يتيح ذلك اختبار التفاعلات بين الأجهزة المتصلة ببعضها بسلاسة باستخدام بروتوكولات مثل "اتصال Wi-Fi مباشر" و"اكتشاف خدمة الشبكة".
توفّر حزمة الشبكات الجديدة هذه العديد من المزايا الرئيسية للمطوّرين:
- بدون إعدادات: لن تحتاج إلى إعادة توجيه المنفذ يدويًا أو كتابة نصوص برمجية لأوامر adb.
- اتصال Wi-Fi مباشر سلس بين الأجهزة: تعمل البروتوكولات المهمة، مثل اتصال Wi-Fi مباشر وNetwork Service Discovery، تلقائيًا بين المحاكيات.
- تحسين الثبات: يحلّ هذا الإصدار مشاكل الثبات المستمرة منذ فترة طويلة، مثل فقدان البيانات (المشكلة رقم 150758736) وانقطاع الاتصال (المشكلة رقم 449817856) التي تم العثور عليها في الحزمة القديمة.
للبدء، عليك تحديث Android Emulator إلى أحدث إصدار في SDK Manager ضمن "استوديو Android". لمزيد من المعلومات، يمكنك الاطّلاع على المستندات هنا.
ميزات إضافية وإصلاحات للأخطاء
تمت إضافة أجهزة Pixel AVD جديدة، بما في ذلك 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 Emulator الآن خيارات محدّدة للأجهزة والبرامج. بالنسبة إلى مستخدمي سطر الأوامر، يمكن الآن استخدام الخيار "-gpu software" لاختيار أفضل برامج GLES وVulkan المتاحة لعرض الخلفيات لنظامك
تم تفعيل Lavapipe كبرنامج عرض الرسومات التلقائي لتحسين التوافق مع Vulkan على جميع الأنظمة الأساسية
تحسينات Vulkan:
- تم تعديل أداة تحميل Vulkan المضمّنة في المحاكي
- تم إصلاح العديد من حالات الاستخدام غير الصالحة في الخلفية في Vulkan
- تمت إضافة إمكانية استخدام SkiaVk على systemui مع محاكاة قائمة انتظار الرسومات في صور النظام الجديدة
- تمت إضافة إمكانية استخدام Vulkan لإيقاف استخدامات GL على المضيف. يتم تفعيل هذه الميزة تلقائيًا لصور XR، ويمكن تفعيلها باستخدام خيار سطر الأوامر -feature VulkanNativeSwapchain.
[إصلاح خطأ]المشكلة رقم 471008659 تسرُّب الذاكرة على جهاز المضيف في المحاكي عند فتح/إغلاق الأنشطة
الإصدار 36.4.3 Canary (8 ديسمبر 2025)
محاكي جديد للنظارات بالذكاء الاصطناعي
أضفنا محاكيًا تجريبيًا جديدًا لنظارات الذكاء الاصطناعي من أجل تطوير واختبار التطبيقات التي تم إنشاؤها باستخدام حزمة تطوير البرامج Jetpack XR SDK لنظارات الذكاء الاصطناعي. يمكنك تشغيل محاكي النظارات مع محاكي الهاتف، وإقرانهما وإجراء التفاعلات المعتادة التي يمكنك تشغيلها على النظارات. يُرجى الاطّلاع على إنشاء أجهزة نظارات بالذكاء الاصطناعي افتراضية للحصول على معلومات حول تثبيت محاكي النظارات بالذكاء الاصطناعي وإعداد بيئة التطوير.
محاكي النظارات بالذكاء الاصطناعي هو أداة تجريبية. قد تحدث مشاكل، خاصةً عند إعادة إقران النظارات بمحاكيات الهاتف وتفاعلات واجهة المستخدم في لوحة اللمس.
محاكي جديد لنظارات بنظام الواقع الممتد
لقد وسّعنا نطاق محاكي Android XR الذي تم إطلاقه سابقًا ليشمل نظارات بنظام الواقع الممتد (XR) التي تستخدم تقنية OST (الرؤية البصرية المباشرة). يمكنك استخدام محاكي النظارات بنظام الواقع الممتد لمعاينة تطبيقك مع مجال الرؤية والدقة التقريبيين لجهاز النظارات بنظام الواقع الممتد. يمكنك الاطّلاع على إنشاء أجهزة نظارات بنظام الواقع الممتد افتراضية للحصول على معلومات حول تثبيت محاكي النظارات بنظام الواقع الممتد وإعداد بيئة التطوير.
يُعدّ محاكي نظارات بنظام الواقع الممتد ومحاكي نظارات بالذكاء الاصطناعي من الأدوات التجريبية. يُرجى توقُّع حدوث مشاكل، خاصةً في بعض إعدادات برامج التشغيل ووحدات معالجة الرسومات في نظام التشغيل Windows (يُرجى الاطّلاع على متطلبات نظام التشغيل Windows).
المشاكل المعروفة
ستساعدنا ملاحظاتك في تحسين الميزات المستقبلية وتحديد أولوياتها. يُرجى الاطّلاع على الإبلاغ عن خلل للحصول على معلومات حول الإبلاغ عن الأخطاء المتعلّقة بـ استوديو Android أو Android Emulator.
الإصدار الثابت 36.3.10 (4 ديسمبر 2025)
[إصلاح خطأ]المشكلة رقم 452843321 انخفاض الأداء عند إرسال ملفات كبيرة إلى المحاكي على Android API 34 والإصدارات الأحدث.
تم إصلاح أعطال Vulkan التي تحدث عندما تعمل برامج ترميز الفيديو في وضع زخرفة وحدة معالجة الرسومات.
تم إصلاح أعطال المحاكي في حدث الشاشة التي تعمل باللمس عند التشغيل باستخدام -debug-events.
الإصدار التصحيحي 36.2.12 (13 أكتوبر 2025)
- تم إصلاح مشكلة تعطُّل التطبيق على نظام التشغيل Windows والتي كانت تحدث عند تشغيل تطبيق Vulkan في وضع عرض البرامج
الإصدار الثابت 36.2.11 (9 أكتوبر 2025)
تمت إزالة ميزة HAXM من المحاكي. إذا حاولت إنشاء جهاز Android افتراضي باستخدام HAXM، سيظهر بانر يشير إلى عدم توفّر برنامج Hypervisor ورابط لاتّخاذ إجراء من أجل تثبيت AEHD.

للحصول على معلومات حول إلغاء تثبيت HAXM، يُرجى الاطّلاع على إلغاء تثبيت HAXM.
تم إصلاح المشكلة لضمان استخدام وحدة معالجة الرسومات Intel لبرنامج OpenGL ES 3.0 لتجنُّب تعطُّل برنامج التشغيل
[إصلاح خطأ]المشكلة رقم 340322888 لا يمكن بدء تشغيل جهاز Android افتراضي (AVD) في حال عدم توفّر مساحة فارغة على الجهاز
[إصلاح خطأ]المشكلة رقم 150758736 فقدان متقطّع للبيانات ذات البايت الواحد في اتصالات بروتوكول التحكّم بالنقل (TCP) في المحاكي
[إصلاح خطأ]المشكلة رقم 434774381 تعطّلت نواة نظام التشغيل الضيف بعد التشغيل السريع لواجهتَي برمجة التطبيقات 36 و35 (وربما أكثر) على نظام التشغيل Windows 11 باستخدام WHPX على معالج i7-11850H
الإصدار الثابت 36.1.9 (تاريخ الإصدار: 31 يوليو 2025)
[إصلاح خطأ]المشكلة رقم 419157428: قد تمنع أحرف UTF-8 في اسم المستخدم أو في مسار جهاز Android الافتراضي (AVD) المحاكي من البدء
[إصلاح خطأ]المشكلة رقم 423670833: يتعطّل Android Emulator في نظام الملفات btrfs
ملاحظة: إذا كنت تواجه مشاكل في تشغيل المحاكي على X11، ننصحك باستخدام العرض البرمجي. يُرجى الاطّلاع على مقالة ضبط تسريع الرسومات لمعرفة كيفية ضبط عرض البرامج.
الإصدار الثابت 35.6.11 (24 يونيو 2025)
تم تحسين توافق وحدات معالجة الرسومات من AMD وNvidia على نظامَي التشغيل Windows وLinux لمحاكاة الواقع الممتد
يمكن تشغيل XR AVD كجزء مضمّن في نوافذ تشغيل "استوديو 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)
تمت إضافة قائمة منسدلة في عناصر التحكّم الموسّعة لإعدادات برامج تشغيل 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 تجريبيًا جديدًا لتطوير واختبار التطبيقات التي تم إنشاؤها باستخدام حزمة تطوير البرامج (SDK) لمنصة Jetpack XR لسماعات الرأس. يمكنك الاطّلاع على إعداد حزمة تطوير البرامج (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 بعد، وسيتعطّل تطبيق Gemini API starter template.
المحاكي - محاكاة الإدخال والإخراج:
- قد تظهر لوحة المفاتيح الافتراضية لحقول البحث والتعديل بشكل جزئي فقط في مجال الرؤية
لا يمكن نقل العناصر في الاتجاه z (داخل الشاشة وخارجها) باستخدام الماوس ولوحة المفاتيح
قد يؤدي عدم استقرار إدخال الصوت في ميكروفون جهاز Android الافتراضي (AVD) إلى إعادة تشغيل الجهاز وتعطّله.
يصاحب الصوت أحيانًا تشويش أو يكون مشوَّشًا.
عند نقل الكاميرا خارج الشاشات الكبيرة الافتراضية، تظهر أخطاء في العرض.
تعرض إعدادات Windows ألوانًا أغمق من المعتاد.
يتوقف الصوت عن العمل بعد ترك المحاكي في وضع عدم النشاط وقفل الشاشة على نظام التشغيل macOS. (ستؤدي إعادة تشغيل المحاكي إلى استعادته).
ينقطع الاتصال بالشبكة عندما يغيّر الجهاز المضيف شبكة Wi-Fi.
عند تفعيل Caps Lock، لا يزال يتم كتابة الأحرف الصغيرة.
التمرير باستخدام لوحة اللمس على أجهزة Mac ليس سلسًا.
قد لا تعمل ميزة التمرير بالنقر والسحب على بعض عناصر واجهة المستخدم حسب التصميم. وإذا لم تكن كذلك، استخدِم عجلة الماوس للتمرير بدلاً من ذلك.
نصوص وواجهة مستخدم غير واضحة وأخطاء أخرى في Chrome على بعض إعدادات نظام Windows الحلّ المحتمَل: تفعيل WHP
المحاكي - محاكاة المستويات والمثبّتات:
- لا تظهر نقاط الارتكاز أحيانًا بالقرب من الموقع الجغرافي نفسه
- قد لا يتم تثبيت الألواح المتحركة على الجدران أو السقف
- لا تتطابق الأسطح المحاكاة مع التخطيط الفعلي للغرفة الثلاثية الأبعاد في وضع "الرؤية من خلال النظارة"
- مساحات محدودة بشكل عام لتثبيت العناصر في الغرفة الافتراضية
- ظهور عنصر صغير مرئي في عرض الواقع المعزّز على أجهزة Windows
- في بعض الحالات، قد يؤدي وضع نقاط الارتكاز إلى تعطُّل التطبيق
- قد تظهر خطوط سوداء في أعلى التطبيقات عند نقلها بالقرب من الأرض على نظام التشغيل Windows
المحاكي - أخرى:
- يبدأ المحاكي في وضع "مستقل" فقط. لا يتوفّر وضع "مضمّن" (واجهة مستخدم مضمّنة) بعد.
- قد يؤدي تسجيل الدخول باستخدام حسابات على المحاكي في نظام التشغيل Windows إلى توقّف المحاكي عن الاستجابة
- قد يختفي محتوى واجهة المستخدم في النوافذ بعد تغيير حجمها (الحلّ البديل: الضغط على زر "الصفحة الرئيسية")
- في تطبيق JXRCore ActivityPanelTest، لا تظهر اللوحة الثانوية في البداية
- قد تختفي عناصر "الإعدادات السريعة" من إعدادات النظام بعد فترة طويلة.
- قد تظهر واجهة مستخدم المحاكي خارج منطقة الشاشة في البداية. إذا كان الأمر كذلك، فاضبط حجم نافذة المحاكي قليلاً ويجب أن تعود إلى مكانها.
- قد لا يبدأ تشغيل المحاكي عند استخدام "الاتصال بجهازك عن بعد من Chrome" على نظام التشغيل Windows
- لا يتوافق OpenXR حتى الآن مع المحاكي، وقد تؤدي تطبيقات OpenXR إلى تعطُّل المحاكي
- حالات فشل نادرة عند محاولة إرسال تقارير الأخطاء باستخدام إعدادات "استوديو Android" الموسّعة على نظام التشغيل Windows
- لا يظهر رمز "الرجوع" بشكل صحيح في تطبيق "الإعدادات" إلى أن يتم تمرير المؤشر بالقرب منه على أجهزة Mac
- في بعض الحالات، قد يحدث خطأ في عملية الإنشاء عند استخدام وحدة "الملف الشخصي الأساسي" كجزء من مشروع نموذج الواقع الممتد
- تم دمج ميزة تسهيل الاستخدام "XR Talkback" جزئيًا فقط في المحاكي حتى الآن
تطبيق Scene Viewer:
- قد يؤدي نقل العناصر داخل Scene Viewer إلى تعطُّله. لحلّ هذه المشكلة، يمكنك تحريك موضع الرأس بعيدًا عن موضعه الأولي قليلاً (على سبيل المثال، باستخدام التحريك الأفقي أو التحريك العمودي أو مفاتيح WASD وما إلى ذلك) قبل محاولة تحريك العنصر.
- لن تعمل ميزة الحجم الحقيقي بنسبة 1:1 بشكل صحيح إذا كان الحجم الحقيقي للنموذج الثلاثي الأبعاد أقل من الحد الأدنى أو أكبر من الحد الأقصى للمقياس (المحدّد حاليًا بـ 20 سم و70 مترًا على التوالي)
- قد يقفز النموذج الثلاثي الأبعاد في الإطار الأول بعد التحميل
35.2.10 (1 أكتوبر 2024)
- تمت إضافة أجهزة Pixel AVD جديدة، بما في ذلك Pixel 9 وPixel 9 Pro وPixel 9 Pro XL وPixel 9 Pro Fold
- تمت إضافة صورة نظام جديدة للأجهزة اللوحية لإصدار Vanilla Ice Cream (المستوى 35 من واجهة برمجة التطبيقات)
35.1.20 (29 أغسطس 2024)
- تمت إضافة جهاز Pixel 8a افتراضي
- إصلاحات أخطاء متنوّعة للأجهزة القابلة للطي
- تحديث Qt وإصلاحات للأعطال وحالات التوقف المرتبطة بـ 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)
- إصلاحات متنوّعة للأعطال المتعلّقة بوضع swangle وعملية تنظيف المعلنين
34.2.14 (20 مايو 2024)
تم اختباره باستخدام الإصدار الثابت 1 من حزمة تصحيح Jellyfish في "استوديو Android".
- [إصلاح خلل] توقُّف Snapshot أحيانًا على المحاكي المضمّن
- [إصلاح خطأ] الزران "لا" و"إلغاء" لا يعملان بشكل صحيح في اللقطة
- [إصلاح خطأ] أزرار لوحة الاتجاهات لا تعمل
- [إصلاح خطأ] تم إصلاح المشكلة التي تظهر على نظام التشغيل Windows وتمنع بدء تشغيل المحاكي في بعض الحالات عند استخدام أوضاع وحدة معالجة الرسومات مع ANGLE، وعرض رسالة الخطأ "تعذّر إعداد محاكاة GL" في السجلّ. يُرجى العِلم أنّ بدء المحاكي من خلال سطر الأوامر باستخدام الخيار
-gpu swangle_indirectقد يؤدي إلى ظهور هذا الخطأ في هذا الإصدار. إذا كنت لا تزال تريد بدء تشغيل المحاكي باستخدام سطر أوامر على نظام التشغيل Windows مع عرض رسومات البرامج في هذا الإصدار، يُرجى استخدام-gpu swiftshader_indirect - [إصلاح خطأ] اختصار الموقع الجغرافي على لوحة المفاتيح يحمّل خريطة غير قابلة للاستخدام
- [إصلاح خطأ] أثناء ضبط الموقع الجغرافي، لا يظهر مربّع الحوار "حفظ المسار"
الإصدار 34.2.13 (30 أبريل 2024)
تم اختباره باستخدام الإصدار الثابت من Android Studio Jellyfish.
- التحديث إلى Qt 6.5.3
- التوافق مع تحديثات Google Maps API المستخدَمة في ميزات "الموقع الجغرافي" ضمن "عناصر التحكّم الموسّعة" في المحاكي، والتي ستتم في نهاية شهر مايو
- إصلاحات الأعطال الشديدة التأثير
- إصلاحات متنوّعة لأجهزة Pixel الافتراضية
- تحديث مكتبة الرسومات المستخدَمة لعرض البرامج
- [إصلاح خطأ]المشكلة 225541819 يؤدي بدء تشغيل Chrome إلى تعطُّل المحاكي على x86_64
- [إصلاح خطأ]المشكلة 314614435: يتم تحليل مفتاح التبديل
-http-proxyبشكل غير صحيح
34.1.20 (1 أبريل 2024)
تم اختباره باستخدام الإصدار الثابت من Android Studio Iguana.
- [إصلاح خطأ] المشكلة رقم 314614435: تم إصلاح مشكلة تحليل مفتاح التبديل
-http-proxyبشكل غير صحيح
34.1.19 (7 مارس 2024)
تم اختباره باستخدام الإصدار الثابت من Android Studio Iguana.
- [إصلاح خطأ] المشكلة رقم 312677259: تم إصلاح مشكلة تجمُّد الشاشة في المحاكي المضمّن بعد تغيير حجم النافذة.
34.1.18 (29 فبراير 2024)
تم الاختبار باستخدام الإصدار الثابت من Android Studio Iguana.
- تمت إضافة أجهزة إلى المحاكي، بما في ذلك:
- Pixel Fold
- Pixel Tablet
- Pixel 8
- Pixel 8 Pro
- Pixel 7a
- اختبار دمج gRPC: تتوفّر الآن نقاط نهاية gRPC للاختبارات الآلية التي يتم إجراؤها داخل المحاكي، ما يتيح اختبار سيناريوهات واقعية. تتيح هذه الميزة للمطوّرين التفاعل بأمان مع نقطة نهاية gRPC التي يستضيفها Android Emulator من داخل اختبارات لقياس حالة التطبيق في Android.
- إصلاحات أخطاء متنوّعة
- إصلاح الأخطاء: تحسينات في سهولة استخدام الأجهزة القابلة للطي
- إصلاح خطأ: تعديل موضع المحاكي بعد التدوير
- إصلاحات الأعطال
33.1.24 (28 ديسمبر 2023)
تم الاختبار باستخدام الإصدار الثابت من استوديو Android Hedgehog والإصدار التجريبي الأول من Iguana.
- تم إصلاح مشكلة كاميرا الويب في المحاكي التي لا تسمح بتسجيل الشاشة بتنسيق mp4.
- تم إصلاح مشكلة تعطُّل المحاكي على جهاز Pixel Fold الافتراضي الذي يعمل بنظام التشغيل Android عند فتحه أثناء تسجيل الشاشة.
- تم إصلاح المشكلة المتمثّلة في عرض Pixel Fold لمظهر هاتف مختلف مع لوحة مفاتيح منفصلة وعدم إمكانية استخدامه (تم إصلاحها على أنظمة التشغيل Windows وMac Intel وLinux)
- تم إصلاح خلل في مظهر أدوات الاستشعار الافتراضية في الوضع المستقل (تم إصلاحه على أنظمة التشغيل Windows وMac Intel وLinux)
- تم توفير إصلاحات لبعض الأعطال، خاصةً أثناء إغلاق المحاكي
33.1.23 (30 نوفمبر 2023)
تم اختباره باستخدام الإصدار 4 من حزمة تصحيح Giraffe من "استوديو Android" والإصدار الثابت من Hedgehog.
- تنفيذ جديد للأجهزة القابلة للطي لمحاكاة جهاز Pixel Fold بشكل أفضل، ويعمل مع أحدث إصدار من واجهة برمجة التطبيقات 34
- ترقية الواجهة الخلفية للرسومات: لقد نفّذنا بروتوكول gfxstream للواجهة الخلفية للرسومات، ما يؤدي إلى تحسين الأداء العام للرسومات وثبات النظام. بالإضافة إلى ذلك، نقدّم إصدار Vulkan 1.3 المتوافق مع صورة النظام التي تستخدم واجهة برمجة التطبيقات 34
- طلب ميزة: خيار لإيقاف إيماءة التصغير أو التكبير بإصبعين أو إعادة ضبط مفتاح التشغيل السريع الخاص بها
- [إصلاح خطأ] المشكلة رقم 302562962 إصلاح عُطل كاميرا الويب في المحاكي عند استخدام نظام التشغيل macOS Sonoma
- [إصلاح خطأ] المشكلة رقم 293503871 تم إصلاح مشكلة عدم حفظ إعداد "الميكروفون" عند إعادة تشغيل المحاكي
- [إصلاح خطأ] المشكلة رقم 270386314 إصلاح خطأ في الصور المتحركة حيث يظل الشريط الجانبي مفتوحًا بعد تصغير شاشة AVD
- [إصلاح خطأ] المشكلة رقم 154896775 إصلاح أداة إرسال الأخطاء
32.1.15 (29 أغسطس 2023)
تم اختباره باستخدام الإصدار Giraffe من "استوديو Android"، حزمة التصحيح 1 والإصدار Hedgehog Canary 16.
- الامتثال لمتطلبات أجهزة GAS لأدوات الاستشعار في محاكي AAE
- [إصلاح خطأ] المشكلة رقم 266201208 لا يتم إرسال رسائل SMS باللغة العبرية في المستوى 33 لواجهة برمجة التطبيقات
- [إصلاح خطأ] المشكلة رقم 257097404 لا يعرض المحاكي الوقت الصحيح بعد تنشيط المضيف على واجهتَي برمجة التطبيقات 29 و30
- [إصلاح خطأ] المشكلة رقم 228201899 لا يمكن الاطّلاع على "خرائط Google" داخل "عناصر التحكّم الموسّعة" في Android Emulator
32.1.14 (27 يونيو 2023)
تم اختباره باستخدام الإصدارات Hedgehog Canary 8 وGiraffe Beta 5 وFlamingo Stable من "استوديو Android".
- إصلاح اتجاهات كاميرا المحاكي والتشوهات
- [إصلاح خطأ] المشكلة رقم 257097404 "لا يعرض المحاكي الوقت الصحيح بعد تنشيط المضيف". لا يزال هذا الخطأ قابلاً للتكرار في المستوى 29 والمستوى 30 لواجهة برمجة التطبيقات.
- [إصلاح خطأ] المشكلة رقم 243456582 "قد لا تبدأ إصدارات Android بعد المستوى 30 لواجهة برمجة التطبيقات بشكل صحيح في المحاكي على أجهزة Mac M1"
32.1.13 (22 مايو 2023)
تم الاختبار باستخدام الإصدارات Hedgehog Canary 2 وGiraffe Beta 1 وFlamingo Stable من "استوديو Android".
- إضافة إمكانية استخدام أجهزة Android الافتراضية (AVD) على Pixel Fold وPixel Tablet
- تم تحسين مشكلة تعطُّل gLinux.
- [إصلاح خطأ] المشكلة رقم 215231636 "المحاكي الذي يتضمّن واجهة برمجة تطبيقات أعلى من واجهة برمجة التطبيقات 30 لا يعمل في معالج Intel من الجيل الثاني عشر".
- [إصلاح خطأ] المشكلة رقم 275397905 مستوى عالٍ من التعطُّل في Android Emulator M1 عند نقل تركيز المؤشر داخل المحاكي وخارجه بشكل متكرر.
- مشكلة معروفة في تشغيل جهاز Android افتراضي (AVD) عند توفّر تقرير أعطال لمحاكي أحدث لمزيد من المعلومات، يُرجى الاطّلاع على تحديد مشاكل المحاكي وحلّها.
32.1.12 (21 مارس 2023)
تم اختباره باستخدام الإصدارات Giraffe Canary 10 وFlamingo RC وElectric Eel Patch 2 من "استوديو Android".
- [إصلاح خطأ] المشكلة رقم 267647323: لا تعمل الشبكة على المحاكي الذي تم تشغيله من "استوديو Android"
- [إصلاح خطأ] المشكلة رقم 268498686 شاشة المحاكي تومض
- [إصلاح خطأ] المشكلة رقم 270034824 انخفاض أداء المحاكي بعد التحديث إلى الإصدار 33.1.1
- [إصلاح الخطأ] المشكلة رقم 225541819 يؤدي بدء تشغيل Chrome إلى تعطُّل المحاكي على x86_64
- [إصلاح خطأ] المشكلة رقم 257097404 لا يعرض المحاكي الوقت الصحيح بعد تنشيط المضيف
- إضافة ميزة إعداد تقارير الأعطال لأجهزة Apple M1
32.1.11 (8 فبراير 2023)
تم اختباره باستخدام الإصدارات Canary 2 من Giraffe وBeta 1 من Flamingo وPatch 1 من Electric Eel في "استوديو Android".
- تحسينات سرعة الشبكة
- دعم الماوس في المحاكي المضمّن
- تحسينات على Virtio-snd
- إيقاف استخدام الروابط الرمزية أثناء فك ضغط Android Emulator أثناء التثبيت
- إصلاح العطل في emulator-check
31.3.14 (13 ديسمبر 2022)
تم اختباره باستخدام Android Studio Dolphin وElectric Eel RC1 وFlamingo Canary 9.
- [إصلاح خطأ] تم إصلاح أعطال جهاز Android الافتراضي التي تحدث عند تسجيل الدخول إلى "متجر Google Play".
31.3.13 (27 أكتوبر 2022)
تم اختباره باستخدام الإصدارات Dolphin وElectric Eel Beta 2 وFlamingo Canary 5 من "استوديو Android".
- [إصلاح خطأ] المشكلة رقم 249948338: مَعلمة المنطقة الزمنية لا تعمل
- [إصلاح خطأ] المشكلة رقم 249366543: لا يعمل خيار المحاكي -dns-server بعد المستوى 31 لواجهة برمجة التطبيقات
31.3.12 (10 أكتوبر 2022)
تم الاختبار باستخدام الإصدار التجريبي الأول من استوديو Android Dolphin وElectric Eel.
يتضمّن هذا التحديث التحسينات والإصلاحات التالية:
- [إصلاح خطأ] المشكلة رقم 247843000: خطأ في معالجة المسار النسبي لـ "جهاز Android افتراضي"
- زيادة حجم القرص للمستوى 24 من واجهة برمجة التطبيقات والإصدارات الأحدث
31.3.11 (23 سبتمبر 2022)
تم اختباره باستخدام الإصدار Dolphin من "استوديو Android" والإصدار Canary 10 من Electric Eel.
يتضمّن هذا التحديث التحسينات والإصلاحات التالية:
- [إصلاح خطأ] تعطُّل جهاز Android افتراضي (AVD) في المحاكي المضمّن في نافذة عناصر التحكّم الموسّعة
- [إصلاح خطأ] المشكلة رقم 183139207: مشاكل في الصوت مرتبطة بتفعيل المحاكي للميكروفون
- [إصلاح خطأ] المشكلة رقم 229764024: خطأ في اللمس الثابت في جهاز Android الافتراضي (AVD) يؤدي إلى حدوث مشاكل في سلوك واجهة المستخدم
- [إصلاح خطأ] خطأ في تشغيل جهاز Android افتراضي (AVD) بالمستوى 33 من واجهة برمجة التطبيقات على أجهزة Mac M1.
- [إصلاح خطأ] المشكلة رقم 243053479: بطء سرعة الشبكة بعد تحديث المحاكي
- [إصلاح خطأ] المشكلة رقم 244617627: الموقع الجغرافي في "خرائط Google" لا يعمل على نظامَي التشغيل Windows وLinux
- [إصلاح خطأ] المشكلة رقم 232971796: زر "الاتصال بالجهاز" لا يعمل في صفحة "عناصر التحكّم الإضافية" > "الهاتف"
- تحديث Android Emulator إلى minigbm
- نقل نصوص الإنشاء البرمجية إلى Python3
31.3.10 (18 أغسطس 2022)
تم اختباره باستخدام الإصدار التجريبي 5 من استوديو Android Dolphin والإصدار Canary 9 من Electric Eel.
تتوفّر الآن عمليات تنزيل مستقلة للمحاكي. إذا واجهت أي مشاكل أو أعطال في هذا الإصدار الثابت الأخير، يُرجى الإبلاغ عن خطأ وتنزيل إصدار سابق كان يعمل بشكل صحيح من أرشيف تنزيل المحاكي.
يتضمّن هذا التحديث التحسينات والإصلاحات التالية:
- تحسين دعم مسار يونيكود على نظام التشغيل Windows
- تحسين معالجة إيقاف المحاكي حتى يتمكّن من تشغيل جهاز AVD نفسه بنجاح
- تعديل تصميم جهاز Android الافتراضي القابل للطي والإعدادات التلقائية
- أزرار محاكي Wear المحدَّثة
- تحسينات على البث الصوتي عبر gRPC
- تمت إضافة أمر وحدة تحكّم المحاكي القابل لتغيير الحجم
- إصلاح Chrome لواجهة برمجة التطبيقات 31
- [إصلاح خطأ] تعذُّر مصادقة حساب Google باستخدام الإصدار 21.42.18 من GmsCore
الإصدار 31.2.10 (20 أبريل 2022)
تم اختباره باستخدام الإصدار Android Studio Dolphin Canary 8 والإصدار Chipmunk RC 1.
يتضمّن هذا التحديث التحسينات والإصلاحات التالية:
- إضافة أداة مساعدة لتحميل دوال Vulkan مع عناصر احتياطية
- [Bug Fix] Fix gcc8 build error
31.2.9 (23 مارس 2022)
تم الاختبار باستخدام الإصدار Android Studio Dolphin Canary 7.
يتضمّن هذا التحديث الإصلاح التالي:
- [إصلاح خطأ] تجاهُل الضغط على الذاكرة عند حفظ لقطة على M1
31.2.8 (7 فبراير 2022)
تم الاختبار باستخدام الإصدار 1 من حزمة تصحيح استوديو Android Bumblebee والإصدار 6 من Chipmunk Canary.
يتضمّن هذا التحديث التحسينات والإصلاحات التالية:
- [إصلاح خطأ] تعذُّر تسجيل الدخول إلى التطبيقات
- [إصلاح خطأ] المشكلة رقم 215368358: سيؤدي الأمر "adb reboot" على نظام Intel الأساسي إلى تعطُّل جهاز Android الافتراضي (AVD) مع ظهور رسالة "vcpu shutdown request" (طلب إيقاف تشغيل وحدة المعالجة المركزية الافتراضية)
31.2.7 (1 فبراير 2022)
تم اختباره باستخدام الإصدار 1 من حزمة تصحيح Android Studio 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.
- [إصلاح خطأ] لم يعمل أمر وحدة تحكّم الماوس الخاص بالحدث.
- تمت إضافة فحص KVM لإنشاء جهاز Android افتراضي (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 وkernel.
- تسريع عرض Vulkan
- تمت إضافة إمكانية تصحيح أخطاء اللقطات عند تعذُّر الاختبار.
- virtio-gpu: تم تعديل التعريفات لإتاحة أحدث تعدادات لموارد blob.
- تمت إضافة ميزة اللقطات لعمليات نقل الرسومات من النوع "asg".
- macOS: تمت إضافة إمكانية إنشاء التطبيقات باستخدام الإصدار 11.1 من حزمة تطوير البرامج (SDK) لنظام التشغيل macOS والإصدارات الأحدث.
- يتم تفعيل KVMclock تلقائيًا في صور النظام الأحدث.
- تمت إضافة إمكانية استخدام أداة استشعار معدّل نبضات القلب في محاكيات Wear.
- تمت إزالة الخلفية libportability Vulkan.
- تمت إضافة المزيد من الميزات في محاكي المودم.
30.0.26 (16 أغسطس 2020)
يتضمّن هذا التحديث العديد من الميزات الجديدة والتحسينات على الميزات الحالية وإصلاحات الأخطاء.
دعم الأجهزة القابلة للطي من خلال أداة استشعار المفصل الافتراضي والعرض الثلاثي الأبعاد
تمت إضافة إمكانية استخدام أدوات استشعار المفصلات في الأجهزة القابلة للطي. يتطلب ذلك صورة نظام Android 11 مستقبلية وإعدادات AVD. تم الآن دمج العرض الثلاثي الأبعاد للأجهزة القابلة للطي ومَعلمات المفصلات مع الإعدادات المسبقة الحالية للأجهزة القابلة للطي. يمكن استخدام ما يلي، على سبيل المثال، مع ملف
config.iniالخاص بجهاز AVD القابل للطي مقاس 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تحمل الأجهزة القابلة للطي الآن أيضًا مَعلمة نوع فرعي. أصبح الموقع
hw.sensor.hinge.sub_type = hinge/foldالتابع لـ "config.ini" متاحًا الآن. يمكنك الاطّلاع على منشور المدوّنة التطوير لنظام التشغيل Android 11 باستخدام Android Emulator لمعرفة المزيد من المعلومات.تم الآن تفعيل أداة استشعار المفصلة تلقائيًا.
إذا تم ضبط جهاز قابل للطي، يرسل المحاكي الآن تحديثات أجهزة استشعار زاوية المفصلة وتغييرات الوضع إلى الجهاز الضيف. ستعمل الأجهزة القابلة للطي الحالية الآن على تعديل زاوية أداة استشعار المفصلة ووضعيتها عند الضغط على زرَّي الطي أو الفتح في شريط الأدوات.

محاكي لمضيفي 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 إلى الإصدار M83.
- يتيح المحاكي الآن بث الصوت في الحاويات عبر WebRTC.
- تمت إزالة نقطة نهاية مسار darwinn.
- أصبحت ميزة فك ترميز CUDA VPx للفيديو متاحة الآن، إذا كانت ميزة فك ترميز CUDA VPx متاحة في الجهاز، من خلال متغيّر البيئة
ANDROID_EMU_MEDIA_DECODER_CUDA_VPX=1. - على نظام التشغيل macOS، تتوفّر الآن SSE 4.1 و4.2 من داخل نظام Android الضيف.
- على نظام التشغيل macOS، يتم الآن تفعيل INVTSC تلقائيًا. يمكن أن يؤدي ذلك إلى تحسين دقة قياسات الوقت من الضيف.
- نتتبّع الآن لوحة التحكّم الموسّعة التي اختارها المستخدم في المقاييس.
- يستخدم محاكي Linux الآن ساعة KVM paravirtualized عندما يكون إصدار نواة الضيف >= 5.4 (صور نظام R أو أحدث).
- يستخدم المحاكي الآن LZ4 لفك ضغط نواة نظام التشغيل الضيف، ما يجعله متوافقًا مع مسار النواة الحديث.
تمت إضافة أوامر وحدة التحكّم للحصول على دليل AVD للمحاكي ومسار ملف الاكتشاف في حالة الاستخدام المضمّنة في "استوديو Android" ومسار اللقطات:
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>
لتسهيل توفير مساحة الشاشة العمودية، أضفنا خيارًا لإخفاء إطار الجهاز لجهاز AVD الحالي في عناصر التحكّم الموسّعة > الإعدادات. لإخفاء إطارات الأجهزة لجميع أجهزة Android الافتراضية (AVD) على مستوى العالم، أتحنا علامة الميزة
NoDeviceFrameالتي يمكن تفعيلها من خلال تشغيل المحاكي من سطر الأوامر باستخدام الإطار-feature NoDevice، أو لتثبيتها، يمكنك إضافةNoDeviceFrame = onإلى~/.android/advancedFeatures.ini(أنشئ هذا الملف إذا لم يكن موجودًا).تمت إضافة عنصر قائمة منسدلة في صفحة شبكة الجوّال لتفعيل ميزة الاتصال المحدود بالإنترنت وإيقافها، وهذا الإجراء لا يؤثر في صور النظام القديمة التي لا تتيح تفعيل ميزة الاتصال المحدود بالإنترنت على شبكة الجيل الخامس.
- تمت أيضًا إضافة أمر وحدة التحكّم للغرض نفسه:
gsm meter on|off
- تمت أيضًا إضافة أمر وحدة التحكّم للغرض نفسه:
تمت ترقية سلسلة الأدوات / الإصدار إلى C++17.
الإصلاحات: المحاكي المضمّن
- من المفترض أن تعمل الحافظة الآن.
- تم إصلاح مشكلة تسليم الأحرف الكبيرة كأحرف صغيرة في المحاكي.
- تم إصلاح مشكلة تحميل الرمز المميّز لوحدة التحكّم من مسار يونيكود في نظام التشغيل 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.
- تم إيقاف زر "التكبير/التصغير" (Zoom) لأجهزة Android الافتراضية القابلة للطي، لأنّه كان يتسبب في حدوث مشاكل.
- يعرض المحاكي الآن وقت التشغيل الناتج عن إعادة تشغيل الجهاز بشكل صحيح.
- Linux: في حال عدم توفّر أذونات KVM كافية، يطبع المحاكي الآن تعليمات تصحيح الأخطاء بسرعة أكبر.
- تم إصلاح مشكلة عدم تمكُّن المحاكي من تشغيل صور النظام الحديثة بدون تسريع.
- تم إصلاح مشكلة تلف الذاكرة أو تعطُّل التطبيق عند بدء التشغيل من أداة رصد اكتمال التشغيل.
- تم إصلاح مشكلة تسرُّب الذاكرة أثناء جلسات تسجيل الشاشة الطويلة.
- تم تعديل رموز المحاكي لتعكس هوية Studio 4.1 البصرية.
- تمت إضافة دعم أفضل لرصد الجلسات عن بُعد على نظام التشغيل Windows.
الإصلاحات: الرسومات وفك ترميز الفيديو
- تم إصلاح مشكلة ظهور شاشة سوداء في أحدث إصدار من لعبة Asphalt 9.
- تمت إزالة الرسائل غير المرغوب فيها حول تفريغ المخزن المؤقت المعيّن باستخدام
NULL. - تم إصلاح حالة السباق عند إزالة حالة Vulkan عند خروج تطبيق Vulkan ضيف.
- أصبحت أدوات تظليل محاكاة Vulkan ASTC/ETC2 مدمجة الآن في مكتبة libOpenglRender. سيكون هذا أكثر موثوقية من القراءة من نظام الملفات.
- تم إصلاح مشكلة في Vulkan حيث إذا تم تشغيل مثيل Vulkan 1.0 على المضيف، سيقوم
vkGetImageMemoryRequirements2KHRبمسح حقلpNextالخاص بالبنيةVkMemoryRequirements2التي تم إرجاعها بشكل غير صحيح. - تم إصلاح مشكلة تسرُّب الذاكرة في أداة عرض Vulkan.
- تم إصلاح مشكلة حديثة حيث تعذّر تجميع برامج تظليل GLSL ES 1.00 بأسماء متغيّرة مثل
isampler2D. - تم تحديث مترجم تظليل ANGLE مع إصلاحات مختلفة تعالج الفشل المحتمل في تجميع أدوات التظليل على Linux.
- يتعطّل المحاكي الآن إذا تعذّر تجميع برنامج تظليل blit الأساسي الخاص بالمخزن المؤقت للإطارات، وذلك لتتبُّع هذه الظاهرة.
- تم تحديث مترجم تظليل 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 افتراضي (AVD) تم تفعيل "وضع النوافذ الحرة" فيه من خلال اختيار الملف الشخصي لجهاز لوحي بحجم 13.5 بوصة يتيح استخدام "وضع النوافذ الحرة" عند إنشاء جهاز افتراضي في "استوديو Android". يتطلّب ملف تعريف الجهاز هذا صورة نظام تعمل بالإصدار Android 11 معاينة المطور 3 أو إصدار أحدث.
المشاكل المعروفة
لا يمكن حاليًا تغيير حجم النوافذ الحرة بسبب مشاكل في نقل التركيز إلى "مدير النوافذ". وستتم معالجة هذا الأمر في إصدار مستقبلي لصورة نظام Android 11.
30.0.0 (19 فبراير 2020)
يتضمّن هذا التحديث صور نظام Android 11 (مستوى واجهة برمجة التطبيقات 30) وتحسينات في الأداء عند تشغيل برامج ARM الثنائية.
صور نظام Android 11
يمكنك الآن إنشاء جهاز Android افتراضي يعمل بنظام التشغيل Android 11 من خلال اختيار أي من صور النظام المتاحة للمستوى 30 من واجهة برمجة التطبيقات:
- x86: يتضمّن واجهات التطبيق الثنائية (ABI) لكل من x86 وARMv7.
- x86_64: تتضمّن واجهات التطبيق الثنائية (ABI) التالية: x86 وx86_64 وARMv7 وARM64.
إتاحة استخدام برامج ARM الثنائية على صور نظام Android 9 و11
إذا لم تتمكّن في السابق من استخدام Android Emulator لأنّ تطبيقك يعتمد على برامج ARM الثنائية، يمكنك الآن استخدام صورة نظام Android 9 x86 أو أي صورة نظام Android 11 لتشغيل تطبيقك، فلم يعُد من الضروري تنزيل صورة نظام معيّنة لتشغيل برامج ARM الثنائية. تتوافق صور نظام Android 9 وAndroid 11 هذه مع ARM تلقائيًا وتوفّر أداءً محسّنًا بشكل كبير مقارنةً بالصور التي تتضمّن محاكاة كاملة لـ ARM.
المشاكل المعروفة
- يتعذّر تشغيل بعض برامج ARMv7 الثنائية على صور نظام Android 11 x86 وx86_64. ننصحك بإنشاء حِزم متوافقة مع بنية ARM64 عند استهداف الإصدار Android 11.
29.0.11 (29 مايو 2019)
يتضمّن هذا التحديث التحسينات والإصلاحات التالية:
- نظام التشغيل Windows: يعتمد المحاكي الآن على مكتبة الربط الديناميكي (DLL) لـ
libgccالتي نرسلها بدلاً من تجميعها باستخدامlibgccبشكل ثابت. - نظام التشغيل Linux: تمت إضافة دعم logcat إلى واجهة برمجة التطبيقات gRPC API. لمزيد من المعلومات حول 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 إلى أن يكمل نظام التشغيل الضيف عملية التشغيل (من خلال التشغيل العادي). يساعد هذا الخيار في حلّ المشاكل التي قد تحدث إذا كنت تستخدم المحاكي في بيئة CI تعيد تشغيل المحاكي وتستخدم DDMS في الوقت نفسه. - تم إصلاح خطأ حدث عند تحميل اللقطات حيث كانت
glIsRenderbufferتعرض القيمة غير الصحيحة. - تم إصلاح بعض المشاكل المتعلّقة بالحالة القديمة عند إعادة تشغيل نظام Android الضيف.
- نظام التشغيل Windows: تم إصلاح المشاكل التي كانت تمنع بدء تشغيل المحاكي عندما كان اسم مستخدم Windows يحتوي على أحرف أو مسافات خارج نطاق ASCII.
المشاكل المعروفة
- تم إيقاف واجهة مستخدم اللقطات لصور نظام Automotive لأنّ اللقطات غير متاحة حاليًا لصور النظام هذه.
29.0.6 (1 مايو 2019)
يتضمّن هذا التحديث العديد من الميزات الجديدة والتحسينات على الميزات الحالية وإصلاحات الأخطاء.
إزالة QEMU1 وإيقاف التوافق مع إصدارات 32 بت من Windows
لصيانة المحاكي بشكل أفضل، لم نعد نشحن ملفات QEMU1 الثنائية وملفات Windows الثنائية ذات الـ 32 بت. إذا كنت تستخدم نظام التشغيل Windows 32 بت، لا يمكنك الترقية إلى الإصدار 29.0.6.
متطلبات صور نظام Android Q
إذا أردت تشغيل جهاز Android افتراضي يستخدم صورة نظام Android Q، عليك الآن استخدام الإصدار 29.0.6 (نسخة الإصدار هذه) أو إصدار أحدث.
تحسينات Project Marble
يأتي هذا التحديث في إطار جهودنا المستمرة في مبادرة Project Marble التي تم الإعلان عنها في مؤتمر Android Dev Summit في نوفمبر 2018. لمزيد من المعلومات حول تحسينات Project Marble الأخرى في الإصدارات السابقة، يمكنك الاطّلاع على Android Emulator: تحسينات Project Marble.
في هذا التحديث، تم تخصيص معظم جهودنا في Project 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- يتيح متغيّر البيئة هذا تتبُّع استخدام كل من وحدة المعالجة المركزية وذاكرة الوصول العشوائي. ويفرّق تتبُّع استخدام ذاكرة الوصول العشوائي (RAM) بين استخدام الرسومات وإجمالي الذاكرة المقيمة.
ANDROID_EMU_TRACING=1- يتيح متغيّر البيئة هذا الطباعة في كل مرة تستغرق فيها عملية إدخال أو عملية رسومات وقتًا طويلاً (أطول من 1 ملي ثانية).
- نستخدم أيضًا متغيّر البيئة هذا للمساعدة في تشخيص المشاكل التي واجهها مستخدمو Windows مع المزيد من حالات التقطّع (الإطارات التي تم إسقاطها) مقارنةً بالمستخدمين على نظام التشغيل macOS أو Linux.
تحسينات عامة في Project Marble
يتضمّن هذا التحديث أيضًا التحسينات العامة التالية التي تشكّل جزءًا من مبادرة Project Marble:
- يمكنك الآن إيقاف جميع وحدات vCPU مؤقتًا على المحاكي على الفور من خلال أوامر وحدة التحكّم التالية:
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الآن نتيجة وحدة معالجة الرسومات المضيفة بدلاً من وحدة معالجة الرسومات التي تمت محاكاتها. يساعد هذا التغيير في حلّ المشاكل التي تؤدي إلى عدم عرض الصور ومواد العرض بسبب التنسيق غير المناسب للقراءة. - تمت إضافة إمكانية استخدام إضافات OpenGL ES
GL_EXT_texture_format_BGRA8888وGL_APPLE_texture_format_BGRA8888إذا كانت هذه الإضافات متوافقة مع المضيف. - تمت إضافة المزيد من معلومات التشخيص إلى واجهة مستخدم تقرير الأخطاء. بالإضافة إلى ذلك، يمكنك الوصول إلى
تقارير الأخطاء من وحدة التحكّم باستخدام الأوامر التالية:
telnet localhost 5554avd bugreport
- في صور نظام Android Q، يزيد المحاكي الحد الأدنى لحجم ذاكرة الوصول العشوائي إلى 2 غيغابايت.
- تمت إضافة المزيد من عمليات التسجيل والطباعة عندما يتعذّر على OpenGL أو مراقب الأجهزة الافتراضية بدء التشغيل.
- إذا لم يتمكّن المحاكي من بدء مثيل
-read-onlyمتزامن لجهاز Android افتراضي، سيحاول المحاكي الآن إعادة تشغيل جهاز Android الافتراضي-read-only3 مرات أخرى خلال 3 ثوانٍ. يؤدي هذا التغيير إلى زيادة احتمالية أن يتمكّن المحاكي من تشغيل مثيلات-read-onlyمتزامنة لجهاز AVD إذا لم تنتهِ المثيلات الأخرى القابلة للكتابة لجهاز AVD هذا من تنظيف الملفات القديمة. - بالنسبة إلى صور النظام القادمة، يتوافق المحاكي الآن مع Hardware Composer 2.0. من المفترض أن يؤدي هذا التغيير إلى تقليل عبء برنامج التشغيل عند تشغيل معظم الصور المتحركة.
- يعتمد إصدار المحاكي الآن على CMake/Ninja.
- في واجهة مستخدم عناصر التحكّم الموسّعة في المحاكي، تمت استعادة خطوط التقسيم في جدول اختصارات لوحة المفاتيح.
- يمكن للمستخدمين الآن الموافقة على تزويد فريقنا بمقاييس استخدام وحدة المعالجة المركزية (CPU) وذاكرة الوصول العشوائي (RAM) في فاصل زمني مدته 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: لتسهيل إعدادات CI، يمكنك استخدام خيار سطر الأوامر الجديد
-stdouterr-file <file-name>لإعادة توجيه كل منstdoutوstderrإلى ملف. - تم إصلاح مشكلة استخدام
SO_REUSEADDRبشكل غير صحيح. لمزيد من المعلومات، يُرجى الاطّلاع على تفاصيل عملية الربط. - تم إصلاح مشكلة قديمة في محاكي Windows حيث تعذّر بدء العمليات الفرعية، مثل أوامر ADB، إذا كان اسم المستخدم يحتوي على مسافات.
- تم إصلاح مشكلة عدم تهيئة RCU في سلاسل وحدات المعالجة المركزية الافتراضية (vCPU) في HAXM. قد يؤدي هذا الإصلاح إلى معالجة بعض الأعطال وحالات السباق.
- تم إصلاح عطل حدث مع أنماط معيّنة من حفظ اللقطات وتحميلها من واجهة مستخدم اللقطات باستخدام صور نظام Android Q الحديثة.
- تم إصلاح مشكلة ظهور كاميرا المشهد الافتراضي فارغة عند بدء تشغيل المحاكي من لقطة إذا كان ماكرو الواقع المعزّز قيد التشغيل عند حفظ هذه اللقطة.
- تم إصلاح مشكلة ظهور شاشة سوداء لبعض المستخدمين الذين لديهم إعدادات سطح المكتب البعيد عند تشغيل المحاكي على نظام التشغيل Linux. ولتجنُّب ذلك، يضبط المحاكي الآن
MESA_RGB_VISUALبشكل صريح. لمزيد من المعلومات، يُرجى الاطّلاع على تفاصيل عملية الربط. - تم إصلاح مشكلة ظهور أزرار التدوير على أجهزة Android الافتراضية (AVD) في التلفزيون.
- تم إصلاح مشكلة ظهور نافذة عناصر التحكّم الموسّعة في كل مرة يتم فيها تدوير المحاكي، وذلك في حال ضبط المحاكي على وضع "الظهور دائمًا في المقدّمة".
الملفات الشخصية للأجهزة القابلة للطي
يتضمّن المحاكي الآن ملفات تعريف الأجهزة القابلة للطي. لاستخدام ملفات التعريف الجديدة هذه للأجهزة، يجب استخدام الإصدار 3.5 Canary 10 من "استوديو Android" أو إصدار أحدث.
هناك ملفان شخصيان للأجهزة القابلة للطي يمكنك استخدامهما لإنشاء جهاز Android افتراضي:
- شاشة قابلة للطي مقاس 7.3 بوصة: 1536×2152 في وضع الفتح، و4.6 بوصة 840×1960 في وضع الطي
- هاتف قابل للطي مقاس 8 بوصة: 2200×2480 في الوضع المفتوح، و6.6 بوصة 1480×2480 في الوضع المطوي
عند تشغيل المحاكي باستخدام أحد ملفات تعريف الأجهزة هذه، يمكنك طي الجهاز وفتحه باستخدام إجراءَي الطي والفتح في شريط أدوات المحاكي أو أوامر وحدة التحكّم أو اختصارات لوحة المفاتيح التالية:
- الطي:
Ctrl + F(Command + Fعلى نظام التشغيل macOS) -
توسيع:
Ctrl + U(Command + Uعلى نظام التشغيل macOS)
وحدات ماكرو الواقع المعزّز
يتضمّن المحاكي الآن وحدات ماكرو للواقع المعزّز يمكن أن تساعدك في اختبار إجراءات الواقع المعزّز الشائعة. على سبيل المثال، يمكنك استخدام ماكرو لإعادة ضبط جميع أدوات الاستشعار في الجهاز على حالتها التلقائية.
لمزيد من المعلومات، يُرجى الاطّلاع على اختبار إجراءات AR الشائعة باستخدام وحدات ماكرو.
دعم 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 من مشروع Android المفتوح المصدر (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.
إذا كان لديك وحدة معالجة رسومات 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)
نحاول دائمًا جعل المحاكي متعدد الاستخدامات قدر الإمكان من خلال السماح بعرض وحدة معالجة الرسومات المضيفة والتفاعل في أوسع نطاق من سياقات التشغيل. يواجه مستخدمو CI و"سطح المكتب البعيد" المشاكل التالية منذ فترة طويلة:
- يتضمن إرسال أوامر الإدخال برمجيًا إلى المحاكي إما تشغيل أوامر adb shell التي يمكن أن تواجه عبئًا كبيرًا، أو استخدام وحدة تحكم telnet، وهي أسرع، ولكن قد لا تعمل مع بعض تكوينات الشبكة.
- غالبًا ما يشغّل مستخدمو CI المحاكيات بدون واجهة مستخدم رسومية، ما قد يجعل من الصعب ملاحظة المشاكل التي تتطلّب أن تكون الشاشة مرئية أو تفاعلية.
- غالبًا لا يتمكّن مستخدمو سطح المكتب البعيد من التفاعل مع المحاكي عند استخدام عرض وحدة معالجة الرسومات للمضيف لأنّ عرض وحدة معالجة الرسومات غالبًا ما يكون مرتبطًا بشاشات المضيف غير الافتراضية.
لمعالجة هذه المشكلة، يقدّم المحاكي الآن خدمة gRPC عند تشغيله على جهاز Linux. gRPC هو إطار عمل عام لـ RPC يعمل عبر HTTP.
يتم تلقائيًا إيقاف خدمة gRPC للمحاكي، ولكن يمكنك تفعيلها
باستخدام خيار سطر الأوامر التالي، حيث <port>
هو المنفذ الذي يجب أن يخدم المحاكي طلبات gRPC من خلاله (عادةً 5556):
-grpc <port>
بعد بدء الخدمة، يمكن إصدار أوامر gRPC من العملاء. تسمح مجموعة الأوامر الحالية بإرسال أحداث الإدخال وتلقّي لقطات الشاشة. تساعد هذه الأوامر في معالجة المشاكل التالية:
- يمكن إرسال أوامر الإدخال إلى المحاكي مع وقت استجابة منخفض عبر بروتوكول HTTP. يتيح بروتوكول HTTP أيضًا إرسال الأوامر في إعدادات الشبكة الإضافية.
- يمكن إرسال أوامر لقطات الشاشة للاستعلام عن الشاشة الحالية، حتى إذا كان المحاكي يعمل بدون واجهة مستخدم. ولتحقيق التفاعل، يمكن أيضًا إرسال أحداث الإدخال مرة أخرى إلى المحاكي.
- يمكن لمستخدمي سطح المكتب البعيد تشغيل المحاكي بدون واجهة مستخدم على الشاشة الرئيسية مع العرض المسرَّع لوحدة معالجة الرسومات أثناء استخدام gRPC للحصول على لقطات شاشة وإرسال أحداث الإدخال من أجل التفاعل مع المحاكي.
للحصول على قائمة كاملة بالأوامر المتاحة، يُرجى الاطّلاع على ملف protobuf هذا.
لمساعدتك في بدء استخدام gRPC، قدّمنا بعض نماذج العملاء التي يمكنك الرجوع إليها.
في الوقت الحالي، يشمل ذلك النماذج التالية:
- خدمة مستندة إلى Go يمكن استخدامها للاستعلام عن حالات المحاكي.
- تطبيق React يعرض التفاعل عن بُعد من خلال لقطة شاشة وإدخال RPCs. يتطلّب هذا النموذج الإصدار 3.7.0 أو إصدارًا أحدث من protobuf.
- نموذج Python يرسل طلبات بحث إلى إعدادات الجهاز الافتراضي للمحاكي ثم يرسل سلسلة من الأوامر.
28.0.25 (29 مارس 2019)
يتضمّن هذا التحديث التحسينات والإصلاحات التالية:
إصدار المحاكي بدون واجهة مستخدم رسومية
كان من الصعب إعداد المحاكي باستخدام Docker وغيره من مهام سير عمل الدمج المستمر (CI) بسبب التوقعات الضمنية للنظام بأنّه قادر على دعم Qt مع تبعيات المكتبة المشتركة (من بين مشاكل أخرى).
كخطوة أولى لمعالجة هذه المشكلة، قدّمنا نسخة من مشغّل المحاكي
مع ملفات QEMU التنفيذية التي لا تعتمد على Qt. على نظام التشغيل Linux، لا يزال هناك رابط يؤدي إلى libX11، ولكننا نأمل إزالته قريبًا أيضًا.
لاستخدام المحاكي بدون واجهة مستخدم، شغِّل المحاكي من سطر الأوامر كالمعتاد،
ولكن استبدِل استدعاء البرنامج الثنائي للمحاكي بـ emulator-headless. لمزيد من المعلومات، يُرجى الاطّلاع على تحديث الإصدار 28.1.8 Canary.
- تم إصلاح مشكلة الارتعاش وعرض الإطارات غير الصحيح على وحدات معالجة الرسومات من Intel عند تشغيل صور نظام Android Q.
- تم إصلاح المشاكل التي تؤدي إلى ظهور شاشة سوداء عند استخدام صور نظام Android Q مع مظاهر Pixel 2 XL.
- يتم الآن استخدام أحدث ملفات BIOS الثنائية لبدء تشغيل المحاكي. يمكن أن يساعد هذا التغيير في تقليل أخطاء "طلب إيقاف وحدة المعالجة المركزية الافتراضية" التي تحدث أحيانًا عند تشغيل المحاكي على نظام التشغيل Windows.
- تم نقل إصلاح مشكلة"العرض الخاطئ عند استئناف صور نظام Android Q من لقطة".
- كان المستخدمون يواجهون مشاكل في المحاكيات"غير المصرّح بها"
بسبب تغيير غير متوافق في ADB في الإصدار 28.0.2 من أدوات النظام الأساسي. يمكنك
الآن استخدام ADB بأمان من platform-tools 28.0.2 مع المحاكي. إذا كنت تواجه مشاكل في المحاكيات "غير المصرَّح بها"، اتّبِع الخطوات التالية لتحديد المشاكل وحلّها:
- اخرج من جميع المحاكيات.
- احذف ملفَّي
~/.android/adbkeyو~/.android/adbkey.pub. - نفِّذ الأمر التالي:
adb kill-server - نفِّذ الأمر التالي:
adb devices - امسح بيانات جهاز Android الافتراضي.
- أعِد تشغيل المحاكي.
28.0.23 (29 يناير 2019)
يتضمّن هذا التحديث التحسينات والإصلاحات التالية:
إيقاف إدخال الصوت للمضيف تلقائيًا
وقد أوضح منشور حديث على Reddit كيف أنّ نظام التشغيل Android الضيف سيستخدم دائمًا صوت ميكروفون المضيف، وبالتالي يسمح ببدء عمل عبارة "Ok Google" بشكل غير متوقّع. نعتذر عن ذلك وسنعمل مع فريق Android للتأكّد من إيقاف ميزة "رصد الكلمة الرئيسية" في صورة النظام أيضًا.
لمعالجة هذه المشكلة، أجرينا التغييرات التالية:
- يتم الآن كتم بيانات الصوت الفعلية للمضيف تلقائيًا. عندما يستخدم الضيف الميكروفون، يتم كتم الصوت بدلاً من صوت المضيف.
- إذا أردت استخدام بيانات الصوت الخاصة بالمضيف، يمكنك الآن تفعيل هذا الخيار من خلال الانتقال إلى عناصر التحكّم الموسّعة > الميكروفون وتفعيل الميكروفون الافتراضي يستخدم إدخال الصوت الخاص بالمضيف. يتم إيقاف هذا الخيار تلقائيًا عند إعادة تشغيل المحاكي.
آخر الأخبار حول التحقيقات في استخدام وحدة المعالجة المركزية (CPU)
أثناء تحقيقاتنا في Project Marble، لاحظنا أنّ الاستخدام العالي لوحدة المعالجة المركزية على المحاكي يندرج بشكل عام ضمن الفئات الثلاث التالية:
في وضع عدم النشاط: صور تحديثات التطبيقات التلقائية في متجر Google Play
تبيّن لنا أنّه يتم تحديث جميع التطبيقات المثبّتة على فترات عشوائية، حتى عندما لا يكون المستخدم مسجِّلاً الدخول. أثناء العملية، يرتفع استخدام وحدة المعالجة المركزية إلى عدد النوى × %100 (عادةً ما يكون حوالي %400) في GMSCore وdex2oat. يمكنك الحدّ من هذه المشكلة من خلال إيقاف التحديثات التلقائية للتطبيقات في تطبيق "متجر Google Play".
في وضع عدم النشاط: رصد الكلمة المفتاح
عندما تكون على الشاشة الرئيسية وبدون أي تطبيق في المقدّمة، يمكن أن يكون هناك قدر كبير من استخدام وحدة المعالجة المركزية (~25% مع ارتفاعات تصل إلى %50). ويحدث ذلك بسبب ميزة رصد الكلمة المفتاح التي ترسل إشارات باستمرار إلى المضيف لا يمكنك التخفيف من حدة هذه المشكلة عن طريق إيقاف إدخال الصوت من المضيف لأنّ تكلفة وحدة المعالجة المركزية (CPU) تنتج بشكل أساسي عن الوقت الذي يستغرقه الانتقال إلى الضيف من المضيف. ومع ذلك، يمكنك الحدّ من هذه المشكلة من خلال إبطال الإذن باستخدام الميكروفون من تطبيق Google.
أثناء النشاط، وأحيانًا في وضع عدم النشاط: الصور المتحركة
المصدر الثالث للاستخدام العالي لوحدة المعالجة المركزية هو الصور المتحركة. لقد وجدنا أنه من خلال تحسين حزمة برامج تشغيل الرسومات، يمكننا أيضًا تقليل استخدام وحدة المعالجة المركزية حتى عندما لا يكون المحاكي في وضع الخمول. سنطرح تحسينات على برامج تشغيل الرسومات تدريجيًا كجزء من مشروع "ماربل".
28.0.22 (21 ديسمبر 2018)
يتضمّن هذا التحديث التحسينات والإصلاحات التالية:
- تم إصلاح مشكلة قديمة كانت تؤدي في بعض الإعدادات إلى إعادة تشغيل محاكي Mac أو حدوث ذعر النواة عند حفظ Quickboot. (المشكلة 120951634)
- عند استخدام ملف تم ربطه كلقطة لذاكرة الوصول العشوائي (RAM)، يلغي المحاكي الآن ربط الملف بشكل صريح عند الخروج.
28.0.20 (11 ديسمبر 2018)
يتضمّن هذا التحديث التحسينات والإصلاحات التالية:
- تم إصلاح مشكلة في نظام التشغيل Windows كانت تؤدي إلى تجميد المحاكي عند تحميل اللقطة مع طُرز معيّنة من وحدات معالجة الرسومات Intel.
- تم إصلاح مشكلة كانت تؤدي إلى ظهور حالة جهاز Android Debug Bridge (ADB) على أنّها
unauthorizedعند استخدام موقعANDROID_SDK_HOMEغير عادي. - تم إصلاح مشكلة في نظام التشغيل Windows كانت تؤدي إلى تعطُّل المحاكي عند تشغيل صور النظام مع إيقاف تسريع وحدة المعالجة المركزية.
- تم إصلاح مشكلة ظهور شاشة المحاكي بشكل منقّط. من المفترض أن تعمل ميزة "خفض معدّل العيّنات" الآن.
- تم إصلاح مشكلة في نظام التشغيل macOS 10.14 والإصدارات الأحدث حيث يمكن أن يصبح عنصر التحكّم في مظهر الماوس في كاميرا المشهد الافتراضي حساسًا للغاية بسبب التفاعل مع إعدادات أمان تسهيل الاستخدام الجديدة.
- تم إصلاح خطأ في حساب المنطقة الزمنية قد يؤدي إلى تغيير ساعة المحاكي بشكل متقطع.
- تم إصلاح أخطاء العرض في العديد من تطبيقات cocos2d وUnreal Engine.
- تمت إضافة إمكانية استخدام شبكة Wi-Fi من نظير إلى نظير في المحاكي.
يمكن الآن لمحاكيَين التواصل مع بعضهما مباشرةً عبر شبكة Wi-Fi في حال استخدام أحدث صورة من "متجر Google Play" لنظام التشغيل Pie. لاستخدام شبكة 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 الافتراضي نفسه في الوقت نفسه. وتكون النُسخ التي يتم تشغيلها بعد النسخة الأولى للقراءة فقط، ويتم تجاهل التغييرات التي تم إجراؤها على القرص الافتراضي للضيف عند الخروج.
لتشغيل نُسخ متعددة من جهاز AVD نفسه في الوقت نفسه، يمكنك تشغيل أي نُسخ
بعد النسخة الأولى من سطر الأوامر باستخدام علامة -read-only.
تتوفّر هذه الميزة من خلال نسخ ملفات QCOW2 المرتبطة
بالأجزاء القابلة للكتابة من صورة Android. لمساعدتك في إدارة مساحة القرص، أضفنا أيضًا أداة سطر الأوامر qemu-img للسماح لك بتثبيت ملفات QCOW2 مسبقًا قبل تشغيل نُسخ متعددة.
بالإضافة إلى ذلك، عند استخدامها مع ميزة لقطات ذاكرة RAM للضيف المستندة إلى الملفات ، تشارك نُسخ متعددة من جهاز Android الافتراضي لقطة Quickboot الأساسية لجهاز Android الافتراضي كمصدر شائع لذاكرة RAM للضيف التي تستخدم تقنية "النسخ عند الكتابة". وتعني هذه السمة أنّ النُسخ تتشارك في جزء كبير من ذاكرة الوصول العشوائي (RAM). استخدِم هذه الميزة لإجراء الاختبارات التي تتطلّب تشغيل أجهزة متعددة بالتوازي.
نقدّر ملاحظاتك حول حالات الاستخدام المحتملة التي تشكّل جزءًا من سير العمل التفاعلي أو سير عمل CI العادي. يُرجى إنشاء مشاكل أو التصويت لصالحها في Issue Tracker.
لقطات من ذاكرة الوصول العشوائي (RAM) للضيف مستندة إلى الملفات
من خلال تخصيص ذاكرة الوصول العشوائي (RAM) للضيف وتعيينها مسبقًا كملف، يمكن للمحاكي الآن حفظ لقطات Quickboot أثناء وقت التشغيل، بدلاً من تنفيذ كل العمل عند الخروج. إذا كنت تواجه حاليًا أوقات حفظ طويلة عند إغلاق المحاكيات، فقم بتمكين هذه الميزة لتحسين أداء Quickboot. By default, a Quickboot snapshot is saved on exit and loaded again every time, like suspending and waking a real device.
بما أنّ ذاكرة RAM الخاصة بنظام Android الضيف يتم حفظها تلقائيًا الآن، إذا أردت تحديد حالة جهاز وتحميلها بشكل متكرر، عليك إعلام المحاكي بتجاهل التغييرات بعد كل جلسة. ويمكنك إجراء ذلك بالطرق التالية:
- استخدِم علامات
-no-snapshot-saveأو-read-onlyعند تشغيل المحاكي من سطر الأوامر. - انتقِل إلى عناصر التحكّم الإضافية > اللقطات > الإعدادات وبدِّل هل تريد حفظ الحالة الحالية تلقائيًا في Quickboot؟ إلى لا.
- ستحتاج إلى إعادة تشغيل المحاكي بعد تحديد هذا الخيار. إذا تم ضبط المحاكي على الحفظ التلقائي، يمكنك تشغيل الأمر التالي لتعيين نقطة تفتيش:
بعد تشغيل هذا الأمر، ستبقى لقطة Quickboot للمحاكي عند نقطة التحقق هذه. شغِّل الأمر نفسه مرة أخرى لتحميل المحاكي من نقطة التحقق.adb emu avd snapshot remap 0
تعمل اللقطات التي يتم التقاطها وتحميلها من خلال واجهة مستخدم اللقطات كما كانت تعمل من قبل، بدون ربط الملفات.
بما أنّ هذا تغيير كبير في طريقة عمل Quickboot، نقدّر كثيرًا
ملاحظاتك حول ما إذا كان يحسّن أداء Quickboot ونوع
المشاكل التي تواجهها عند استخدامه. إذا واجهت مشاكل، يمكنك إيقاف هذه الميزة من خلال إضافة السطر التالي إلى ملف ~/.android/advancedFeatures.ini:
QuickbootFileBacked = off
عند بدء تشغيل المحاكي من لقطة (إما باستخدام خيار سطر الأوامر -snapshot أو التشغيل من لقطة في أداة إدارة أجهزة Android الافتراضية)، يوقف المحاكي كلاً من الحفظ التلقائي للقطات 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 Emulator:
- x86: يوفّر
gdbstubالآن إمكانية الوصول إلى سجلّات SSE. - نسخ القرص: تمت إضافة ميزة قفل النسخ وتفعيلها تلقائيًا. Multiple QEMU processes cannot write to the same image as long as the host supports OFD or posix locking, unless options are specified otherwise.
- يتيح
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 Emulator الآن استخدام ميزة ضغط الزخرفة ASTC LDR
(
GL_KHR_texture_compression_astc_ldr) لصور النظام التي تستخدم مستوى واجهة برمجة التطبيقات 28 أو الإصدارات الأحدث. - من المفترض أن تتمكّن معظم وحدات معالجة الرسومات الحديثة الآن من تشغيل المحاكي مع تفعيل OpenGL ES 3.x تلقائيًا بدون استخدام علامة الميزة
GLESDynamicVersion. - تم إيقاف
-gpu guest(العرض البرمجي في نظام التشغيل الضيف) نهائيًا. أما صور النظام لمستوى واجهة برمجة التطبيقات 28 أو أعلى، فتتحول الآن تلقائيًا إلى استخدام Swiftshader بدلاً من ذلك (-gpu swiftshader_indirect). - إذا تم تشغيل المحاكي من سطر الأوامر باستخدام العلامة
-no-window، سيصبح Swiftshader هو العارض التلقائي.
الموقع الجغرافي
- يمكن للمحاكي الآن تعديل الاتجاه مع الموقع الجغرافي لخط العرض وخط الطول. يضبط جهاز الاستشعار الافتراضي لمقياس المغناطيسية نفسه ديناميكيًا على الشمال المغناطيسي من خلال استنتاج الحركة عند تشغيل ملف GPX أو KML.
- يمكن الآن ضبط سرعة الجهاز في صفحة "الموقع الجغرافي".
- عند تشغيل ملف GPX أو KML، يتم ضبط السرعة تلقائيًا، ويتم ضبطها على صفر عند انتهاء التشغيل.
- لم يعُد الارتفاع مقصورًا على أن يكون بين -1,000 و+10,000 متر.
- تم إصلاح مشكلة عدم تحديث الموقع الجغرافي الافتراضي لنظام تحديد المواقع العالمي (GPS) بشكل دوري ما لم يتم فتح نافذة "عناصر التحكّم الإضافية" مرة واحدة على الأقل.
الكاميرا
على نظام التشغيل Windows، يتوافق المحاكي الآن مع المزيد من كاميرات الويب لأنّه يغيّر حجم إطارات الكاميرا التي يتم عرضها من كاميرا الويب بشكل ديناميكي. تمنع هذه الميزة أيضًا الأخطاء في عرض الإطارات من التسبب في توقف المحاكي عن العمل.
متجر Play
لمعالجة المشاكل المتعلّقة بنفاد مساحة القرص في صور "متجر Google Play"، يعمل المحاكي الآن تلقائيًا على تغيير حجم قسم بيانات المستخدم إلى 6 غيغابايت عند تشغيله باستخدام جهاز Android افتراضي جديد في "متجر Google Play".
تحسينات عامة على الجودة وإصلاحات
- أبلغ بعض المستخدمين أنّ المحاكي يعمل ببطء. لقد حدّدنا سببًا محتملاً واحدًا، وهو أنّ الدليل المؤقت للمحاكي يحتوي على عدد كبير جدًا من الملفات القديمة. كحل بديل، لم يعُد المحاكي يخزّن ملفات التحقّق من نشاط ADB في هذا الدليل. ومع ذلك، قد يساعد أيضًا حذف محتويات
هذا المجلد. يقع المجلد في أحد المواقع التالية،
حسب نظام التشغيل:
- Windows:
C:\Users\<username>\AppData\Local\Temp\AndroidEmulator\* - نظام التشغيل macOS أو Linux:
/tmp/android-<username>/*
- Windows:
- إذا تعذّر بدء تشغيل المحاكي بسبب عدم توفّر ذاكرة وصول عشوائي (RAM) كافية، ستظهر رسالة خطأ. إذا كنت تستخدم نظام التشغيل Windows ولاحظت أنّ هناك ذاكرة وصول عشوائي (RAM) متاحة، ولكن لا يزال يتعذّر عليك تشغيل المحاكي، قد يكون قد تم تجاوز الحد الأقصى لرسوم الالتزام. للحصول على مساعدة بشأن هذه المشكلة، يُرجى الاطّلاع على صفحة تحديد المشاكل وحلّها في المحاكي.
- يتجاوز خيار سطر الأوامر
-sysdirالآن دليل صورة النظام المستنتَج بشكل صحيح. - يتيح المودم الافتراضي الآن طلب البحث
+MAIالخاص بمعلومات نشاط النموذج. - تم إصلاح مشاكل مختلفة متعلقة بتسرُّب الذاكرة وتلفها واستخدام وحدة المعالجة المركزية. إذا كنت تواجه أعطالاً أو تسرُّبًا في الذاكرة أو استخدامًا عاليًا للموارد، يُرجى إنشاء مشكلة في Issue Tracker.
- تم إصلاح مشكلة ظهرت مرة أخرى على نظام التشغيل macOS 10.14، حيث كان استخدام سماعات رأس بلوتوث مع المحاكي يؤدي إلى خفض جودة الصوت بشكل عام. لتجنُّب ذلك، يتجنّب المحاكي الآن استخدام صوت البلوتوث عند تشغيله على نظام التشغيل macOS. (المشكلة 37070892)
- تم إصلاح مشكلة في نظام التشغيل Windows حيث لا تكون ساعة المحاكي في المنطقة الزمنية الصحيحة.
- تم إصلاح مشكلة بطء المحاكي وتوقفه عن العمل على أنظمة Linux التي تستخدم محركات أقراص ثابتة (HDD) دوّارة.
- تم إصلاح بعض التحذيرات المتعلّقة ببرنامج التجميع والتي قد تؤدي إلى تلف حزمة البيانات على نظام التشغيل macOS.
- تم إصلاح المشاكل التي قد تؤدي إلى ظهور تقارير مضلِّلة عن توقّف التطبيق عن الاستجابة.
- تم إصلاح مشكلة في إتلاف مجموعات سلاسل المحادثات التي قد تؤدي إلى حدوث عطل في حال عدم إنشاء إحدى سلاسل المحادثات بنجاح.
- تم إصلاح مشكلة في نظام التشغيل macOS حيث تصبح الموقتات غير موثوقة، مما يؤدي إلى توقفها وغيرها من السلوكيات الغريبة. إذا واجهت مشكلة توقُّف المحاكي عن العمل على نظام التشغيل macOS، يُرجى إنشاء مشكلة في Issue Tracker.
- تم إصلاح مشكلة كانت تؤدي إلى إيقاف واجهة المستخدم عند إغلاق المحاكي، ولكن بدون إغلاق المحاكي فعليًا.
- تم إصلاح المشاكل المتعلقة بالأعطال المتفرقة، بما في ذلك الإلغاء بسبب فتح عدد كبير جدًا من مثيلات
/dev/urandom. - تم إصلاح مشكلة كانت تؤدي إلى تعذُّر بدء تشغيل المحاكي بعد المرة الأولى في حال إنهاء ADB بالقوة.
- تمت إزالة إصدار MIPS. إذا كنت لا تزال بحاجة إلى MIPS، يُرجى إنشاء مشكلة في Issue Tracker.
- تم إصلاح مشكلة قد تؤدي إلى تلف اتصالات ADB عند تحميل اللقطة.
- تم إصلاح مشكلة ظهور صورة لاحقة في نافذة المحاكي أو انتقالها فورًا إلى خارج الشاشة عند استئناف لقطة شاشة كان فيها اتجاه الجهاز مختلفًا عن الاتجاه التلقائي لجهاز Android الافتراضي (AVD).
- تم إصلاح المشاكل المتعلقة بالأعطال عند حفظ اللقطات.
- على نظام التشغيل Linux، يمكن أن تتسبب أنظمة ملفات btrfs في حدوث تباطؤ شديد لأنّ المحاكي
يحفظ اللقطات تلقائيًا ويستخدم ميزة "النسخ عند الكتابة" لأجهزة الأقراص
الافتراضية. ننصحك بتنظيف دليل
~/.android/avdوتنفيذ الأمر التالي على دليل~/.android/avdالفارغ: يؤدي ذلك إلى إنشاء لقطات جديدة في مجلد تم فيه إيقاف ميزة "النسخ عند الكتابة".chattr +C
الإصدار 7.3.2 من HAXM
نود أن نذكر HAXM 7.3.2 مرة أخرى لأنه يجب تثبيته حتى تعمل صور النظام الحديثة بشكل صحيح على المحاكي. من المفترض أن يكون الإصدار 7.3.2 من HAXM متاحًا في القناة الثابتة، ويمكن أيضًا تثبيته يدويًا من https://github.com/intel/haxm/releases.
في ما يلي بعض المشاكل التي تم حلّها في هذا الإصدار من HAXM:
- تم إصلاح الأعطال العشوائية لأنظمة التشغيل المُستضافة التي تستخدم نواة Linux حديثة (>= 4.6). على سبيل المثال، Ubuntu 18.04 (#39، #74).
- تم إصلاح خطأ في محاكي تعليمات x86 قد يؤدي إلى تعطُّل المضيف (#93).
إيقاف إصدارات 32 بت من Windows نهائيًا
بسبب انخفاض معدّل الاستخدام وارتفاع تكاليف الصيانة، نخطّط لإيقاف الإصدار 32 بت من Android Emulator الذي يعمل على نظام التشغيل Windows. سنطرح خطة انتقالية قبل إزالة الإصدار 32 بت من Android Emulator وإيقافه نهائيًا. ومع ذلك، فإننا نسعى بنشاط للحصول على أي ملاحظات أو مخاوف بشأن هذا التغيير المستقبلي.
يُرجى إعلامنا في Issue Tracker إذا كنت تعتمد حاليًا على الإصدار 32 بت من Android Emulator الذي يعمل على نظام التشغيل Windows، وإخبارنا بأفضل طريقة للعمل معك في المستقبل.
الإصدار 27.3.10 (أغسطس 2018)
يتضمّن هذا التحديث إصلاح الخطأ التالي:
إصلاح إعدادات حجم ذاكرة الوصول العشوائي (RAM)
أبلغ بعض المستخدمين أنّ المحاكي يعمل ببطء. لقد حدّدنا سببًا واحدًا محتملاً، وهو أنّه تم ضبط حجم ذاكرة الوصول العشوائي (RAM) في ملف config.ini الخاص بجهاز Android الافتراضي بشكل غير صحيح.
وللحدّ من هذه المشكلة، يزيد المحاكي الحدّ الأدنى لمستوى ذاكرة الوصول العشوائي للصور التي
تستخدم المستوى 26 من واجهة برمجة التطبيقات أو المستويات الأعلى إلى المستوى التلقائي في "استوديو Android" وهو 1536 ميغابايت. إذا
لم يكن ملف config.ini الخاص بجهاز Android الافتراضي يعرض hw.ramSize بالميغابايت،
يُرجى إنشاء مشكلة في أداة تتبُّع المشاكل.
يمكنك العثور على ملف 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 افتراضي لإعداد جهاز معيّن واختيار اللقطات المحفوظة التي تريد تحميلها عند بدء تشغيل المحاكي.
بدءًا من الإصدار استوديو Android 3.2 Canary 13، يتضمّن كل إعداد جهاز عنصر تحكّم في الإعدادات المتقدّمة في مربّع حوار "إعداد الجهاز الافتراضي" يمكنك من خلاله تحديد لقطة جهاز Android الافتراضي التي سيتم تحميلها عند بدء تشغيل جهاز Android الافتراضي.
لاستيعاب هذا التوسّع في ميزات اللقطات، أضفنا فئة اللقطات إلى مربّع حوار عناصر التحكّم الموسّعة. تحتوي هذه اللوحة الجديدة على عناصر تحكّم لحفظ لقطات AVD وتحميلها، بما في ذلك عناصر التحكّم لحفظ لقطة التشغيل السريع وتحميلها والتي كانت في السابق في لوحة الإعدادات.
يمكنك تعديل اسم كل لقطة محفوظة ووصفها.
لمعرفة التفاصيل، يُرجى الاطّلاع على اللقطات.
HAXM 7.2.0
يتوفّر الآن الإصدار 7.2.0 من HAXM في جميع القنوات.
يتضمّن هذا التحديث إصلاحات للأخطاء وتحسينات في التوافق مع كميات كبيرة من ذاكرة الوصول العشوائي. بالإضافة إلى ذلك، من خلال تحديث HAXM والمحاكي 27.3 والإصدارات الأحدث، يتم تحميل محتوى اللقطات في ذاكرة الوصول العشوائي (RAM) عند الطلب بدلاً من تحميل اللقطة بالكامل عند بدء تشغيل الجهاز الافتراضي. من المفترض أن يقلل هذا التغيير بشكل كبير من الوقت اللازم لتحميل لقطة.
لمعرفة التفاصيل، يُرجى الاطّلاع على ضبط تسريع الأجهزة الافتراضية.
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 Emulator.
صور "متجر Google Play" على جهاز Pixel
تم الآن تفعيل "متجر Google Play" لصور أجهزة Pixel وPixel 2. ويتم توضيح ذلك في أداة إدارة أجهزة Android الافتراضية في الإصدار 3.2 من "استوديو Android" والإصدارات الأحدث التي تحمل شعار Google Play في عمود متجر Google Play. تحتوي أجهزة Android الافتراضية التي تم تفعيل "متجر Google Play" عليها على علامة تبويب Google Play في مربّع حوار عناصر التحكّم الإضافية الذي يوفّر زرًا مناسبًا لتحديث "خدمات Google Play" على الجهاز.
اللقطات
يمكنك الآن تحميل لقطة Quick Boot بدون إعادة تشغيل المحاكي. لتحميل لقطة، افتح نافذة عناصر التحكّم الإضافية وانتقِل إلى صفحة الإعدادات وانقر على الزر التحميل الآن.
لقد أجرينا العديد من التحسينات على تحميل اللقطات وحفظها لتحسين كفاءة استخدام الموارد وتقليل الوقت الذي تستغرقه كل عملية. إذا استمرت عمليات الحفظ الطويلة بشكل غير معتاد، يُرجى تقديم مشكلة، مع تقديم تفاصيل عن وحدة المعالجة المركزية (CPU) وذاكرة الوصول العشوائي (RAM) وإعدادات أي برنامج مكافحة فيروسات / جدار حماية / برنامج أمان قيد التشغيل.
العرض باستخدام Skia
عند استخدام صور لواجهة برمجة التطبيقات 27 أو الإصدارات الأحدث، يمكن للمحاكي عرض واجهة مستخدم Android باستخدام Skia، والتي يمكن عرضها بسلاسة وكفاءة أكبر.
في الوقت الحالي، يتطلّب استخدام Skia تفعيله صراحةً.
لتفعيل عرض Skia، استخدِم الأوامر التالية في واجهة adb:
su setprop debug.hwui.renderer skiagl stop start
الكاميرا
على نظام التشغيل Windows، يستخدم Android Emulator الآن Media Foundation كواجهة خلفية لكاميرا الويب، ما يحسّن بشكل كبير الأداء وعدد اللقطات في الثانية لالتقاط كاميرا الويب، بدقة تصل إلى 720p و30 لقطة في الثانية.
على أجهزة Mac، يمكنك الآن استخدام webcam0 وwebcam1 معًا.
متنوعة
تم تغيير خيار سطر الأوامر -phone-number-prefix إلى
-phone-number [number]، ما يسمح بضبط رقم الهاتف
الكامل.
يمكنك الآن استخدام عناوين SMS أبجدية رقمية.
الإصلاحات
- يتم الآن إنشاء إصدار Linux من Android Emulator باستخدام سلسلة أدوات Clang C++ حديثة. يؤدي هذا التغيير إلى حلّ مشكلة تعذُّر بدء تشغيل المحاكي بسبب أخطاء libGL وlibstdc++.
- تم إصلاح عدة أسباب للأعطال وحالات التوقف عن العمل.
- لتجنُّب الأعطال وحالات التوقف الناتجة عن عدم توفّر مساحة كافية على القرص، يتحقّق المحاكي الآن من توفّر مساحة كافية على القرص عند بدء التشغيل، ولن يبدأ إلا إذا توفّرت مساحة خالية تبلغ 2 غيغابايت على الأقل.
- تم إصلاح مشكلة كانت تمنع عرض بعض ألعاب Unity.
- تم إصلاح مشكلة نظام أسماء النطاقات التي تسبّبت في عدم تمكُّن المحاكي من الاتصال بالشبكة.
- تم إصلاح مشكلة تسبّبت في عدم عمل التغييرات على مساحة التخزين الداخلية المخصّصة لجهاز Android افتراضي (AVD) من خلال مربّع حوار "إعدادات الجهاز الافتراضي".
- تم إصلاح مشكلة إنشاء العديد من عمليات adb وعدم إيقافها بشكل صحيح.
- تم إصلاح مشكلة كانت تؤدي إلى توقُّف أزرار التدوير وأجزاء أخرى من واجهة المستخدم عن الاستجابة ما لم تكن نافذة "عناصر التحكّم الإضافية" مفتوحة.
- تم إصلاح مشكلة كانت تؤدي إلى عدم عمل ميزة النسخ واللصق من المضيف ما لم يتم فتح مربّع حوار "عناصر التحكّم الموسّعة" مرة واحدة على الأقل.
- تم تعديل مستطيل تغيير حجم المحاكي بدون إطار ليتوافق بشكل أفضل مع المظهر المرئي للمحاكي.
- يتم الآن إيقاف الهاتف والرسائل القصيرة بشكل صحيح عند تفعيل "وضع الطيران".
- تم إصلاح مشكلة تسببت في إيقاف وظائف الرسائل القصيرة والشبكة الخلوية بعد تحميل لقطة.
- لن تتلقّى بعد الآن رسائل تحذيرية خاطئة تفيد بأنّ
“Unable to open... \pstore.bin. Permission denied.” - تم إصلاح مشكلة كانت تمنع إعادة تحديد موضع جهاز Android الافتراضي على بعض شاشات Mac.
- تم إصلاح المشاكل المتعلقة بوميض الشاشات وظهور شاشات فارغة على أجهزة MacBook Pro الأحدث عند تشغيل أجهزة Android الافتراضية (AVD) باستخدام مظاهر Pixel 2 XL.
- تم إصلاح المشاكل المتعلّقة بالشاشات الفارغة عند التبديل إلى وضع التكبير أثناء تفعيل محاكي بدون إطار.
- تم إصلاح مشكلة كانت تؤدي إلى عدم مزامنة محتوى المحاكي مع مظهر الجهاز عند التكبير.
إذا استمرّت حالات التوقّف أو غيرها من حالات عدم الاستقرار، يُرجى الإبلاغ عن مشكلة.
27.1.12 (مارس 2018)
يتضمّن هذا التحديث إصلاحات للمشاكل التالية:
- انخفضت جودة الصوت عبر البلوتوث بعد بدء تشغيل المحاكي. (المشكلة 37095756)
- تم إرسال المواقع الجغرافية التي تم إرسالها إلى محاكي واحد إلى جميع المحاكيات. (المشكلة 73450633)
- تم تجاهل الموقع الجغرافي لنظام تحديد المواقع العالمي (GPS) الذي تم ضبطه باستخدام وحدة التحكّم من خلال القيم التي تم ضبطها باستخدام عناصر التحكّم الموسّعة > الموقع الجغرافي في واجهة المستخدم التصويرية. (المشكلة 73471760)
إذا استمرّت حالات التوقّف أو غيرها من حالات عدم الاستقرار، يُرجى الإبلاغ عن مشكلة.
من خلال هذا التحديث وصورة النظام الحالية والإصدار المبكر الحصري من "استوديو Android"، يمكنك استخدام Android Emulator لتشغيل تطبيقات الواقع المعزّز التي تم إنشاؤها باستخدام ARCore. للاطّلاع على المتطلبات والتعليمات التفصيلية، يُرجى مراجعة مقالة تشغيل التطبيقات المزوَّدة بميزة الواقع المعزَّز في Android Emulator.
27.1.10 (فبراير 2018)
دقة التقاط الكاميرا
يمكن الآن التقاط لقطات بدقة 720p من كاميرا ويب متصلة.
للعمل مع Android 8.1 (المستوى 27 من واجهة برمجة التطبيقات) وصور النظام الأعلى، يجب أن تكون أي كاميرا ويب متصلة قادرة على التقاط إطارات بدقة 720p.
الإصلاحات
- تم إصلاح مشكلة كانت تؤدي أحيانًا إلى ظهور صورة مشوّهة أو خضراء بالكامل عند التقاطها باستخدام كاميرا الويب.
- تم إصلاح مشكلة كانت تؤدي إلى ظهور الرسالة التالية حتى في حال عدم حدوث توقّف فعلي: "المحاكي: خطأ: تم رصد سلسلة محادثات متوقفة "حلقة معالجة الأحداث في Qt". لم يتم تلقّي ردّ لمدة 15000 ملي ثانية".
إذا استمرّت حالات التوقّف أو غيرها من حالات عدم الاستقرار، يُرجى الإبلاغ عن مشكلة.
27.1.7 (فبراير 2018)
نافذة المحاكي بدون إطار:
By default, emulators with device skin files are now shown without a surrounding window frame. لإظهار إطار النافذة المحيط، فعِّل الخيار إظهار إطار النافذة حول الجهاز في لوحة "الإعدادات" ضمن نافذة عناصر التحكّم الموسّعة.
تحسينات Quick Boot لجعل العمل مع لقطات AVD أكثر كفاءة:
- يمكنك حفظ لقطة من جهاز Android افتراضي في أي وقت باستخدام الزر الحفظ الآن في لوحة "الإعدادات" ضمن مربّع الحوار عناصر التحكّم الإضافية.
- يقلّل المحاكي الوقت المستغرَق لحفظ لقطة في العديد من الحالات من خلال حفظ الفرق فقط بين الحالة الحالية واللقطة المحفوظة سابقًا.
لمعرفة التفاصيل، يُرجى الاطّلاع على مستندات Quick Boot.
تم تحديث المحاكي لاستخدام QEMU 2.9.
تشمل بعض التحسينات الملحوظة ما يلي:
- تم تحسين عمليات الإدخال والإخراج وقفل سلاسل عمليات الإدخال والإخراج بشكل أكثر دقة لتحقيق أداء أفضل.
- تم إصلاح الأخطاء منذ الإصدار QEMU 2.8 (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.تم إصلاح مشكلة عدم كتابة الحرف B الكبير عند الضغط على Shift+B.
27.0.2 (ديسمبر 2017)
توفّر ميزة Quick Boot الجديدة أوقات بدء أسرع للمحاكي، استنادًا إلى لقطة من مثيل جهاز Android الافتراضي (AVD).
يتم تفعيل ميزة Quick Boot تلقائيًا لجميع أجهزة Android الافتراضية. على الرغم من أنّ المرة الأولى التي تبدأ فيها تشغيل جهاز Android افتراضي (AVD) يجب أن يتم فيها إجراء تشغيل عادي (تمامًا مثل تشغيل الجهاز)، فإنّ جميع عمليات التشغيل اللاحقة تكون سريعة وتتم استعادة النظام إلى الحالة التي أغلقت فيها المحاكي (على غرار تنشيط الجهاز).
إذا أردت التحكّم في وقت حفظ المحاكي للّقطة، افتح نافذة عناصر التحكّم الموسّعة في المحاكي وانقر على الإعدادات. هنا، يمكنك تحديد أحد الإعدادات التالية لخيار حفظ حالة التشغيل السريع عند الخروج:
- نعم: يتم دائمًا حفظ لقطة Quick Boot عند إغلاق المحاكي. وهذا هو الخيار التلقائي.
- لا: لا يتم حفظ لقطة Quick Boot مطلقًا، ويتم دائمًا إجراء تشغيل عادي.
- السؤال: يظهر لك سؤال عمّا إذا كنت تريد حفظ لقطة Quick Boot عند إغلاق المحاكي.
ينطبق اختيارك على جهاز AVD المفتوح حاليًا فقط.
لمزيد من المعلومات، يُرجى الاطّلاع على مستندات Quick Boot.
تمت إضافة إمكانية استخدام Mac OpenGL ES 3 (لصور النظام التي تستخدم المستوى 24 من واجهة برمجة التطبيقات والإصدارات الأحدث وGoogle APIs وواجهة ABI لنظام x86).
لزيادة ثبات تطبيقات OpenGL ES 2 والإصدارات الأحدث، يستخدم المحاكي الآن ملف OpenGL الأساسي إذا كان متاحًا.
خيارات جديدة للعرض باستخدام Swiftshader / ANGLE:
-gpu swiftshader_indirect: إصدار أسرع وأكثر استقرارًا من Swiftshader يعمل مع Quick Boot.-gpu angle_indirect(نظام التشغيل Windows فقط): هو إصدار أكثر ثباتًا من ANGLE D3D يعمل أيضًا مع ميزة Quick Boot.
تم إيقاف الخيارَين القديمَين
-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منفصلة. - يتوفّر الآن الإصدار الجديد من HAXM 6.2.0 (يُرجى مراجعة SDK Manager) ويتضمّن
التحديثات التالية:
- تحسين استخدام الذاكرة لم تعد مجموعة العمل القصوى للذاكرة التي تم تثبيتها بواسطة HAXM مساوية لحجم ذاكرة الوصول العشوائي (RAM) في جهاز Android الافتراضي، بل يتم تقسيم الذاكرة إلى صفحات عند الطلب. من المفترض أن يساعد ذلك في تشغيل المحاكي بشكل أكثر موثوقية على الأجهزة التي تحتوي على كميات أقل من ذاكرة الوصول العشوائي.
- يمكن الآن تشغيل المحاكي باستخدام HAXM 6.2.0 بشكل أسرع على نظام التشغيل macOS، مع تخطي مرحلة التهيئة الطويلة.
- تحسينات على إعدادات وحدة معالجة الرسومات
- تم إصلاح المشاكل المتعلّقة بظهور شاشة سوداء عند التشغيل أثناء عرض البرامج على جهاز الضيف من خلال الرجوع إلى عرض البرامج على جهاز المضيف باستخدام Swiftshader. يجب أن تتضمّن أحدث نُسخ من صور النظام لمستويات واجهة برمجة التطبيقات من 19 إلى 25 مع واجهات Google APIs عرضًا صالحًا من جهة الضيف.
- تم إصلاح مشكلة تبديل المحاكي إلى عارض برامج بسبب رصد وحدات معالجة رسومات 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 الافتراضي (AVD) باستخدام
hw.gpu.mode=hostوتشغيل المحاكي في برنامج سطح مكتب بعيد. - تم توضيح إعدادات "مستوى واجهة برمجة التطبيقات OpenGL ES (يتطلب إعادة التشغيل)"، وتمت إضافة خيار للرجوع من الإصدار OpenGL ES 3 إلى الإصدار OpenGL ES 2 في حال مواجهة مشاكل أو الحاجة إلى الاختبار على مستويات واجهة برمجة التطبيقات OpenGL ES الأقدم.
- تم إيقاف عارض Mesa نهائيًا، وسيتم الآن تبديل
hw.gpu.mode=mesaتلقائيًا لاستخدام Swiftshader على المضيف.
- التحسينات على أجهزة 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، ولكن تتيح لك هذه الشاشة تحديد إعدادات الخادم الوكيل يدويًا.
تمت إضافة دعم VNC لوحدة معالجة الرسومات في وضع الضيف حتى يمكن عرض المحاكي والتحكّم فيه عن بُعد. على سبيل المثال، يمكنك تشغيل المحاكي والسماح لـ VNC بالاستماع إلى المنفذ 5901 على النحو التالي:
- التنفيذ:
emulator -gpu guest -avd avd_name -no-window -qemu -vnc :1 افتح عارض VNC، مثل عارض tightvnc، للاتصال بالمنفذ 5901.
لاستخدام برنامج مشاركة الشاشة المضمّن في نظام التشغيل Mac، يجب إدخال كلمة مرور VNC عند تشغيل المحاكي. لضبط كلمة مرور، استخدِم هذا الأمر:
emulator -gpu guest -avd avd_name -no-window -qemu -vnc :1,password -monitor stdioثم أدخل
change vnc passwordفي وحدة التحكم، وأدخل كلمة مرور.
لا يتوافق نظام التشغيل Android O حاليًا مع وضع VNC.
- التنفيذ:
تمت إضافة زر الإبلاغ عن خطأ في شاشة "المساعدة" ضمن عناصر التحكّم الإضافية (انقر على المزيد
،
ثم انقر على مساعدة ومساعدة المحاكي). يؤدي النقر على الإبلاغ عن خطأ إلى فتح مربّع حوار يمكنك من خلاله الاطّلاع على تفاصيل تقرير الخطأ، مثل لقطة الشاشة ومعلومات إعدادات جهاز Android الافتراضي وسجلّ تقرير الخطأ. يمكنك بعد ذلك حفظ التقرير لنفسك أو
الإبلاغ عن مشاكل المحاكي.تمت إضافة أداة استشعار جيروسكوب إلى المحاكي ولوحة أدوات الاستشعار الافتراضية. يتطلب ذلك صورة نظام مع دعم الجيروسكوب للعمل (حاليًا مستوى واجهة برمجة التطبيقات 24 و25).
تمت إضافة نظام أسماء النطاقات المفضَّل للمضيف إلى قائمة نظام أسماء النطاقات في Qemu على نظام التشغيل Windows، وذلك عندما تقدّم واجهات الشبكة الافتراضية المتعددة على المضيف عناوين متعددة لنظام أسماء النطاقات لا تعمل مع المحاكي.
تمت إضافة دعم تجريبي لإطار عمل Hypervisor.Framework في نظام التشغيل macOS لصور x86 ذات الـ 32 بت على نظام التشغيل macOS 10.10 والإصدارات الأحدث من خلال علامات الخادم، ما من شأنه تحسين وقت التشغيل والأداء.
- إذا واجهت مشاكل في ذلك، أضِف السطر
HVF = offفي~/.android/advancedFeatures.ini.
- إذا واجهت مشاكل في ذلك، أضِف السطر
يتم الآن تفعيل OpenGL ES 3.x تلقائيًا لصور النظام ووحدات معالجة الرسومات المضيفة التي تتوافق مع OpenGL ES 3. في الوقت الحالي، يتوافق الإصدار Android O (مستوى واجهة برمجة التطبيقات 26) ومضيفو Windows/Linux فقط مع الإصدار OpenGL ES 3.
- إذا واجهت مشاكل في OpenGL ES 3، أضِف السطر
GLESDynamicVersion = offفي~/.android/advancedFeatures.ini.
- إذا واجهت مشاكل في OpenGL ES 3، أضِف السطر
يستخدم المحاكي الآن كائنات المخزن المؤقت للإطارات (FBO) في OpenGL خارج الشاشة لجميع عمليات العرض باستثناء نشر صورة العرض النهائية، ما يساعد في حلّ مشاكل اتساق الألوان على جميع الأنظمة الأساسية.
بعد جمع البيانات حول مشاكل التباطؤ المفاجئ في المحاكي، تبيّن لنا أنّ المشكلة قد تكون مرتبطة ببعض التفاعلات بين برامج تشغيل Intel OpenGL القديمة وتحديثات Windows. وبالتالي، فإنّ المستخدمين الذين لديهم Intel HD 4000 و3000 و2000 (ووحدات معالجة الرسومات ذات الصلة) تم ضبط العرض لديهم الآن تلقائيًا على عارض D3D (ANGLE) أو Swiftshader (عارض البرامج).
26.0.0 (مارس 2017)
يتوافق هذا الإصدار مع المستوى 26 لواجهة برمجة التطبيقات. ويتضمّن أيضًا عددًا من التحسينات في الأداء وإصلاحات الأخطاء.
الإصدار الثانوي 26.0.3 (مايو 2017)
- تضيف علامات ميزات قابلة للتحديث على الإنترنت لمعالجة المشاكل الناتجة عن إعدادات الأجهزة التي بها مشاكل بسرعة. ويسمح ذلك لـ Google بطرح الإصلاحات والميزات التي تعتمد على إعدادات المستخدم من خلال تعديل العلامات من جهة الخادم. إذا لاحظت مشاكل في أجهزة معيّنة، يُرجى الإبلاغ عن خطأ حتى نتمكّن من التحقيق في المشكلة.
- إتاحة استخدام إدخال البيانات عبر وحدة تحكم دورانية لصور نظام Android Wear المستوى 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 Manager اعتبارًا من 30 مارس، وسيتوفّر لمستخدمي أجهزة Windows قريبًا.
يتوافق الإصدار 26.0.0 من Android Emulator مع الإصدار 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 أو إصدار أحدث من أدوات نظام Android SDK الأساسية
- الإصدار 26.0.0 أو إصدار أحدث من أدوات حزمة تطوير البرامج (SDK) لنظام التشغيل Android
ميزات جديدة وإصلاحات للأخطاء
- متوافق مع مستوى واجهة برمجة التطبيقات 26.
- متوافق تمامًا مع GLES 2.0. إذا كان لديك وحدة معالجة رسومات مضيفة تتضمّن برامج تشغيل OpenGL متوافقة مع أجهزة الكمبيوتر المكتبي، سيجتاز المحاكي الآن 100% من قائمة
mustpassdEQP-GLES2 في مجموعة أدوات اختبار التوافق (CTS) لنظام التشغيل Android. تم إصدار هذه الميزة لصور x86 من المستوى 24 لواجهة برمجة التطبيقات (الإصدار 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 أو إصدار أحدث من أدوات نظام Android SDK الأساسية
- الإصدار 25.3.0 من أدوات حزمة تطوير البرامج (SDK) لنظام التشغيل Android
ميزات جديدة وإصلاحات للأخطاء
- تم تحديث محرّك المحاكاة إلى QEMU 2.7، بما في ذلك جميع إصلاحات الأخطاء الأخيرة وتحسين الأداء والميزات الجديدة.
- إتاحة استخدام الإصدار السادس من بروتوكول الإنترنت (IPv6) الجديد
- يستخدم المحاكي الآن SwiftShader كعارض برامج خالص على المضيف.
- تحسينات على أداء Android Pipe: أصبحت Android Pipe، وهي قناة الاتصال الرئيسية بين المحاكي ونظام التشغيل Android، أسرع بكثير الآن، كما أنّ وقت الاستجابة فيها أقل، وتوفّر أداءً أفضل في ما يتعلق بالمعالجة المتعدّدة لسلاسل التعليمات. يؤدي ذلك إلى إجراء عدد من التحسينات على أداء المحاكي، بما في ذلك:
- تحسين سرعة الدفع/السحب في ADB
- تحسين دعم تسريع العرض الثلاثي الأبعاد
- زيادة سرعة الاستجابة الإجمالية للمحاكي
- تحسين أداء الرسومات
- يستخدم المحاكي الآن المخازن المؤقتة من جهة وحدة معالجة الرسومات (glBindBuffers / glBufferData) عندما يطلبها نظام التشغيل الضيف، ما يقلل من عبء وحدة المعالجة المركزية في بعض التطبيقات.
- تم تحسين دعم الصوت.
- إدخال/إخراج أسرع للقرص: يستخدم المحاكي الآن سلاسل محادثات منفصلة لإرسال عمليات الإدخال/الإخراج للقرص، ما يؤدي إلى تقليل وقت الاستجابة وتحسين معدل النقل (سرعة الإدخال/الإخراج المتسلسلة بمعدل 1.5 مرة تقريبًا، وسرعة الإدخال/الإخراج للوصول العشوائي بمعدل 5 مرات تقريبًا). يؤدي ذلك أيضًا إلى تقليل عدد عمليات النقل إلى القرص، ما يؤدي إلى تقليل الحمل على الجهاز الفعلي بشكل كبير.
- يستخدم المحاكي الآن ملفات متفرقة لعمليات تشغيل القرص على أجهزة Windows، ما يؤدي إلى تسريع عملية التشغيل الأولى وعمليات تشغيل "محو البيانات". عند إنشاء جهاز Android افتراضي أو إعادة ضبطه، يكتب المحاكي الآن من 100 إلى 200 ميغابايت من البيانات على القرص، بدلاً من 2 غيغابايت أو أكثر.
- تحسينات مختلفة على واجهة المستخدم الرسومية:
- يستخدم المحاكي الآن Qt 5.7.0، والذي يتضمن إصلاحات للأخطاء وتحسينات في الأداء.
- لم تعد عملية إعداد واجهة المستخدم تحاول تحميل جميع الملفات التنفيذية للمحاكي كمكوّنات إضافية لـ Qt، لذا فهي أقصر بشكل كبير، خاصةً على محركات الأقراص الثابتة.
- أصبحت تفاعلات واجهة المستخدم الآن أسرع وأكثر سلاسة، بما في ذلك التدوير وتغيير حجم النافذة وتحميل نافذة عناصر التحكّم الموسّعة وإغلاقها.
OpenXR™ وشعار OpenXR هما علامتان تجاريتان تملكهما شركة The Khronos Group Inc. ومسجَّلتان كعلامة تجارية في الصين والاتحاد الأوروبي واليابان والمملكة المتحدة.