شبیهساز Android در «استودیو Android» گنجانده شده است.
نسخههای شبیهساز قبلاز ۲۵.۳.۰ بهعنوان بخشی از ابزارهای کیت توسعه نرمافزار Android توزیع شدهاند.
برای اطمینان از اینکه جدیدترین نسخه را دارید، مدیر SDK را برای بهروزرسانیها بررسی کنید.
برای بارگیری نسخههای قبلی «شبیهساز Android»، بایگانی بارگیری شبیهساز را ببینید.
برای یادداشتهای انتشار نسخههای «شبیهساز» قبلاز ۲۵.۳.۰، به یادداشتهای انتشار ابزارهای کیت توسعه نرمافزار Android مراجعه کنید.
برای دیدن اینکه چه مشکلاتی در جدیدترین نسخههای «شبیهساز Android» برطرف شده است، مشکلات بستهشده را ببینید.
برای مشکلات شناختهشده و عیبیابی، لطفاً عیبیابی شبیهساز را ببینید.
شبیهساز Android نسل آتی (پیشنمایش)
با شروع از Android Studio Rabbit 3 Canary 1، پیشنمایش نسل بعدی «شبیهساز Android» دردسترس است و بهطور پیشفرض برای دستگاههای مجازی واجدشرایط استفاده میشود.
با ارتقا از انشعاب قدیمی QEMU 2 به بالادست مدرن QEMU (نسخه ۱۱+)، این موتور جدید دارای جداسازی فرایند موتور/واسط کاربر است که برای وفاداری و عملکرد بالاتر طراحی شده است.
توسعهدهندگان از این مزایا بهرهمند خواهند شد:
- زمان راهاندازی سریعتر و کاهش سربار واحد پردازش مرکزی/حافظه
- پایداری جلسه بااستفاده از موتور مجزا و فرایندهای واسط کاربر بهبود یافته است
- مجازیسازی مدرن با مدلهای سختافزاری virtio بهروزشده و گرافیک Vulkan
برای شروع، یک «دستگاه مجازی Android» تلفن با سطح میانای برنامهسازی کاربردی ۳۷.۰ یا بالاتر ایجاد کنید و آن را از Android Studio Canary راهاندازی کنید. درحالحاضر، «دستگاههای مجازی Android» موجود همچنان بهطور یکپارچه در موتور شبیهساز کلاسیک اجرا خواهند شد.
37.2.12 Stable (۱ اکتبر ۲۰۲۶)
[رفع اشکال]مشکل شماره ۵۳۷۸۰۲۹۵۹ macOS (Apple Silicon): gRPC streamScreenshot با ImageTransport MMAP موتور شبیهساز را ازکار میاندازد / بیصدا هرگز فریمها را نمینویسد
[رفع اشکال]مشکل شماره ۵۰۷۰۷۸۵۸۰ شبیهساز مانع از بهخواب رفتن macOS میشود
[رفع اشکال]مشکل شماره ۵۰۶۴۷۵۵۸۱ اعوجاج صدای باقیمانده و صدای خشخش هنگام راهاندازی در macOS هنگام استفاده از رابط صوتی با بیشاز ۲ کانال (لوپبک، چندخروجی) برطرف شد
37.1.11 Stable (۳۰ ژوئیه ۲۰۲۶)
درایور ناظر شبیهساز Android (AEHD) در ۳۱ دسامبر ۲۰۲۶ منسوخ خواهد شد. برای کمک به این گذار، «استودیو Android» اکنون به کاربران Windows کمک میکند از AEHD به Windows Hypervisor Platform (WHPX) تبدیل کنند. برای کسب اطلاعات درباره پیکربندی شتاب ماشین مجازی بااستفاده از WHPX، به پیکربندی شتاب ماشین مجازی بااستفاده از WHPX مراجعه کنید.
Pixel 10a AVD اضافه شد
پشتیبانی از افزونههای جدید Vulkan که برای اجرای تصاویر سیستم API 37 لازم است اضافه شد
[رفع اشکال]مشکل شماره ۳۲۴۴۶۵۹۸۶ هنگام گرفتن عکس آنی در شبیهساز بدون فضا، خطای «کمبود فضای ذخیرهسازی» نشان داده نمیشود
[رفع اشکال]مشکل شماره ۵۲۶۶۷۱۸۷۲ پشتیبانی از پسوندهای واحد (مثلاً «6G»، «32M») برای پیکربندیهای اندازه «پشته ماشین مجازی» و «حافظه دسترسی مستقیم دستگاه مجازی Android» در config.ini
[رفع اشکال]مشکل شماره ۳۲۵۸۱۴۵۹۲ مشکلی که در macOS 14 ایجاد شده بود و باعث میشد شبیهساز پساز راهاندازی دوربین متوقف شود و بسیار کند کار کند
36.6.11 Stable (۲ ژوئن ۲۰۲۶)
از میانای برنامهسازی کاربردی ۳۷، حداقل حافظه (RAM) استفادهشده توسط VM از AVD به ۴ گیگابایت افزایش یافته است.
برای پشتیبانی از نیازهای حافظه بالاتر Android 17 (میانای برنامهسازی کاربردی ۳۷)، «دستگاههای مجازی Android» (AVD) تلفن اکنون به حداقل ۴ گیگابایت حافظه دسترسی تصادفی (RAM) نیاز دارند. اگر AVD شما با حافظه کمتری پیکربندی شده باشد، «شبیهساز» بهطور خودکار تنظیمات را بازنویسی میکند تا حداقل ۴ گیگابایت اختصاص دهد و از مشکلات احتمالی زمان اجرا جلوگیری کند.
حالت دوربین «محیط» به «شبیهساز» اضافه شد تا پسزمینههای صحنه مجازی قابلپیکربندی باشد. این صحنهها در فایل environment.ini مربوط به AVD تعریف شدهاند و میتوانند بهطور پویا در زمان اجرا مجدداً بار شوند.
اشکالی که باعث میشد پیشنمایش عکس آنی در شبیهساز مستقل پساز حذف عکس آنی پاک نشود برطرف شد.
[رفع اشکال]مشکل شماره ۵۰۶۴۷۵۵۸۱ صدای شبیهساز در macOS هنگام استفاده از میانای صوتی با بیشاز ۲ کانال (لوپبک، چندخروجی) بهشدت دچار اعوجاج میشد
[رفع اشکال]مشکل شماره ۵۱۶۴۵۵۳۷۰ نشت حافظه قابلتوجهی در macOS 26.3 هنگام بستن شبیهساز برطرف شد، که مربوط به پاکسازی منابع مورداستفاده توسط Hypervisor.framework APIs بود.
36.5.11 Patch (Apr 23, 2026)
- [رفع اشکال]مشکل شماره ۴۹۲۲۲۸۰۲۰ «شبیهساز Android» هنگام استفاده از «پردازنده گرافیکی Intel» برای «پردازش گرافیکی سختافزاری/خودکار»، صفحه سیاه نشان میدهد
36.5.10 Stable (۲ آوریل ۲۰۲۶)
این بهروزرسانی شامل ویژگی و رفع اشکالهای زیر است:
آزمایش تعاملات چنددستگاهی با «شبیهساز Android»
«شبیهساز Android» اکنون دارای پشته شبکه جدیدی است تا آزمایش چنددستگاهی را بهبود بخشد و نیاز به بازارسال دستی درگاه برای اتصال چند نمونه AVD در یک میزبان را ازبین ببرد. اکنون دستگاههای مجازی Android میتوانند بهطور خودکار یکدیگر را شناسایی کنند و با هم ارتباط برقرار کنند، گویی در یک شبکه مجازی قرار دارند. این کار امکان آزمایش یکپارچه تعاملهای همتابههمتا را بااستفاده از پروتکلهایی مثل Wi-Fi Direct و Network Service Discovery فراهم میکند.
این پشته شبکه جدید چندین مزیت کلیدی برای توسعهدهندگان دارد:
- پیکربندی صفر: دیگر نیازی به بازارسال درگاه دستی یا نوشتن اسکریپت برای فرمانهای adb نیست.
- همتا به همتای یکپارچه: پروتکلهای حیاتی مانند Wi-Fi Direct و Network Service Discovery بهطور پیشفرض بین شبیهسازها کار میکنند.
- پایداری بهبودیافته: مشکلات پایداری قدیمی را برطرف میکند، مانند ازدست رفتن دادهها (مشکل شماره ۱۵۰۷۵۸۷۳۶) و قطع اتصال (مشکل شماره ۴۴۹۸۱۷۸۵۶) که در پشته قدیمی یافت شده است.
برای شروع، به جدیدترین نسخه «شبیهساز Android» در «مدیر کیت توسعه نرمافزار» Android Studio بهروزرسانی کنید. برای اطلاعات بیشتر، مستندات در اینجا است.
ویژگیهای اضافی و رفع اشکالها
دستگاههای مجازی Pixel Android جدیدی اضافه شده است، ازجمله Pixel 10، Pixel 10 Pro، Pixel 10 Pro XL، و Pixel 10 Pro Fold
فهرست کردن وبکمها با نامهای کاربرپسند و رفع مشکلی در Linux که در آن «شبیهساز» نمیتوانست همه وبکمهای متصل را شناسایی و فهرست کند
[رفع اشکال]مشکل شماره ۳۳۳۶۲۸۴۶۲ فرایند crashpad_handler در macOS بیشازحد از واحد پردازش مرکزی استفاده میکند
وصله 36.4.10 (۹ مارس ۲۰۲۶)
- [رفع اشکال]مشکل شماره ۴۸۹۳۶۹۰۸۰ رفع ازکارافتادن در «شبیهساز TV» هنگام نگه داشتن نشانگر روی آن پساز بهروزرسانی به Panda 2
36.4.9 Stable (۱۰ فوریه ۲۰۲۶)
برای سادهسازی انتخاب GPU در میانای کاربر، کنترلهای گسترشیافته «شبیهساز Android» اکنون شامل گزینههای خاص «سختافزار» و «نرمافزار» است. برای کاربران خط فرمان، اکنون میتوان از گزینه «-gpu software» برای انتخاب بهترین میانای برنامهسازی کاربردی GLES و Vulkan موجود برای سیستم شما استفاده کرد
Lavapipe بهعنوان پردازنده گرافیکی نرمافزاری پیشفرض فعال شد تا سازگاری Vulkan در همه پلاتفرمها بهبود یابد
بهبودهای Vulkan:
- بارکننده Vulkan همراه با شبیهساز بهروز شد
- موارد مختلف استفاده نامعتبر در پسای Vulkan برطرف شد
- پشتیبانی از استفاده از SkiaVk در systemui با شبیهسازی صف گرافیک در تصاویر سیستم جدید اضافه شد
- پشتیبانی از ترکیب Vulkan برای غیرفعال کردن استفادههای GL در میزبان اضافه شد. این ویژگی بهطور پیشفرض برای تصاویر XR فعال است و میتوان آن را با گزینه خط فرمان «-feature VulkanNativeSwapchain» فعال کرد.
[رفع اشکال]مشکل شماره ۴۷۱۰۰۸۶۵۹ نشت حافظه در سمت «میزبان» شبیهساز هنگام باز/بسته کردن فعالیتها
36.4.3 Canary (۸ دسامبر ۲۰۲۵)
شبیهساز جدید عینک هوشوارهای
شبیهساز آزمایشی جدیدی برای عینک هوشوارهای اضافه کردهایم تا بتوانید برنامههای ساختهشده با «کیت توسعه نرمافزار Jetpack XR» برای عینک هوشوارهای را توسعه دهید و آزمایش کنید. میتوانید شبیهساز عینک را بههمراه شبیهساز تلفن اجرا کنید، آنها را جفت کنید، و تعاملات معمولی را که روی عینک اجرا میکنید انجام دهید. برای کسب اطلاعات درباره نصب شبیهساز «عینک هوشوارهای» و راهاندازی محیط توسعه نرمافزار، به ایجاد کردن دستگاههای مجازی «عینک هوشوارهای» مراجعه کنید.
شبیهساز «عینک هوش مصنوعی» ابزاری آزمایشی است. انتظار بروز مشکلاتی را داشته باشید، بهویژه در جفت کردن مجدد عینک با شبیهسازهای تلفن و تعاملهای میانای کاربری صفحه لمسی.
شبیهساز جدید عینک واقعیت گسترده
شبیهساز Android XR را که قبلاً برای عینک واقعیت گسترده OST (شفاف نوری) راهاندازی شده بود گسترش دادیم. میتوانید از شبیهساز «عینک واقعیت گسترده» برای پیشدید کردن برنامهتان با میدان دید و وضوح تقریبی دستگاه عینک واقعیت گسترده استفاده کنید. برای کسب اطلاعات درباره نصب شبیهساز «عینک واقعیت گسترده» و راهاندازی محیط توسعه نرمافزار، به ایجاد کردن دستگاههای مجازی عینک واقعیت گسترده مراجعه کنید.
شبیهساز «عینک واقعیت گسترده» و شبیهساز «عینک هوش مصنوعی» ابزارهای آزمایشی هستند. انتظار بروز مشکلاتی را داشته باشید، بهویژه در برخیاز پیکربندیهای درایور و واحد پردازش گرافیکی Windows (الزامات سیستم Windows را ببینید).
مشکلات شناختهشده
بازخورد شما به ما کمک میکند تا ویژگیهای آینده را بهبود بخشیم و اولویتبندی کنیم. برای کسب اطلاعات درباره گزارش کردن اشکالات مربوط به «استودیو Android» یا «شبیهساز Android»، به گزارش کردن اشکال مراجعه کنید.
36.3.10 Stable (۴ دسامبر ۲۰۲۵)
[رفع اشکال]مشکل شماره ۴۵۲۸۴۳۳۲۱ کاهش عملکرد هنگام ارسال فایلهای بزرگ به شبیهساز در Android API 34 و نسخههای جدیدتر.
برطرف کردن مشکل ازکارافتادگی ترکیببندی Vulkan هنگام اجرای کدکهای ویدیو در حالت بافت GPU.
رفع خرابیهای شبیهساز در رویداد صفحه لمسی هنگام اجرا با -debug-events.
وصله 36.2.12 (۱۳ اکتبر ۲۰۲۵)
- رفع ازکارافتادن در Windows که هنگام راهاندازی برنامه vulkan در حالت پرداز نرمافزار رخ میداد
36.2.11 Stable (۹ اکتبر ۲۰۲۵)
پشتیبانی از HAXM از «شبیهساز» برداشته شده است. اگر بخواهید با HAXM یک AVD ایجاد کنید، برنمایی خواهید دید که گزارش میدهد hypervisor وجود ندارد و پیوند کنشی برای نصب AEHD ارائه میدهد.
برای کسب اطلاعات درباره حذف نصب HAXM، به حذف نصب HAXM مراجعه کنید.
اصلاح برای اطمینان از اینکه Intel GPU از OpenGL ES 3.0 استفاده میکند تا از خرابی درایور جلوگیری شود
[رفع اشکال]مشکل شماره ۳۴۰۳۲۲۸۸۸ وقتی فضای خالی در دستگاه وجود ندارد، AVD شروع نمیشود
[رفع اشکال]مشکل شماره ۱۵۰۷۵۸۷۳۶ ازدست رفتن متناوب دادههای تکبایتی در اتصالهای TCP در شبیهساز
[رفع اشکال]مشکل شماره ۴۳۴۷۷۴۳۸۱ هسته مهمان پساز راهاندازی سریع برای میانای برنامهسازی کاربردی ۳۶ و ۳۵ (شاید بیشتر) در Windows 11 بااستفاده از WHPX در i7-11850H ازکار افتاد
36.1.9 Stable (۳۱ ژوئیه ۲۰۲۵)
[رفع اشکال]مشکل شماره ۴۱۹۱۵۷۴۲۸ نویسههای UTF-8 در نام کاربری یا در مسیر AVD میتوانست مانع از شروع شبیهساز شود
[رفع اشکال]مشکل شماره ۴۲۳۶۷۰۸۳۳ «شبیهساز Android» در سیستم فایل btrfs از کار میافتد
توجه: اگر در راهاندازی شبیهساز در X11 با مشکل مواجه هستید، استفاده از پرداز نرمافزاری را مدنظر قرار دهید. برای نحوه پیکربندی پردازش نرمافزار، پیکربندی شتابدهی گرافیکی را ببینید.
35.6.11 پایدار (۲۴ ژوئن ۲۰۲۵)
پشتیبانی از واحد پردازش گرافیکی AMD و Nvidia در Windows و Linux برای «شبیهسازی واقعیت گسترده» بهبود یافته است
XR AVD را میتوان بهصورت جاسازیشده در پنجرههای درحال اجرای Android Studio اجرا کرد
بهبود جزئیات گزارش خرابی در Windows برای فعال کردن تخلیه کامل «شبیهساز»
[رفع اشکال]مشکل شماره ۴۱۰۴۸۵۰۴۳ «شبیهساز Android» دستگاه XR با خطای Vulkan ازکار میافتد
[رفع اشکال]مشکل شماره ۳۸۸۷۱۸۴۱۷ libndk_translation.so لغو میشود و باعث ازکارافتادن Arm64AesEncode میشود
35.5.10 Stable (۶ مه ۲۰۲۵)
بررسیهای سازگاری CPU اضافی با پیامهای خطا اضافه شد (مثلاً: فضای دیسک ناکافی)
اشکالهای مربوط به مدیریت حافظه Vulkan و موارد استفاده نامعتبر برطرف شد
پشتیبانی از عکس آنی Vulkan بررسی میشود و هنگام اجرا در پایانه بهدرستی رد میشود
پشتیبانی از افزونه VK_KHR_multiview و قالب بافت A1R5G5B5 اضافه شد
Pixel 9a AVD اضافه شد
35.4.9 Stable (۲۵ فوریه ۲۰۲۵)
منوِ کرکرهای در کنترلهای گسترده برای اولویتهای درایور GLES مهمان اضافه شد
[رفع اشکال]مشکل شماره ۳۸۹۳۳۰۷۵۰ ارسال پیامک به شبیهساز با نویسه Ñ پیام را تقسیم میکند
[رفع اشکال]مشکل شماره ۳۸۲۱۸۰۴۸۸ ازکار افتادن عملکرد «emuglConfig_get_vulkan_hardware_gpu_support_info» بهدلیل شناسایی نشدن دستگاه Vulkan
توجه: «شبیهساز Android XR» فقط در نسخههای Canary از Studio دردسترس است
35.3.11 Stable (۹ ژانویه ۲۰۲۵)
[رفع اشکال]مشکل شماره ۳۶۸۰۵۹۲۱۱ دسترسی برنامهای Android Auto OS به VHAL بااستفاده از Car Service API کار نمیکند
[رفع اشکال]مشکل شماره ۳۴۸۵۹۸۵۱3 شبیهساز دارای روش عمومی غیرایمن ازنظر رشته غیرضروری در قفل چندرشتهای است
[رفع اشکال]مشکل شماره ۳۵۶۸۹۶۴۸۶ غیرفعال کردن واقعی فراخوانیهای Vulkan API هنگام اجرا با -feature -Vulkan
35.4.4 Canary (۱۲ دسامبر ۲۰۲۴)
شبیهساز جدید Android XR
شبیهساز آزمایشی جدیدی برای Android XR اضافه کردیم تا بتوانید برنامههای ساختهشده با کیت توسعه نرمافزار Jetpack XR برای هدستها را توسعه دهید و آزمایش کنید. برای دریافت اطلاعات درباره نصب شبیهساز Android XR و راهاندازی محیط توسعه نرمافزار، راهاندازی Jetpack XR SDK را ببینید.
شبیهساز Android XR ابزاری آزمایشی است. بااینحال تصمیم گرفتیم آن را زودتر با شما همرسانی کنیم تا بتوانید زودتر آن را آزمایش کنید. منتظر بروز مشکل باشید، بهویژه در برخیاز پیکربندیهای درایور و GPU در Windows. ممکن است مشکلاتی نیز دررابطهبا آزمایش سازگاری برنامههای تلفن همراه دوبعدی موجود بهوجود آید. بازخورد شما به ما کمک میکند تا اولویتبندی ویژگیهای آینده را بهبود ببخشیم و هدایت کنیم.
تاکنون، شبیهساز Android XR در پیکربندیهای سختافزاری زیر آزمایش شده است:
- Mac (ARM)
- Windows 11
- واحد پردازش گرافیکی nVidia، ۴ گیگابایت vRAM، درایور نسخه ۵۵۳.۳۵ یا جدیدتر
- ۱۶ گیگابایت حافظه دسترسی تصادفی یا بیشتر
- ۸ هسته یا بیشتر
مشکلات شناختهشده
شبیهساز - پایداری و عملکرد:
- در برخیاز پیکربندیهای Windows، ممکن است قفل شدن یا ازکار افتادن بحرانی سیستم درطول راهاندازی یا هنگام اجرای برنامهها رخ دهد. لطفاً با دنبال کردن راهنمای توسعهدهنده Android Studio برای فعال کردن WHPX، مطمئن شوید Windows Hypervisor Platform (WHPX) فعال است.
- مشکلاتی مانند عدم پاسخگویی AVD یا عناصر میانای کاربر در رایانههای کیفی پساز چرخه تعلیق-ازسرگیری (مانند بستن رایانه کیفی و باز کردن آن).
- خرابیهای گاهبهگاه هنگام جابهجایی برنامهها از «حالت صفحه اصلی» به «حالت تمامصفحه»
- میاناهای برنامهسازی کاربردی Gemini هنوز دردسترس نیستند؛ برنامه الگوی آغازگر Gemini API ازکار خواهد افتاد.
شبیهساز - شبیهسازی ورودی و خروجی:
- صفحهکلید مجازی برای فیلدهای جستجو و ویرایش ممکن است فقط تاحدی در میدان دید قابلمشاهده باشد
عناصر را نمیتوان بااستفاده از موشواره و صفحهکلید در جهت z (داخل و خارج از صفحهنمایش) جابهجا کرد
ناپایداری ورودی صوتی میزبان میکروفون AVD ممکن است منجر به بازراهاندازی و ازکارافتادن AVD شود.
صدا گاهیاوقات پارازیت دارد یا نامفهوم است.
وقتی دوربین از اتاق نشیمن مجازی خارج میشود، خطاهای پردازش قابلمشاهده است.
پیکربندیهای Windows رنگها را تیرهتر از حد معمول نمایش میدهند.
وقتی شبیهساز در macOS در حالت غیرفعال رها میشود و صفحه قفل میشود، صدا دیگر کار نمیکند. (با بازراهاندازی شبیهساز، این دکمه بازیابی خواهد شد.)
وقتی دستگاه میزبان Wi-Fi را تغییر میدهد، اتصال شبکه قطع میشود.
با فعال بودن Caps Lock، حروف کوچک همچنان تایپ میشوند.
پیمایش بااستفاده از پد لمسی در Mac روان نیست.
پیمایش با کلیک کردن و کشیدن در برخیاز عناصر میانای کاربر ممکن است بهطور پیشفرض کار نکند. اگر اینطور نیست، از چرخ موشواره برای پیمایش استفاده کنید.
متن، واسط کاربر، و سایر اشکالات در Chrome در برخی پیکربندیهای سیستم Windows. راهحل احتمالی: فعال کردن WHP.
شبیهساز - شبیهسازی صفحهها و لنگرها:
- لنگرها گاهی در نزدیکی همان مکان دوباره ظاهر نمیشوند
- قابهای متحرک ممکن است به دیوارها یا سقف متصل نشوند
- صفحههای شبیهسازیشده با چیدمان فیزیکی اتاق سهبعدی در حالت «گذر» مطابقت ندارد
- بهطور کلی، مناطق محدودی برای لنگر انداختن اشیا در اتاق مجازی وجود دارد
- آرتیفکت کوچک قابلمشاهده در نمای انتقالی در Windows
- در برخی موارد، قرار دادن لنگرها میتواند باعث ازکار افتادن برنامه شود
- وقتی برنامهها در Windows به زمین نزدیک میشوند، ممکن است خطوط سیاهی در بالای برنامهها ظاهر شود
شبیهساز - سایر موارد:
- شبیهساز فقط در حالت «مستقل» شروع میشود. حالت «جاسازیشده» (رابط کاربری جاسازیشده) هنوز پشتیبانی نمیشود.
- ورود به سیستم با حسابها در شبیهساز در Windows ممکن است باعث شود شبیهساز دیگر پاسخ ندهد
- محتوای واسط کاربر پنجرهها ممکن است پساز تغییر اندازه ناپدید شود (راهکار: فشار دادن دکمه «صفحه اصلی»)
- در JXRCore ActivityPanelTest App، پانل ثانویه در ابتدا نمایش داده نمیشود
- ممکن است موارد تنظیمات فوری پساز مدتی طولانی از تنظیمات سیستم ناپدید شوند.
- ممکن است در ابتدا میانای کاربر شبیهساز خارج از منطقه صفحهنمایش ظاهر شود. اگر اینطور است، اندازه پنجره شبیهساز را کمی تغییر دهید تا به جای خود برگردد.
- هنگام استفاده از «رایانه از دور Chrome» در Windows، ممکن است شبیهساز راهاندازی نشود
- OpenXR هنوز در شبیهساز پشتیبانی نمیشود و برنامههای OpenXR ممکن است باعث ازکار افتادن شبیهساز شوند
- خرابیهای نادر هنگام تلاش برای ارسال گزارشهای اشکال بااستفاده از تنظیمات گسترده Android Studio در Windows
- نماد «پیمایش به عقب» در برنامه «تنظیمات» بهدرستی قابلمشاهده نیست تا زمانی که مکاننما در Mac به آن نزدیک شود
- در برخی موارد، ممکن است هنگام استفاده از ماژول «نمایه پایه» بهعنوان بخشی از پروژه الگوی واقعیت گسترده، ساخت با خطا مواجه شود
- دسترسپذیری «XR Talkback» تاکنون فقط تاحدودی در شبیهساز ادغام شده است
برنامه Scene Viewer:
- جابهجا کردن عناصر در Scene Viewer ممکن است باعث ازکار افتادن آن شود. برای حل این مشکل، قبلاز تلاش برای جابهجا کردن عنصر، موقعیت سر را کمی از موقعیت اولیهاش دور کنید (مثلاً بااستفاده از حرکت افقی، دالی، WASD، و غیره).
- اگر اندازه واقعی مدل سهبعدی کمتر یا بیشتر از حدود حداقل و حداکثر مقیاس باشد (درحالحاضر بهترتیب ۲۰ سانتیمتر و ۷۰ متر تنظیم شده است)، ویژگی اندازه واقعی ۱:۱ بهدرستی کار نخواهد کرد
- مدل سهبعدی ممکن است در اولین فریم پساز بار شدن بپرد
35.2.10 (۱ اکتبر ۲۰۲۴)
- دستگاههای مجازی Pixel Android جدید ازجمله Pixel 9، Pixel 9 Pro، Pixel 9 Pro XL، و Pixel 9 Pro Fold اضافه شدهاند
- تصویر سیستم جدید رایانه لوحی برای Vanilla Ice Cream (میانای برنامهسازی کاربردی ۳۵) اضافه شد
۳۵.۱.۲۰ (۲۹ اوت ۲۰۲۴)
- Pixel 8a AVD اضافه شد
- رفع اشکالات مختلف برای دستگاه تاشو
- بهروزرسانی Qt و رفع خرابیها و توقفهای مربوط به Qt
- [رفع اشکال] رفع مشکل ازکارافتادن و ثابت ماندن تصویر در Windows با برنامههایی که از Vulkan استفاده میکنند
34.2.16 (۹ ژوئیه ۲۰۲۴)
- [رفع اشکال] ثابت شدن واسط کاربر که در Pixel Fold هنگام تا کردن/باز کردن رخ میدهد
- [رفع اشکال] نمایش نادرست نسخه Android بهعنوان Android Vanilla Ice Cream Preview بهجای API 35 در Mac M1.
- [رفع اشکال] مشکل شماره ۲۹۶۱۶۲۶۶۱: HasSystemFeature FEATURE_SENSOR_HINGE_ANGLE در شبیهساز رایانه لوحی Pixel C مقدار true را برمیگرداند
34.2.15 (۳۱ مه ۲۰۲۴)
- رفع خرابیهای مختلف مربوط به حالت swangle و پاکسازی تبلیغکننده
۳۴.۲.۱۴ (۲۰ مه ۲۰۲۴)
با «استودیو Android» نسخه Jellyfish Stable Patch 1 آزمایش شده است.
- [رفع اشکال] عکس آنی گاهیاوقات در شبیهساز جاسازیشده متوقف میشود
- [رفع اشکال] دکمههای «نه» و «لغو» در عکس آنی بهدرستی کار نمیکنند
- [رفع اشکال] دکمههای پد جهتدار کار نمیکنند
- [رفع اشکال] مشکلی که در Windows دیده میشد و در برخی شرایط هنگام استفاده از حالتهای GPU با ANGLE مانع از شروع شبیهساز میشد و پیام خطای «Failed to initialize GL emulation» (راهاندازی شبیهسازی GL ناموفق بود) را در گزارش برمیگرداند برطرف شد. توجه داشته باشید که راهاندازی شبیهساز ازطریق خط فرمان با گزینه
-gpu swangle_indirectممکن است همچنان این خطا را در این نسخه ایجاد کند. اگر همچنان میخواهید شبیهساز را بااستفاده از خط فرمان در Windows با پردازش گرافیکی نرمافزار با این نسخه شروع کنید، لطفاً از-gpu swiftshader_indirectاستفاده کنید - [رفع اشکال] میانبر مکان در صفحهکلید، نقشهای غیرقابلاستفاده بار میکند
- [رفع اشکال] هنگام تنظیم مکان، کادر گفتگوی «ذخیره مسیر» وجود ندارد
34.2.13 (۳۰ آوریل ۲۰۲۴)
با نسخه پایدار Android Studio Jellyfish آزمایش شده است.
- بهروزرسانی به Qt 6.5.3
- سازگاری برای بهروزرسانیهای Google Maps API که در ویژگیهای «مکان» در «کنترلهای گسترده» شبیهساز استفاده میشود، در اواخر ماه مه انجام میشود.
- اصلاحات خرابی با تأثیر زیاد
- اصلاحات مختلف در Pixel AVD
- بهروزرسانی کتابخانه گرافیک مورداستفاده برای پردازش نرمافزار
- [رفع اشکال]مشکل ۲۲۵۵۴۱۸۱۹ راهاندازی Chrome باعث ازکار افتادن «شبیهساز» در x86_64 میشود
- [رفع اشکال]مشکل ۳۱۴۶۱۴۴۳۵ کلید
-http-proxyبهدرستی تجزیه نمیشود
34.1.20 (۱ آوریل ۲۰۲۴)
با «استودیو Android» نسخه Iguana Stable آزمایش شده است.
- [رفع اشکال] مشکل شماره ۳۱۴۶۱۴۴۳۵: رفع مشکلی که در آن کلید
-http-proxyبهدرستی تجزیه نمیشود
۳۴.۱.۱۹ (۷ مارس ۲۰۲۴)
با «استودیو Android» نسخه Iguana Stable آزمایش شده است.
- [رفع اشکال] مشکل شماره ۳۱۲۶۷۷۲۵۹: مشکل ثابت ماندن صفحهنمایش در شبیهساز جاسازیشده پساز تغییر اندازه پنجره برطرف شد.
۳۴.۱.۱۸ (۲۹ فوریه ۲۰۲۴)
با «استودیو Android» نسخه Iguana Stable آزمایش شده است.
- دستگاههایی به «شبیهساز» اضافه شد، ازجمله:
- Pixel Fold
- Pixel Tablet
- Pixel 8
- Pixel 8 Pro
- Pixel 7a
- آزمایش ادغام gRPC: اکنون نقاط پایانی gRPC برای آزمایشهای ابزارگریشدهای که در شبیهساز اجرا میشوند دردسترس است و این امر آزمایش سناریوهای واقعگرایانه را ممکن میکند. این ویژگی به توسعهدهندگان امکان میدهد بهطور ایمن با نقطه پایانی gRPC که توسط «شبیهساز Android» میزبانی میشود از درون آزمایشهای ابزار دقیق Android تعامل داشته باشند.
- رفع اشکالات مختلف
33.1.24 (۲۸ دسامبر ۲۰۲۳)
با «استودیو Android» نسخه Hedgehog Stable و Iguana Beta 1 آزمایش شده است.
- رفع مشکل وببین شبیهساز که اجازه ضبط صفحهنمایش در قالب mp4 را نمیدهد.
- رفع خرابی «شبیهساز» در Pixel Fold AVD وقتی درطول ضبط صفحهنمایش باز میشود.
- رفع مشکل نمایش پوسته تلفن متفاوت با صفحهکلید جداشده در Pixel Fold و غیرقابلاستفاده بودن آن (در Windows، Mac Intel، و Linux رفع شد)
- رفع اشکال در ظاهر حسگرهای مجازی در حالت مستقل (در Windows، Mac Intel، و Linux رفع شد)
- ارائه اصلاحات برای برخیاز خرابیها، بهویژه هنگام بستن شبیهساز، برطرف شد
۳۳.۱.۲۳ (۳۰ نوامبر ۲۰۲۳)
با «استودیو Android» نسخه Giraffe Patch 4 و Hedgehog Stable آزمایش شده است.
- پیادهسازی تاشو جدید برای شبیهسازی بهتر دستگاه Pixel Fold، با جدیدترین API 34 کار میکند
- ارتقای پسای گرافیک: ما پروتکل gfxstream را برای پسای گرافیک خود پیادهسازی کردهایم. این بهبود، عملکرد کلی گرافیک و پایداری سیستم شما را ارتقا میدهد. علاوهبراین، پشتیبانی از Vulkan 1.3 را با تصویر سیستم با API 34 معرفی میکنیم
- درخواست ویژگی: گزینه غیرفعال کردن اشاره نزدیک کردن انگشتان برای بزرگنمایی یا اختصاص دادن مجدد کلید میانبر آن
- [رفع اشکال] مشکل شماره ۳۰۲۵۶۲۹۶۲ رفع ازکارافتادن وبکم «شبیهساز» هنگام استفاده از MacOS sonoma
- [رفع اشکال] مشکل شماره ۲۹۳۵۰۳۸۷۱ رفع مشکلی که باعث میشد تنظیمات «میکروفون» هنگام بازراهاندازی «شبیهساز» ذخیره نشود
- [رفع اشکال] مشکل شماره ۲۷۰۳۸۶۳۱۴ رفع خطای پویانمایی که در آن نوار کناری پساز کوچک کردن صفحه AVD باز میماند
- [رفع اشکال] مشکل شماره ۱۵۴۸۹۶۷۷۵ رفع اشکال ابزار ارسال اشکال
۳۲.۱.۱۵ (۲۹ اوت ۲۰۲۳)
با «استودیو Android» نسخه Giraffe Patch 1 و Hedgehog Canary 16 آزمایش شده است.
- مطابقت با الزامات سختافزاری GAS برای حسگرها در شبیهساز AAE
- [رفع اشکال] مشکل شماره ۲۶۶۲۰۱۲۰۸ پیامک عبری در API 33 ارسال نمیشود
- [رفع اشکال] مشکل شماره ۲۵۷۰۹۷۴۰۴ شبیهساز پساز بیدار شدن میزبان در میانای برنامهسازی کاربردی ۲۹ و ۳۰، زمان صحیح را نشان نمیدهد
- [رفع اشکال] مشکل شماره ۲۲۸۲۰۱۸۹۹ Google Maps در «کنترلهای گسترده شبیهساز Android» دیده نمیشود
32.1.14 (۲۷ ژوئن ۲۰۲۳)
با Android Studio Hedgehog Canary 8، Giraffe Beta 5، و Flamingo Stable آزمایش شده است.
- جهت و اعوجاج دوربین شبیهساز را اصلاح کنید.
- [رفع اشکال] مشکل شماره ۲۵۷۰۹۷۴۰۴ «شبیهساز پساز بیدار شدن میزبان، زمان صحیح را نشان نمیدهد». این اشکال هنوز برای API 29 و API 30 قابلتولید است.
- [رفع اشکال] مشکل شماره ۲۴۳۴۵۶۵۸۲ «نسخههای Android پساز API 30 ممکن است در شبیهساز در دستگاههای Mac M1 بهدرستی شروع نشوند»
32.1.13 (۲۲ مه ۲۰۲۳)
با Android Studio Hedgehog Canary 2، Giraffe Beta 1، و Flamingo Stable آزمایش شده است.
- افزودن پشتیبانی از Pixel Fold و Pixel Tablet AVD.
- بهبود مشکل ازکارافتادن gLinux.
- [رفع اشکال] مشکل شماره ۲۱۵۲۳۱۶۳۶ «شبیهساز با میانای برنامهسازی کاربردی بالاتر از میانای برنامهسازی کاربردی ۳۰ در پردازنده نسل دوازدهم Intel کار نمیکند».
- [رفع اشکال] مشکل شماره ۲۷۵۳۹۷۹۰۵ سطح بالای خرابی در «شبیهساز Android» نسخه M1 هنگام جابهجایی مکرر تمرکز مکاننما به داخل و خارج از شبیهساز.
- مشکل شناختهشده در راهاندازی AVD وقتی گزارش خرابی شبیهساز جدیدتری وجود دارد. برای اطلاعات بیشتر، به عیبیابی شبیهساز مراجعه کنید.
32.1.12 (۲۱ مارس ۲۰۲۳)
با Android Studio Giraffe Canary 10، Flamingo RC، و Electric Eel Patch 2 آزمایش شده است.
- [رفع اشکال] مشکل شماره ۲۶۷۶۴۷۳۲۳ شبکه در «شبیهساز» راهاندازیشده از «استودیو Android» کار نمیکند
- [رفع اشکال] مشکل شماره ۲۶۸۴۹۸۶۸۶ صفحهنمایش شبیهساز سوسو میزند
- [رفع اشکال] مشکل شماره ۲۷۰۰۳۴۸۲۴ عملکرد شبیهساز پساز بهروزرسانی به نسخه ۳۳.۱.۱ کاهش یافته است
- [رفع اشکال] مشکل شماره ۲۲۵۵۴۱۸۱۹ راهاندازی Chrome باعث ازکار افتادن «شبیهساز» در x86_64 میشود
- [رفع اشکال] مشکل شماره ۲۵۷۰۹۷۴۰۴ شبیهساز پساز بیدار شدن میزبان، زمان صحیح را نشان نمیدهد
- افزودن گزارش خرابی برای دستگاههای Apple M1
32.1.11 (۸ فوریه ۲۰۲۳)
با Android Studio Giraffe Canary 2، Flamingo Beta 1، و Electric Eel Patch 1 آزمایش شده است.
- بهینهسازیهای سرعت شبکه
- پشتیبانی از موشواره در «شبیهساز جاسازیشده»
- بهبودهای Virtio-snd
- غیرفعال کردن استفاده از پیوندهای نمادین هنگام از حالت فشرده خارج کردن «شبیهساز Android» درطول نصب
- رفع خرابی در emulator-check
31.3.14 (۱۳ دسامبر ۲۰۲۲)
با Android Studio Dolphin، Electric Eel RC1، و Flamingo Canary 9 آزمایش شده است.
- [رفع اشکال] رفع ازکارافتادنهای AVD که هنگام ورود به سیستم «فروشگاه Play» رخ میدهد.
31.3.13 (۲۷ اکتبر ۲۰۲۲)
با Android Studio Dolphin، Electric Eel Beta 2، و Flamingo Canary 5 آزمایش شده است.
- [رفع اشکال] مشکل شماره ۲۴۹۹۴۸۳۳۸: پارامتر منطقه زمانی کار نمیکند
- [رفع اشکال] مشکل شماره ۲۴۹۳۶۶۵۴۳: گزینه Emulator -dns-server بعداز میانای برنامهسازی کاربردی ۳۱ کار نمیکند
31.3.12 (۱۰ اکتبر ۲۰۲۲)
با Android Studio Dolphin و Electric Eel Beta 1 آزمایش شده است.
این بهروزرسانی شامل بهبودها و اصلاحات زیر است:
- [رفع اشکال] مشکل شماره ۲۴۷۸۴۳۰۰۰: خطای مدیریت مسیر نسبی AVD
- افزایش اندازه دیسک برای میانای برنامهسازی کاربردی ۲۴ و نسخههای جدیدتر
۳۱.۳.۱۱ (۲۳ سپتامبر ۲۰۲۲)
با Android Studio Dolphin و Electric Eel Canary 10 آزمایش شده است.
این بهروزرسانی شامل بهبودها و اصلاحات زیر است:
- [رفع اشکال] ازکارافتادن AVD شبیهساز جاسازیشده در پنجره کنترلهای گسترده
- [رفع اشکال] مشکل شماره ۱۸۳۱۳۹۲۰۷: مشکلات صوتی مربوط به فعال کردن میکروفون توسط شبیهساز
- [رفع اشکال] مشکل شماره ۲۲۹۷۶۴۰۲۴: اشکال لمس چسبنده AVD که منجر به مشکلات رفتار واسط کاربر میشود
- [رفع اشکال] خطا در راهاندازی API 33 AVD در Mac M1.
- [رفع اشکال] مشکل شماره ۲۴۳۰۵۳۴۷۹: سرعت پایین شبکه پساز بهروزرسانی «شبیهساز»
- [رفع اشکال] مشکل شماره ۲۴۴۶۱۷۶۲۷: مکان Maps در Windows و Linux کار نمیکند
- [رفع اشکال] مشکل شماره ۲۳۲۹۷۱۷۹۶: دکمه «تماس با دستگاه» در صفحه «کنترلهای گسترده > تلفن» کار نمیکند
- بهروزرسانی «شبیهساز Android» به minigbm
- انتقال دستورگانهای ساخت به Python3
31.3.10 (۱۸ اوت ۲۰۲۲)
با Android Studio Dolphin Beta 5 و Electric Eel Canary 9 آزمایش شده است.
بارگیریهای مستقل شبیهساز اکنون دردسترس است. اگر با این جدیدترین نسخه پایدار مشکلی دارید یا ازکار میافتد، لطفاً اشکال را ثبت کنید و نسخه قبلی را که کار میکرد از بایگانی بارگیری شبیهساز بارگیری کنید.
این بهروزرسانی شامل بهبودها و اصلاحات زیر است:
- پشتیبانی بهتر از مسیر یونیکد در Windows
- مدیریت بهتر خاموش شدن شبیهساز تا راهاندازی جدید همان AVD بتواند موفقیتآمیز باشد.
- طراحی و تنظیمات پیشفرض دستگاه مجازی Android تاشو بهروز شد
- دکمههای شبیهساز Wear بهروز شد
- بهبودهای جاریسازی صوتی gRPC
- فرمان کنسول شبیهساز با قابلیت تغییر اندازه اضافه شد
- Chrome Fix for API 31
- [رفع اشکال] عدم موفقیت اصالتسنجی «حساب Google» با GmsCore نسخه ۲۱.۴۲.۱۸
31.2.10 (۲۰ آوریل ۲۰۲۲)
با «استودیو Android» نسخه Dolphin Canary 8 و Chipmunk RC 1 آزمایش شده است.
این بهروزرسانی شامل بهبودها و اصلاحات زیر است:
- افزودن ابزار برای بار کردن توابع Vulkan با بازگشتها
- [رفع اشکال] رفع خطای ساخت gcc8
31.2.9 (۲۳ مارس ۲۰۲۲)
با Android Studio Dolphin Canary 7 آزمایش شده است.
این بهروزرسانی شامل اصلاح زیر است:
- [رفع اشکال] نادیده گرفتن فشار حافظه هنگام ذخیره کردن عکس آنی در M1
31.2.8 (۷ فوریه ۲۰۲۲)
با «استودیو Android» نسخه Bumblebee وصله ۱ و Chipmunk Canary 6 آزمایش شده است.
این بهروزرسانی شامل بهبودها و اصلاحات زیر است:
- [رفع اشکال] نمیتوان به سیستم برنامهها وارد شد
- [رفع اشکال] مشکل شماره ۲۱۵۳۶۸۳۵۸: «adb reboot» در پلاتفرم Intel باعث ازکار افتادن avd با «vcpu shutdown request» میشود
31.2.7 (۱ فوریه ۲۰۲۲)
با «استودیو Android» نسخه Bumblebee وصله ۱ و Chipmunk Canary 6 آزمایش شده است.
این بهروزرسانی شامل اصلاح زیر است:
- [رفع اشکال] خطای توقف شبیهساز در دستگاههای M1.
۳۱.۲.۶ (۲۰ ژانویه ۲۰۲۲)
با Android Studio Arctic Fox، Bumblebee Beta 4، و Chipmunk Canary 6 آزمایش شده است.
این بهروزرسانی شامل بهبودها و اصلاحات زیر است:
- دکمههای Wear به شبیهساز Wear OS اضافه شد.
- همه خصوصیتهای خودرو در برگه VHAL قابلویرایش شد.
- [رفع اشکال] اصالتسنجی «حساب Google» با GmsCore نسخه ۲۱.۴۲.۱۸ ناموفق بود.
- [رفع اشکال] Netshaper با VirtioWifi خوب کار نمیکرد.
- [رفع اشکال] فرمان کنسول موشواره رویداد کار نمیکرد.
- بررسی KVM برای ایجاد AVD محلی اضافه شد.
31.1.3 (۱۸ ژانویه ۲۰۲۲)
این بهروزرسانی شامل بهبودها و اصلاحات زیر است:
- درگاههای کنسول برای Fuchsia فعال شد.
- هنگام تغییر اندازه پنجره چندنمایشگری، جهت نادیده گرفته میشود.
- Wi-Fi: پشتیبانی از فیلتر کردن بستههای تکپخشی براساس نشانی مک MAT اضافه شد.
- Wi-Fi: ازکارافتادگی هنگام استفاده از vmnet برطرف شد.
30.9.5 (۱۵ دسامبر ۲۰۲۱)
این بهروزرسانی شامل بهبودها و اصلاحات زیر است:
- امکان تغییر اندازه آسان به پنجرهای با اندازه رایانه یا رایانه لوحی اضافه شده است.
- پشتیبانی از ورودی چندلمسی از دستگاههای میزبان سازگار اضافه شده است.
- VirtioWifi: پشتیبانی از شبکه تکضرب اضافه شد.
- «ورودی چرخشی» برای «تصاویر سیستم Wear» فعال شد.
- مشکل پیکربندی صدای gRPC برطرف شد.
- «بازپخش شبیهساز SensorReplay» برای پشتیبانی از حسگرهای استاندارد Android بهروز شد.
- شبیهساز را بااستفاده از USB با گذر USB به لوازم جانبی و دستگاهها متصل کرد.
30.4.5 (۲۳ فوریه ۲۰۲۱)
این بهروزرسانی شامل بهبودها و اصلاحات زیر است:
- macOS: مشکلات مربوط به اعوجاج ورودی صوتی برطرف شد.
- پشتیبانی از virtio-vsock در فضای کاربر اضافه شد.
- تصاویر سیستم آینده از virtio-console برای logcat و پیامهای هسته استفاده خواهند کرد.
- سرعت بخشیدن به پرداز Vulkan.
- پشتیبانی از اشکالزدایی عکس آنی در آزمایش ناموفق اضافه شد.
- virtio-gpu: تعاریف بهروزرسانی شد تا از جدیدترین شمارشهای منبع blob پشتیبانی کند.
- پشتیبانی از عکس آنی برای انتقال گرافیک نوع «asg» اضافه شد.
- macOS: پشتیبانی از ساخت دربرابر macOS SDK 11.1+ اضافه شد.
- KVMclock بهطور پیشفرض در ایمیجهای سیستم جدیدتر فعال است.
- پشتیبانی از حسگر ضربان قلب به شبیهسازهای Wear اضافه شد.
- بخش پشتی Vulkan libportability برداشته شد.
- پشتیبانی از ویژگیهای بیشتر در شبیهساز مودم اضافه شد.
۳۰.۰.۲۶ (۱۶ اوت ۲۰۲۰)
این بهروزرسانی شامل چندین ویژگی جدید، بهبود ویژگیهای موجود، و رفع اشکال است.
پشتیبانی از دستگاههای تاشو با حسگر لولای مجازی و نمای سهبعدی
پشتیبانی از حسگرهای لولا برای دستگاههای تاشو اضافه شد. این کار به تصویر سیستم Android 11 و پیکربندی AVD در آینده نیاز دارد. پارامترهای نمای تاشو سهبعدی و لولا اکنون با پیشتنظیمهای تاشو موجود ادغام شدهاند. برای مثال، میتوان از موارد زیر با فایل
config.iniدستگاه مجازی Android تاشو ۷٫۳ استفاده کرد:hw.sensor.hinge = yes hw.sensor.hinge.count = 1 hw.sensor.hinge.type = 1 hw.sensor.hinge.ranges = 180-360 hw.sensor.hinge.defaults = 180 hw.sensor.hinge.areas = 54.7-0 hw.sensor.posture_list=4, 3 hw.sensor.hinge_angles_posture_definitions=210-360, 180-210 hw.sensor.hinge.fold_to_displayRegion.0.1_at_posture=4دستگاههای تاشو اکنون پارامتر زیرنوع هم دارند. دارایی
config.inihw.sensor.hinge.sub_type = hinge/foldاکنون دردسترس است. برای اطلاعات بیشتر، پست وبلاگ توسعه برای Android 11 با شبیهساز Android را ببینید.حسگر لولا اکنون بهطور پیشفرض فعال است.
اگر دستگاه تاشو پیکربندی شده باشد، شبیهساز اکنون بهروزرسانیهای حسگر زاویه لولا و تغییرات وضعیت را به مهمان ارسال میکند. اکنون وقتی دکمههای تا کردن یا باز کردن نوارابزار فشار داده میشود، دستگاههای تاشو موجود زاویه حسگر لولا و وضعیت را بهروز میکنند.
شبیهساز برای میزبانهای ARM64
کد منبع شبیهساز Linux اکنون از کامپایل متقاطع از میزبانهای x86_64 به arm64 پشتیبانی میکند، که اجرای تصاویر سیستم arm64 را با مجازیسازی KVM ممکن میسازد. درحالحاضر، فقط
-gpu swiftshader_indirect(Swiftshader arm64 host rendering) پشتیبانی میشود، اما با جایگزین کردن lib64/gles_swiftshader با مجموعهای سازگار از کتابخانههای libEGL/libGLESv2 پردازنده گرافیکی میزبان و سپس راهاندازی مجدد با-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
- پشتیبانی در سمت میزبان برای منابع حباب منسجم میزبان virtio-gpu آینده اضافه شد.
- بهدلیل نحوه عملکرد پردازاندن شبیهساز، اکنون virtio-gpu virtqueue را در رشته vcpu پردازش میکنیم (زیرا پردازاندن بههرحال به رشتههای دیگر منتقل میشود). پردازاندن virtio-gpu در نسخه شبیهساز و ایمیج سیستم آینده فعال خواهد شد.
- در تصویر سیستم آینده، شبیهساز میتواند همه گرافیکها را با پشته مبتنی بر virtio-gpu اجرا کند.
سایر ویژگیهای جدید و بهبودها
- گذرگاه USB اکنون بااستفاده از
-qemu -usb -device usb-host,vendorid=<usb-vendor-id>,productid=<usb-product-id>در Windows دردسترس است. (این ویژگی باید ازقبل در 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 استفاده میکند، وقتی نسخه هسته مهمان >= 5.4 (تصاویر سیستم R یا جدیدتر) باشد.
- شبیهساز اکنون از LZ4 برای خارج کردن هستههای مهمان از حالت فشرده استفاده میکند که باعث میشود با خط لوله هسته مدرن سازگار باشد.
فرمانهای کنسول برای دریافت دایرکتوری AVD شبیهساز، مسیر فایل اکتشاف در مورد استفاده جاسازیشده در Studio، و مسیر عکسهای آنی اضافه شد:
adb emu avd path # Obtains path to AVD directory adb emu avd discoverypath # Obtains path to discovery file adb emu avd snapshotspath # Obtains path to snapshots folder adb emu avd snapshotpath <snapshotName> # Obtains path to the folder that stores the snapshot for the snapshot with name <snapshotName>
برای اینکه ذخیره کردن فضای عمودی صفحهنمایش آسانتر شود، گزینهای برای پنهان کردن قاب دستگاه برای «دستگاه مجازی Android» فعلی در کنترلهای گسترده > تنظیمات اضافه کردهایم. برای پنهان کردن قاب دستگاه بهصورت سراسری برای همه AVDها، پرچم ویژگی
NoDeviceFrameرا دردسترس قرار دادهایم که میتوان آن را با راهاندازی شبیهساز از خط فرمان با قاب-feature NoDeviceفعال کرد، یا برای قفل کردن آن،NoDeviceFrame = onرا به~/.android/advancedFeatures.iniاضافه کرد (اگر این فایل ازقبل وجود ندارد، آن را ایجاد کنید).یک مورد کرکرهای در صفحه سلولی برای روشن و خاموش کردن پشتیبانی از محدودیت مصرف اضافه شده است، این مورد برای تصاویر سیستم قدیمیتر که از کلید روشن/خاموش محدودیت مصرف 5G پشتیبانی نمیکنند، بدون عملیات است.
- همچنین فرمان کنسول را برای همین هدف اضافه کردیم:
gsm meter on|off
- همچنین فرمان کنسول را برای همین هدف اضافه کردیم:
زنجیره ابزار / ساخت به C++17 ارتقا داده شد.
اصلاحات: شبیهساز جاسازیشده
- اکنون بریدهدان باید کار کند.
- مشکلی که باعث میشد نویسههای بزرگ بهصورت نویسههای کوچک در شبیهساز ارائه شوند برطرف شد.
- مشکل بار کردن کد کنسول از مسیر یونیکد در Windows برطرف شد.
- پیام خطای
SO_REUSEPORTدر linux برطرف شد. - مشکل خرابی عکس آنی هنگام ارسال فرمانهای عکس آنی ازطریق gRPC و همچنین هنگام فشار دادن دکمه ذخیره عکس آنی در شبیهساز جاسازیشده Android Studio برطرف شد.
هنگام استفاده از شبیهساز Linux جاسازیشده در Studio، متوجه شدیم که اگر این کار ازطریق «میزکار از دور Chrome» انجام شود، اشکالی وجود دارد که در آن
XDG_RUNTIME_DIRتنظیم نشده است و ممکن است باعث شود شبیهساز جاسازیشده بهدلیل قرار گرفتن فایلهای کشف شبیهساز درXDG_RUNTIME_DIRظاهر نشود. میتوانید وضعیت مشکل مربوطه را در ردیاب مشکل Chrome بررسی کنید.بهعنوان راهحل، شبیهساز اکنون به استفاده از فایلهای اکتشاف در دایرکتوری احتمالاً متفاوتی که براساس شناسه کاربری کاربر است برمیگردد:
/run/user/<uid>.شبیهساز جاسازیشده: دستگاههای دارای گوشههای گرد/بریدگی اکنون چیدمانشان را بهدرستی تغییر میدهند تا برای گوشهها و بریدگی فضا ایجاد کنند. این کار به راهاندازی سرد آن شبیهسازها نیاز دارد.
نقطه پایانی gRPC اکنون از ارسال پیامک به دستگاه پشتیبانی میکند.
اصلاحات کلی
- مشکلات سازگاریای در اجرای شبیهساز Windows با Riot Vanguard فعال دیدهایم. شبیهساز Windows اکنون Vanguard anti-cheat را شناسایی میکند و اگر Vanguard شناسایی شود، پیام هشداری نشان میدهد.
- خطای
FD_SETSIZEدر Windows برطرف شد. اکنون برای برقراری اتصالهای غیرمسدودکننده به سرورهای لوپبک، بهجایselect()ازWSAEventSelect()استفاده میکنیم. - پشتیبانی از ویژگی F16C CPUID به شبیهساز Linux اضافه شد و مشکلات اجرای برخیاز برنامههای ARM64 ازطریق ترجمه NDK برطرف شد؛ macOS/Windows درحال انجام است.
- بازپخش مسیر gpx/kml برای دنبال کردن مُهرهای زمان اصلاح شد.
- نماد پرشی در راهاندازی برای MacOs رفع شد.
- اگر
hw.audioInput=noوhw.audioOutput=noدرconfig.ini، صدای شبیهساز اکنون بهدرستی غیرفعال شده است. - مشکلی برطرف شد که در آن اگر پنجره شبیهساز کوچک میشد درحالیکه پنجره کنترلهای گسترده باز بود اما فعال نبود، پنجره کنترلهای گسترده هنگام تغییر اندازه پنجره شبیهساز همچنان نشان داده میشد. در بهروزرسانی آتی، این رفتار (مورد با پنجره کنترلهای گسترده فعال) را کاملاً برمیداریم.
- رفع اشکال ناپایدار مربوط به عدم اتصال Wi-Fi هنگام شروع شبیهساز.
- مشکل توقف هنگام خروج که وقتی شبیهساز فرمانهای پوسته را با زمان استراحت طولانی یا نامحدود صادر میکرد رخ میداد برطرف شد.
- pc-bios با اصلاحاتی بهروز شد تا از تصاویر بزرگی که به
-initrdمنتقل میشوند بهتر پشتیبانی کند؛ BIOS قبلی از روش بسیار ناکارآمدی استفاده میکرد. - رفع خرابی درطول خاتمه دادن هنگام استفاده از گزینه
-wifi-server-port. - اکنون اگر گزینههای پشتیبانینشده به
-propارسال شود، شبیهساز هشدار چاپ میکند (فقط ویژگیهای qemu.* پشتیبانی میشود). - هنگام ساختن شبیهساز در Windows، احتمال دیدن خطاهای ناپایدار در نوشتن فایلها کمتر خواهد بود. برای اطلاعات بیشتر، دستورالعملهای ساخت Windows را ببینید.
- دکمه «بزرگنمایی» برای دستگاههای مجازی 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 در برخیاز درایورهای GPU که در آن برخیاز عملکردهای دستگاه ۱.۱ پیدا نمیشد برطرف شد.
- Vulkan: We've reverted back to using the prebuilt loader as favoring the system Vulkan loader caused issues in some setups; will figure out a better solution.
- مشکل استفاده از حافظه خارجی Vulkan که در آن ممکن بود شاخصهای نوع حافظه نامطابق در میزبان وارد شود برطرف شد.
- مشکل شبیهسازی
GL_ALIASED_POINT_SIZE_RANGEکه در آن enum در میزبان پشتیبانی نمیشد برطرف شد. - مشکل عدم کامپایل شدن سایهزنهای 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 (۳۰ آوریل ۲۰۲۰)
این بهروزرسانی شامل پشتیبانی از اجرای شبیهساز مستقیماً در Android Studio و دستگاههای مجازی با «حالت پنجره قالب آزاد» فعالشده بهطور پیشفرض است.
اجرا کردن «شبیهساز» در «استودیو Android»
اکنون «شبیهساز Android» میتواند مستقیماً در Android Studio اجرا شود. از این ویژگی برای صرفهجویی در فضای صفحهنمایش، پیمایش سریع بین شبیهساز و پنجره ویرایشگر بااستفاده از کلیدهای میانبر، و سازماندهی گردش کار IDE و شبیهساز در یک پنجره برنامه استفاده کنید.
حالت پنجره قالب آزاد
اکنون میتوانید با انتخاب نمایه سختافزاری رایانه لوحی ۱۳٫۵ اینچی Freeform هنگام ایجاد دستگاه مجازی در Android Studio، یک AVD ایجاد کنید که «حالت پنجره Freeform» در آن فعال باشد. این نمایه سختافزاری به تصویر سیستم با Android 11 Developer Preview 3 یا بالاتر نیاز دارد.
مشکلات شناختهشده
تغییر اندازه پنجرههای قالب آزاد درحالحاضر بهدلیل مشکلات انتقال تمرکز به «مدیر پنجره» خراب است. در نسخه پخش آتی ایمیج سیستم Android 11 به این مورد رسیدگی خواهد شد.
۳۰.۰.۰ (۱۹ فوریه ۲۰۲۰)
این بهروزرسانی شامل تصاویر سیستم Android 11 (سطح میانای برنامهسازی کاربردی ۳۰) و بهبود عملکرد هنگام اجرای دودوییهای ARM است.
تصاویر سیستم Android 11
اکنون میتوانید با انتخاب یکی از ایمیجهای سیستم سطح میانای برنامهسازی کاربردی ۳۰، یک AVD ایجاد کنید که Android 11 را اجرا میکند:
- x86: شامل هر دو واسط دودویی برنامه x86 و ARMv7.
- x86_64: شامل رابطهای دودویی نرمافزار x86، x86_64، ARMv7، و ARM64.
پشتیبانی از باینریهای ARM در تصاویر سیستم Android 9 و 11
اگر قبلاً نمیتوانستید از «شبیهساز Android» استفاده کنید چون برنامهتان به دودوییهای ARM وابسته بود، اکنون میتوانید از تصویر سیستم Android 9 x86 یا هر تصویر سیستم Android 11 برای اجرای برنامهتان استفاده کنید – دیگر لازم نیست تصویر سیستم خاصی را برای اجرای دودوییهای ARM بارگیری کنید. این تصاویر سیستم Android 9 و Android 11 بهطور پیشفرض از ARM پشتیبانی میکنند و درمقایسه با تصاویر دارای شبیهسازی کامل ARM، عملکرد بسیار بهتری ارائه میدهند.
مشکلات شناختهشده
- برخیاز باینریهای ARMv7 در تصاویر سیستم Android 11 x86 و x86_64 اجرا نمیشوند. هنگام هدفیابی Android 11، ساختن برای ARM64 را درنظر بگیرید.
29.0.11 (۲۹ مه ۲۰۱۹)
این بهروزرسانی شامل بهبودها و اصلاحات زیر است:
- Windows: شبیهساز اکنون بهجای اینکه بهصورت ایستا با
libgccکامپایل شود، بهlibgccDLL که ما ارسال میکنیم متکی است. - Linux: پشتیبانی از logcat به میانای برنامهسازی کاربردی gRPC اضافه شد. برای اطلاعات بیشتر درباره gRPC، به شبیهساز جاریسازی gRPC (Linux) مراجعه کنید.
- شبیهساز اکنون شامل ساخت بدون نمایشگر برای مهمانان x86 ۳۲ بیتی است
(
qemu-system-i386). این ویژگی تصاویر x86 ۳۲ بیتی را برای سطوح API ۲۶ و پایینتر فعال میکند تا با ساخت بدون نمایشگر اجرا شوند. توجه داشته باشید که برای مهمانان x86 ۳۲ بیتی با میانای برنامهسازی کاربردی ۲۷ و جدیدتر، شبیهساز از موتور ۶۴ بیتی (qemu-system-x86_64) استفاده میکند زیرا در این ایمیجهای سیستم، درحالیکه فضای کاربر ۳۲ بیتی است، هسته ۶۴ بیتی است. «استودیو Android» از هسته برای انتخاب موتورهای شبیهسازی استفاده میکند. - اکنون میتوانید مسیرهای کتابخانه Qt سفارشی را بااستفاده از متغیر محیطی
ANDROID_QT_LIB_PATHمشخص کنید. - اکنون میتوانید شبیهساز را با دودوییهای قبلی که از QEMU1 استفاده میکنند اجرا کنید، اگر
فایلهای اجرایی QEMU1 (
emulator[64]-[x86|arm|etc]) در فهرست راهنمای شبیهساز قرار داده شده باشند. - Windows: مشکلی که گاهی اوقات باعث میشد شبیهساز با پیام «درخواست خاموش کردن vCPU» راهاندازی نشود برطرف شد.
- مشکل مربوط به مانع خط لوله غیرضروری در بافتهای فشرده شبیهسازیشده در Vulkan برطرف شد.
- خطایی که هنگام استفاده از کدبندی انتقال تکهای در درخواستهای پراکسی http رخ میداد برطرف شد. برای اطلاعات بیشتر، جزئیات commit را ببینید.
۲۹.۰.۹ (۷ مه ۲۰۱۹)
این بهروزرسانی شامل اصلاح زیر است:
- Windows: مشکلی که باعث میشد دوربین صحنه مجازی و وبکم در شبیهساز کار نکنند برطرف شد.
29.0.8 (۶ مه ۲۰۱۹)
این بهروزرسانی شامل بهبودها و اصلاحات زیر است:
- پشتیبانی از چند نمایشگر سختافزاری مجازی اضافه شد، وقتی سرویس مهمانی برای شمارش و تنظیم هر نمایشگر وجود دارد. چندین نمایشگر سختافزار مجازی در بهروزرسانی تصویر سیستم شبیهساز آینده گنجانده خواهد شد.
- گزینه خط فرمان جدیدی اضافه شد:
-delay-adb. این گزینه پردازش بستههای ADB را تا زمانی که مهمان راهاندازی را تکمیل کند (از راهاندازی سرد) متوقف میکند. این گزینه به حل مشکلاتی کمک میکند که ممکن است درصورت استفاده از شبیهساز در محیط CI که شبیهساز را بازراهاندازی میکند و همزمان از DDMS استفاده میکند رخ دهد. - خطایی که هنگام بار شدن عکسهای آنی رخ میداد و باعث میشد
glIsRenderbufferمقدار نادرستی را برگرداند برطرف شد. - برخی مشکلات مربوط به وضعیت قدیمی هنگام بازراهاندازی مهمان Android برطرف شد.
- Windows: مشکلات مربوط به عدم راهاندازی شبیهساز در شرایطی که نام کاربری Windows دارای نویسههای غیرASCII یا فاصله بود برطرف شد.
مشکلات شناختهشده
- رابط کاربری «عکسهای آنی» برای تصاویر سیستم Automotive غیرفعال است چون عکسهای آنی درحالحاضر برای این تصاویر سیستم پشتیبانی نمیشود.
29.0.6 (۱ مه ۲۰۱۹)
این بهروزرسانی شامل چندین ویژگی جدید، بهبود ویژگیهای موجود، و رفع اشکال است.
برداشتن پشتیبانی از QEMU1 و Windows ۳۲ بیتی
برای نگهداری بهتر شبیهساز، دیگر باینریهای QEMU1 و Windows ۳۲ بیتی را عرضه نمیکنیم. اگر از Windows نسخه ۳۲ بیتی استفاده میکنید، نمیتوانید به نسخه ۲۹.۰.۶ ارتقا دهید.
الزامات تصاویر سیستم Android Q
اگر میخواهید «دستگاه مجازی Android» (AVD) اجرا کنید که از تصویر سیستم Android Q استفاده میکند، اکنون باید از نسخه ۲۹.۰.۶ (این نسخه پخش) یا بالاتر استفاده کنید.
بهبودهای Project Marble
این بهروزرسانی ادامه کار ما روی طرح ابتکاری Project Marble است که در نشست توسعهدهندگان Android در نوامبر ۲۰۱۸ اعلام شد. برای اطلاعات بیشتر درباره سایر بهبودهای Project Marble در نسخههای قبلی، شبیهساز Android: بهبودهای Project Marble را ببینید.
برای این بهروزرسانی، بیشتر تلاشهای Project Marble ما به کاهش استفاده از منابع شبیهساز اختصاص داده شد، مانند کاهش استفاده از CPU شبیهساز در حالت بیکار. همچنین تغییراتی را اضافه کردهایم که کار با شبیهساز را در طیف گستردهتری از محیطها آسانتر میکند و مشکلات کیفیت عمومی را برطرف کردهایم.
بخشهای زیر بهبودهای Project Marble را که در این بهروزرسانی گنجانده شده است شرح میدهد:
بهبودهایی برای رفتار صوتی میزبان
از نسخه ۲۸.۰.۳، شبیهساز بهطور پیشفرض ورودی صوتی را از میزبان مسدود میکند.
اگر میخواهید از دادههای صوتی میزبان استفاده کنید، میتوانید با رفتن به کنترلهای گسترده > میکروفون و فعال کردن میکروفون مجازی از ورودی صوتی میزبان استفاده میکند، این گزینه را فعال کنید. هرزمان شبیهساز بازراهاندازی شود، این گزینه بهطور خودکار غیرفعال میشود.
اگر از خط فرمان استفاده میکنید، میتوانید بااستفاده از گزینه -allow-host-audio، صدای میزبان را نیز فعال کنید و میتوانید از فرمانهای ADB زیر برای روشن یا خاموش کردن دادههای صدای میزبان استفاده کنید:
adb emu avd hostmiconadb emu avd hostmicoff
بهبودهایی برای ساختهای شبیهساز بدون واسط گرافیکی
از نسخه ۲۸.۰.۲۵، شبیهساز شامل گزینه ساخت بدون واسط است که میتواند بدون واسط کاربری اجرا شود. میتوانید از ساختهای بدون سر برای کمک به راهاندازی شبیهساز برای 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 است:
- برای جلوگیری از خرابی در رمزگشایی
libpngQt هنگام راهاندازی برخیاز ایمیجهای سیستم، شبیهساز اکنون از نسخه خودش ازlibpngبرای رمزگشایی تصاویر PNG استفاده میکند. - برای رفع مشکلات مربوط به برخیاز نصبهای Linux که حاوی نسخههای ناسازگار
برخیاز کتابخانههای وابسته به Qt هستند، اکنون
libfreetype،libsoftokn،libsqlite3، وlibxkbcommonرا با شبیهساز بستهبندی میکنیم. - شبیهساز اکنون از کتابخانههای پنجرهسازی بومی پلتفرم برای دریافت ابعاد نمایشگر استفاده میکند، بهجای استفاده از کتابخانههای Qt که نتایج غیرقابلاعتمادی برمیگرداندند.
بهینهسازیهای خودکار واحد پردازش مرکزی پساز راهاندازی سرد
برای رفع مشکل استفاده از CPU، شبیهساز اکنون فرمانهای ADB زیر را در راهاندازی سرد
پساز دریافت سیگنال boot complete اجرا میکند:
adb shell settings put screen_off_timeout 214783647- این فرمان زمان خاموش شدن صفحهنمایش را افزایش میدهد تا بتوان از شبیهساز در حالت باتری بدون شارژ استفاده کرد. در حالت باتری، استفاده از واحد پردازش مرکزی در پسزمینه بهشدت کاهش مییابد.
- در حالت شارژ AC، عملیات پسزمینه GMSCore مانند بهروزرسانیهای برنامه میتواند بدون هیچ هشداری، تمام هستههای CPU دستگاه و درنتیجه، دستگاه کاربر را اشغال کند.
adb shell pm revoke com.google.android.googlequicksearchbox android.permission.RECORD_AUDIO- این فرمان اجازههای میکروفون را برای برنامه جستجوی Google لغو میکند، که استفاده از واحد پردازش مرکزی (CPU) در پسزمینه را در صفحه اصلی و در راهانداز هنگام فعال بودن برنامه جستجوی Google بهطور قابلتوجهی کاهش میدهد.
- این فرمان علاوهبر رفتار پیشفرض شبیهساز برای غیرفعال کردن صدای میزبان برای میزبان اجرا میشود. علاوهبراین، این کار بهطور خودکار کاهش استفاده از واحد پردازش مرکزی را که برای تشخیص کلمه کلیدی از نسخه ۲۸.۰.۲۳ شرح داده شده است ارائه میدهد.
متغیرهای محیطی جدید برای پایش عملکرد
اکنون میتوانید از دو متغیر محیطی جدید برای فعال کردن نظارت دقیق بر عملکرد شبیهساز و استفاده از منابع استفاده کنید.
SHOW_PERF_STATS=1- این متغیر محیطی امکان ردیابی استفاده از واحد پردازش مرکزی و RAM را فراهم میکند. ردیابی استفاده از RAM بین استفاده از گرافیک و کل حافظه مقیم تفاوت قائل میشود.
ANDROID_EMU_TRACING=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برای کدبندی و رمزگشایی ویدیو به ۳.۴.۵ ارتقا یافت. - سربار ورودی/خروجی حلقه اصلی QEMU در macOS با جایگزین کردن حلقه اصلی مبتنی بر
select()با حلقه اصلی مبتنی برkqueueبهطور قابلتوجهی کاهش یافته است. - اندازه میانگیر Logcat به ۲ مگابایت افزایش یافت تا مشکلات مربوط به EOF غیرمنتظره و ناپایدار هنگام اجرای logcat با شبیهساز برطرف شود.
- شبیهساز اکنون متغیر محیطی
LC_ALL=Cرا بهطور پیشفرض صادر میکند. این تغییر به ازکارافتادنها و مشکلات ناسازگاری مربوط به اجرای شبیهساز در زبانهای مختلف میپردازد. - اکنون میتوانید بااستفاده از آمار عملکرد که در کنترلهای گسترده > تنظیمات > پیشرفته > آمار عملکرد دردسترس است، میزان استفاده شبیهساز از CPU و RAM را ردیابی کنید. اگر بهنظر میرسد شبیهساز بیشازحد از واحد پردازش مرکزی یا حافظه دسترسی تصادفی استفاده میکند، از این آمار برای تشخیص سریع مشکلات استفاده کنید.
glReadPixels GL_IMPLEMENTATION_COLOR_READ_TYPEاکنون بهجای نتیجه شبیهسازیشده، از نتیجه واحد پردازش گرافیکی میزبان استفاده میکند. این تغییر به رفع مشکلاتی کمک میکند که در آنها تصاویر و داراییها بهدلیل قالب نامناسب برای بازخوانی نمایش داده نمیشوند.- پشتیبانی از افزونههای OpenGL ES
GL_EXT_texture_format_BGRA8888وGL_APPLE_texture_format_BGRA8888اضافه شد، درصورتیکه این افزونهها توسط میزبان پشتیبانی شوند. - اطلاعات عیبیابی بیشتری به «رابط کاربری گزارش اشکال» اضافه شد. علاوهبراین، میتوانید بااستفاده از فرمانهای زیر، از کنسول به گزارشهای اشکال دسترسی پیدا کنید:
telnet localhost 5554avd bugreport
- در تصاویر سیستم Android Q، شبیهساز حداقل اندازه RAM خود را به ۲ گیگابایت افزایش میدهد.
- افزودن ثبت و چاپ بیشتر هرگاه OpenGL یا hypervisor نتواند مقداردهی اولیه کند.
- اگر شبیهساز نتواند نمونه همزمان
-read-onlyاز AVD را راهاندازی کند، شبیهساز اکنون تلاش میکند AVD-read-onlyرا ۳ بار دیگر در ۳ ثانیه مجدداً راهاندازی کند. این تغییر احتمال اینکه شبیهساز بتواند نمونههای همزمان-read-onlyاز یک AVD را راهاندازی کند افزایش میدهد، اگر دیگر نمونههای قابلنوشتن آن AVD هنوز پاکسازی فایلهای قدیمی را تمام نکرده باشند. - برای تصاویر سیستم آینده، شبیهساز اکنون از Hardware Composer 2.0 پشتیبانی میکند. این تغییر باید سربار درایور را هنگام اجرای اکثر پویانماییها کاهش دهد.
- ساخت شبیهساز اکنون براساس CMake/Ninja است.
- در واسط کاربر کنترلهای گسترده شبیهساز، خطوط تقسیمکننده در جدول میانبرهای صفحهکلید بازیابی شدهاند.
- اکنون کاربران میتوانند موافقت کنند که سنجههای استفاده از CPU و RAM را در بازه زمانی ۱۰ ثانیهای به تیم ما ارائه دهند. ما از این سنجهها برای غنیسازی دادههایمان درباره استفاده از منابع شبیهساز با موارد استفاده مختلف از کاربرانمان استفاده میکنیم، که به ما امکان میدهد شبیهساز را کارآمدتر و پاسخگوتر کنیم.
اصلاحات کلی Project Marble
این بهروزرسانی همچنین شامل اصلاحات کلی زیر است که بخشی از ابتکار Project Marble است:
- مشکلات مربوط به لرزش و قابهای نادرست که در سیستمهای دارای پردازنده گرافیکی Intel هنگام استفاده از تصاویر سیستم Android Q نمایش داده میشدند برطرف شد.
- مشکلات مربوط به نمایش صفحه سیاه هنگام استفاده از تصاویر سیستم Android Q با پوستههای Pixel 2 XL (یا هر پوستهای که دارای بریدگی یا گوشههای گرد است) برطرف شد.
- مشکلی که باعث میشد گزینه خط فرمان
-partition-sizeاندازه پارتیشن داده را تنظیم نکند برطرف شد. - مشکلی برطرف شد که در آن pulseaudio در شبیهساز Linx میچرخید و در برخی شرایط کل هسته CPU را اشغال میکرد.
- مشکلات مربوط به دسترسی به حافظه خارج از محدوده هنگام پردازش بافتهای فشرده برطرف شد.
- خطاهای GL که هنگام بهروزرسانی برخیاز میانگیرهای gralloc (با قالب RGB 565، RGB10A2، RGB(A)16F) در میزبان در
glTexSubImage2Dرخ میداد برطرف شد. - مشکل نمایش در تصاویر سیستم Android Q با عکسهای آنی که در آن هندسه کشوی اعلانات با تنظیمات تقسیمکننده نمونه نامناسب ارائه میشد برطرف شد.
- چند مشکل ازکارافتادن و توقف در راهاندازی که بازتولید آنها دشوار بود و بهدلیل ازدست رفتن سیگنالهای Qt یا داشتن وضعیتهای ناپایدار و ناسازگار در راهاندازی رخ میداد برطرف شد.
- مشکلات همزمانی متعددی برطرف شد. اکنون میتوانیم شبیهساز Linux را با ThreadSanitizer (TSAN) بسازیم که میتواند بهراحتی اشکالاتی را که درغیراینصورت بازتولید آنها دشوار است آشکار کند.
- برای کاربران Linux: متوجه شدهایم که در برخی هستههای میزبان، هسته Android مهمان
میتواند با خطای سختافزاری عمومی در KVM خطا دهد و خارج شود. اکنون وقتی این اتفاق میافتد، شبیهساز
abort()خواهد شد تا اشکالزدایی افزایش یابد (قبلاً شبیهساز فقط متوقف میشد). - برای کاربران Linux: برای راحتی در راهاندازیهای CI، میتوانید از گزینه خط فرمان جدید
-stdouterr-file <file-name>برای هدایت مجددstdoutوstderrبه یک فایل استفاده کنید. - مشکلی که باعث میشد
SO_REUSEADDRبهطور نادرست استفاده شود برطرف شد. برای اطلاعات بیشتر، جزئیات ارسال را ببینید. - مشکل قدیمی شبیهساز Windows که در آن زیرفرایندها، مانند فرمانهای ADB، درصورت وجود فاصله در نام کاربری شروع نمیشدند برطرف شد.
- مشکل مربوط به مقداردهی اولیه نشدن RCU در رشتههای HAXM vCPU برطرف شد. این اصلاح احتمالاً میتواند برخیاز خرابیها و شرایط رقابتی را برطرف کند.
- خرابیای که با الگوهای خاصی از ذخیره و بار کردن عکسهای آنی از میانای کاربری عکسهای آنی بااستفاده از تصاویر سیستم Android Q اخیر رخ میداد برطرف شد.
- مشکلی برطرف شد که در آن اگر هنگام ذخیره شدن عکس آنی، ماکرو واقعیت افزوده درحال پخش بود، وقتی شبیهساز از عکس آنی مقداردهی اولیه میشد، دوربین صحنه مجازی خالی میماند.
- مشکلی که باعث میشد برخیاز کاربران با راهاندازیهای میزکار از راه دور هنگام راهاندازی شبیهساز در Linux با صفحه سیاه مواجه شوند برطرف شد. برای جلوگیری از این اتفاق، شبیهساز اکنون بهطور صریح
MESA_RGB_VISUALرا پیکربندی میکند. برای اطلاعات بیشتر، جزئیات ثبت را ببینید. - مشکلی که باعث میشد دکمههای چرخش در دستگاههای مجازی Android برای TV ظاهر شوند برطرف شد.
- مشکلی برطرف شد که در آن اگر شبیهساز روی همیشه در بالا تنظیم شده بود، پنجره کنترلهای گسترده هربار که شبیهساز چرخانده میشد ظاهر میشد.
نمایههای سختافزاری برای دستگاههای تاشو
شبیهساز اکنون شامل نمایههای سختافزاری برای دستگاههای تاشو است. برای استفاده از این نمایههای سختافزاری جدید، باید از Android Studio 3.5 Canary 10 یا بالاتر استفاده کنید.
دو نمایه سختافزاری تاشو وجود دارد که میتوانید برای ایجاد AVD استفاده کنید:
- تاشو ۷٫۳ اینچی: ۱۵۳۶×۲۱۵۲ تانشده، ۴٫۶ اینچی ۸۴۰×۱۹۶۰ تاشده
- تاشو ۸ اینچی: ۲۲۰۰x۲۴۸۰ تانشده، ۶٫۶ اینچی ۱۴۸۰x۲۴۸۰ تاشده
وقتی شبیهساز را بااستفاده از یکی از این نمایههای سختافزاری اجرا میکنید، میتوانید دستگاه را بااستفاده از کنشهای تا کردن و باز کردن در نوارابزار شبیهساز، فرمانهای کنسول، یا میانبرهای صفحهکلید زیر تا کنید و باز کنید:
- تا کردن:
Ctrl + F(Command + Fدر macOS) - باز کردن:
Ctrl + U(Command + Uدر macOS)
ماکروهای واقعیت افزوده
شبیهساز اکنون شامل ماکروهای واقعیت افزودهای است که میتواند به شما در آزمایش کنشهای رایج واقعیت افزوده کمک کند. برای مثال، میتوانید از ماکرو برای بازنشانی همه حسگرهای دستگاه به وضعیت پیشفرضشان استفاده کنید.
برای اطلاعات بیشتر، آزمایش کنشهای رایج واقعیت افزوده با ماکروها را ببینید.
پشتیبانی Vulkan (Windows، Linux)
کاربران Windows و Linux اکنون میتوانند برنامههای Vulkan را با «شبیهساز Android» تا Vulkan 1.1 آزمایش کنند، البته درصورتیکه از تصویر سیستم سازگار (Android Q Beta 3 یا بالاتر برای Vulkan 1.1، Android Q Beta 2 برای Vulkan 1.0) و GPU میزبان سازگار (شامل اکثر GPUهای Intel، NVIDIA، و AMD از سال ۲۰۱۴ به بعد) استفاده کنند.
برای فعال کردن پشتیبانی Vulkan، باید پرچمهای ویژگی زیر را به فایل
~/.android/advancedFeatures.ini خود اضافه کنید (اگر فایل وجود ندارد، آن را ایجاد کنید):
Vulkan = onGLDirectMem = on
پشتیبانی اولیه برای توسعهدهندگان ROM
توسعهدهندگان ROM که درحال ساختن هدفهای sdk_phone_x86 یا sdk_phone_x86_64 (انواع userdebug، eng) در شاخه AOSP master هستند، اکنون میتوانند شبیهساز Vulkan-enabled را اجرا کنند.
این پشتیبانی هنوز آزمایشی است و عمدتاً برای توسعهدهندگانی است که روی
ایمیجهای سیستم، درایورها، و موتورهای بازی کار میکنند. بسیاری از افزونهها هنوز وجود ندارند.
بااینحال، از حافظه HOST_COHERENT پشتیبانی میشود و اکنون باید بتوانید
نمونههای آموزشی Vulkan API را اجرا کنید.
اگر از 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 با تصویر سیستم سازگار (Android Q Beta 3 و بالاتر) استفاده کنید:
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)
همواره تلاش میکنیم شبیهساز را تا حد امکان همهکاره کنیم و برای این کار، رندر کردن GPU میزبان و تعاملپذیری را در گستردهترین طیف زمینههای اجرایی مجاز میکنیم. کاربران CI و رایانه از دور ما با مشکلات دیرینه زیر مواجه هستند:
- ارسال برنامهنویسیشده فرمانهای ورودی به شبیهساز شامل اجرای فرمانهای پوسته adb است که میتواند سربار بالایی داشته باشد، یا استفاده از کنسول telnet که سریعتر است اما ممکن است با برخی پیکربندیهای شبکه کار نکند.
- کاربران CI اغلب شبیهسازها را بدون واسط گرافیکی اجرا میکنند، که میتواند تشخیص مشکلاتی را که نیاز به قابلمشاهده بودن یا تعاملی بودن صفحهنمایش دارند دشوار کند.
- کاربران میز کار ازراهدور اغلب نمیتوانند هنگام استفاده از پردازنده گرافیکی میزبان برای رندر کردن با شبیهساز تعامل داشته باشند، زیرا رندر کردن با پردازنده گرافیکی اغلب به نمایشگرهای غیرمجازی میزبان وابسته است.
برای رفع این مشکل، هنگام اجرا در ماشین Linux، شبیهساز اکنون سرویس gRPC را ارائه میدهد. gRPC چارچوبی کلی برای RPC است که ازطریق HTTP کار میکند.
بهطور پیشفرض، سرویس gRPC شبیهساز غیرفعال است، اما میتوانید بااستفاده از گزینه خط فرمان زیر، سرویس را فعال کنید، که در آن <port> درگاهی است که شبیهساز باید درخواستهای gRPC را ارائه دهد (معمولاً 5556):
-grpc <port>
پساز شروع سرویس، فرمانهای gRPC را میتوان از کارخواهان صادر کرد. مجموعه فرمانهای فعلی هم امکان ارسال رویدادهای ورودی و هم دریافت نماگرفت را فراهم میکند. این فرمانها به رفع مشکلات زیر کمک میکنند:
- فرمانهای ورودی را میتوان با سربار کم ازطریق HTTP به شبیهساز ارسال کرد. HTTP همچنین امکان ارسال فرمانها را در پیکربندیهای شبکه اضافی فراهم میکند.
- فرمانهای نماگرفت را میتوان برای پرسمان از صفحه فعلی ارسال کرد، حتی اگر شبیهساز بدون نمایشگر درحال اجرا باشد. برای تعامل، رویدادهای ورودی را نیز میتوان به شبیهساز برگرداند.
- کاربران میزکار ازراهدور میتوانند شبیهساز را بدون نمایشگر در نمایشگر اصلی با پردازش شتابیافته GPU اجرا کنند و درعینحال از gRPC برای دریافت نماگرفت و ارسال رویدادهای ورودی برای تعامل با شبیهساز استفاده کنند.
برای مشاهده فهرست کامل فرمانهای دردسترس، این protobuf را ببینید.
برای کمک به شما در شروع کار با gRPC، چند نمونه کارخواه ارائه کردهایم که میتوانید به آنها مراجعه کنید.
درحالحاضر، این شامل نمونههای زیر میشود:
- سرویسی مبتنی بر Go که میتوان از آن برای پرسمان کردن وضعیتهای شبیهساز استفاده کرد.
- برنامه React که تعامل از راه دور را ازطریق نماگرفت و RPCهای ورودی نشان میدهد. این نمونه به protobuf نسخه ۳.۷.۰ یا بالاتر نیاز دارد.
- نمونهای از Python که پیکربندی VM شبیهساز را جستجو میکند و سپس مجموعهای از فرمانها را ارسال میکند.
۲۸.۰.۲۵ (۲۹ مارس ۲۰۱۹)
این بهروزرسانی شامل بهبودها و اصلاحات زیر است:
ساخت شبیهساز بدون سر
راهاندازی شبیهساز با Docker و دیگر گردشهای کاری ادغام پیوسته (CI) بهدلیل انتظارات ضمنی سیستم برای پشتیبانی از Qt بههمراه وابستگیهای کتابخانه مشترک آن (در میان مشکلات دیگر) دشوار بوده است.
بهعنوان اولین گام برای رفع این مشکل، نوعی از راهانداز شبیهساز را با فایلهای اجرایی QEMU معرفی کردهایم که به Qt وابسته نیست. در Linux، هنوز پیوندی به libX11 وجود دارد، اما امیدواریم بهزودی آن را نیز برداریم.
برای استفاده از شبیهساز بدون سر، شبیهساز را طبق معمول از خط فرمان اجرا کنید،
اما فراخوانی دودویی شبیهساز را با emulator-headless جایگزین کنید. برای اطلاعات بیشتر، بهروزرسانی نسخه 28.1.8 Canary را ببینید.
- مشکل لرزش و نمایش نادرست قاب در Intel GPU هنگام اجرای تصاویر سیستم Android Q برطرف شد.
- مشکلات مربوط به نمایش صفحه سیاه هنگام استفاده از تصاویر سیستم Android Q با پوستههای Pixel 2 XL برطرف شد.
- اکنون از جدیدترین باینریهای BIOS برای راهاندازی شبیهساز استفاده میشود. این تغییر میتواند به کاهش خطاهای «درخواست خاموش کردن vCPU» که گاهی هنگام راهاندازی شبیهساز در Windows رخ میدهد کمک کند.
- اصلاحیهای برای مشکل «نمایش نادرست هنگام ازسرگیری تصاویر سیستم Android Q از عکس آنی» به نسخه قبلی منتقل شد.
- کاربران با مشکلات شبیهساز «غیرمجاز»
بهدلیل تغییر ناسازگار در ADB در platform-tools 28.0.2 مواجه میشدند. اکنون میتوانید
با خیال راحت از ADB از platform-tools 28.0.2 با شبیهساز استفاده کنید. اگر با شبیهسازهای «غیرمجاز» مشکل دارید، مراحل عیبیابی زیر را انجام دهید:
- از همه شبیهسازها خارج شوید.
- هر دو فایل
~/.android/adbkeyو~/.android/adbkey.pubرا حذف کنید. - فرمان زیر را اجرا کنید:
adb kill-server - فرمان زیر را اجرا کنید:
adb devices - دادههای AVD را پاک کنید.
- شبیهساز را دوباره راهاندازی کنید.
28.0.23 (۲۹ ژانویه ۲۰۱۹)
این بهروزرسانی شامل بهبودها و اصلاحات زیر است:
ورودی صوتی میزبان بهطور پیشفرض غیرفعال است
پست اخیری در Reddit بهطور مفصل توضیح داد که چگونه سیستمعامل Android مهمان همیشه از صدای میکروفون میزبان استفاده میکند و درنتیجه به «Ok Google» اجازه میدهد بهطور غیرمنتظرهای کار کند. بابت این موضوع متأسفیم و با تیم Android همکاری خواهیم کرد تا مطمئن شویم تشخیص کلمه فعالسازی در تصویر سیستم نیز غیرفعال شده است.
برای رسیدگی به این موضوع، تغییرات زیر را اعمال کردهایم:
- دادههای صوتی واقعی میزبان اکنون بهطور پیشفرض بیصدا میشود. وقتی مهمان از میکروفون استفاده میکند، بهجای صدای میزبان، سکوت منتقل میشود.
- اگر میخواهید از دادههای صوتی میزبان استفاده کنید، اکنون میتوانید با رفتن به کنترلهای گسترده > میکروفون و فعال کردن میکروفون مجازی از ورودی صوتی میزبان استفاده میکند، این گزینه را فعال کنید. هرزمان که شبیهساز بازراهاندازی شود، این گزینه بهطور خودکار غیرفعال میشود.
بهروزرسانیهای مربوط به بررسیهای استفاده از واحد پردازش مرکزی
درطول بررسیهای Project Marble، متوجه شدیم که استفاده زیاد از CPU در شبیهساز معمولاً در سه دسته زیر قرار میگیرد:
در حالت غیرفعال: بهروزرسانی خودکار برنامه در تصاویر «فروشگاه Play»
متوجه شدیم که در فواصل زمانی تصادفی، همه برنامههای نصبشده بهروزرسانی میشوند، حتی زمانی که کاربر به سیستم وارد نشده است. درطول این فرایند، استفاده از CPU به تعداد هستهها x ۱۰۰٪ (معمولاً حدود ۴۰۰٪) در GMSCore و dex2oat میرسد. با غیرفعال کردن بهروزرسانی خودکار برنامهها در برنامه «فروشگاه Play» میتوانید این مشکل را کاهش دهید.
در حالت غیرفعال: تشخیص کلیدگفته
When on the home screen and without any app foregrounded, there can be a great deal of CPU usage (~25% with spikes to 50%). این مشکل بهدلیل تشخیص کلیدگفته است که بهطور مداوم به میزبان پینگ میفرستد. نمیتوانید این مشکل را با غیرفعال کردن ورودی صوتی میزبان کاهش دهید زیرا هزینه CPU عمدتاً ناشی از زمانی است که طول میکشد تا از میزبان به مهمان برسد. بااینحال، میتوانید با لغو اجازههای میکروفون از برنامه Google، این مشکل را کاهش دهید.
هنگام فعال بودن، گاهی درحالت بیکار: پویانماییها
سومین منبع استفاده زیاد از CPU پویانماییها هستند. متوجه شدهایم که با بهینهسازی پشته درایور گرافیک میتوانیم مصرف CPU را حتی زمانی که شبیهساز غیرفعال نیست کاهش دهیم. بهینهسازیهای درایور گرافیک را بهتدریج بهعنوان بخشی از Project Marble عرضه خواهیم کرد.
28.0.22 (۲۱ دسامبر ۲۰۱۸)
این بهروزرسانی شامل بهبودها و اصلاحات زیر است:
- مشکل قدیمیای برطرف شد که در برخی تنظیمات، شبیهساز Mac هنگام ذخیره Quickboot بازراهاندازی میشد یا کرنل پنیک رخ میداد. (مشکل ۱۲۰۹۵۱۶۳۴)
- هنگام استفاده از فایل نگاشتشده بهعنوان عکس آنی RAM، شبیهساز اکنون نگاشت فایل را بهطور صریح هنگام خروج لغو میکند.
28.0.20 (۱۱ دسامبر ۲۰۱۸)
این بهروزرسانی شامل بهبودها و اصلاحات زیر است:
- مشکلی در Windows برطرف شد که باعث میشد شبیهساز در بارگیری عکس آنی با مدلهای خاصی از پردازندههای گرافیکی Intel ثابت بماند.
- مشکلی که باعث ایجاد وضعیت دستگاه
unauthorizedADB هنگام استفاده از مکان غیرمعیارANDROID_SDK_HOMEمیشد برطرف شد. - مشکلی در Windows برطرف شد که باعث میشد شبیهساز هنگام راهاندازی تصاویر سیستم با شتاب CPU غیرفعال ازکار بیفتد.
- مشکل پیکسلبندی شدن نمایشگر شبیهساز برطرف شد. اکنون باید نمونهکاهی کار کند.
- مشکلی در macOS 10.14+ برطرف شد که در آن کنترل نمای دوربین صحنه مجازی با موشواره بهدلیل تعامل با تنظیمات امنیتی دسترسپذیری جدید ممکن بود بیشازحد حساس شود.
- خطایی در محاسبه منطقه زمانی برطرف شد که میتوانست باعث شود ساعت شبیهساز بهطور پراکنده تغییر کند.
- خطاهای پردازش در برنامههای مختلف cocos2d و Unreal engine برطرف شد.
- پشتیبانی از Wi-Fi همتا به همتا به شبیهساز اضافه شده است.
اگر از جدیدترین تصویر Pie «فروشگاه Play» استفاده میکنید، اکنون دو شبیهساز میتوانند مستقیماً ازطریق Wi-Fi با یکدیگر ارتباط برقرار کنند. برای استفاده از Wi-Fi همتا به همتا، دو AVD را با آرگومانهای
-wifi-server-portو-wifi-client-portیکسان راهاندازی کنید:emulator @<server-avd-name> -wifi-server-port 9999emulator @<client-avd-name>-wifi-client-port 9999
- با گرفتن هرگونه اندازه قاب ناسازگار و تغییر اندازه پویای آنها برای مطابقت با تنظیمات دوربین در مهمان Android، پشتیبانی از وبکمهای بیشتری در Windows اضافه شده است.
۲۸.۰.۱۶ (نوامبر ۲۰۱۸)
این بهروزرسانی شامل چندین ویژگی جدید، بهبود ویژگیهای موجود، و رفع اشکال است.
استفاده از منبع
شبیهساز اکنون بهطور کلی از RAM کمتری استفاده میکند، بهویژه هنگام استفاده از تصاویر سیستم با سطح API ۲۸ یا بالاتر. این ایمیجهای سیستم شامل استفاده بهبودیافته از حافظه برای درایورهای گرافیک سمت مهمان است.
علاوهبراین، استفاده از منابع را در زمینههای زیر بهبود بخشیدهایم:
- کاهش استفاده از حافظه شبیهساز درطول آزمایشهای طولانیمدت. اگر همچنان درطول آزمایشهای طولانیمدت با مشکل استفاده از حافظه مواجه هستید، لطفاً مشکلی را که مورد استفاده شما را شرح میدهد در Issue Tracker ایجاد کنید.
- کاهش مصرف واحد پردازش مرکزی هنگام اجرای برنامههای دارای پویانمایی.
- مشکلی که در آن زمینه QEMU AIO ممکن بود در Windows نشت کند برطرف شد.
اجرای همزمان چند نمونه از یک «دستگاه مجازی Android»
اکنون میتوانید چندین نمونه از یک «دستگاه مجازی Android» را راهاندازی کنید و آنها را بهطور همزمان اجرا کنید. نمونههایی که پساز نمونه اول راهاندازی میکنید فقط خواندنی هستند و تغییرات آنها در دیسک مجازی مهمان هنگام خروج حذف میشود.
برای اجرای همزمان چند نمونه از یک «دستگاه مجازی Android»، هر نمونهای را
پساز نمونه اول از خط فرمان بااستفاده از پرچم -read-only راهاندازی کنید.
این ویژگی با کپی کردن فایلهای QCOW2 مرتبط با بخشهای قابلنوشتن تصویر Android امکانپذیر شده است. برای کمک به شما در مدیریت فضای دیسک، ابزار خط فرمان qemu-img را نیز بستهبندی کردهایم تا بتوانید فایلهای QCOW2 را قبلاز راهاندازی چندین نمونه پیشتعهد کنید.
علاوهبراین، وقتی بهصورت پشتسرهم با ویژگی عکسهای آنی RAM مهمان با پشتیبانی فایل استفاده میشود، چند نمونه AVD عکس آنی Quickboot اصلی AVD را بهعنوان منبع مشترک RAM مهمان کپی-در-نوشتن همرسانی میکنند. این ویژگی به این معنی است که نمونهها بخش زیادی از RAM خود را بهطور مشترک استفاده میکنند. از این ویژگی برای اجرای آزمایشهایی استفاده کنید که برای اجرا بهصورت موازی به چندین دستگاه نیاز دارند.
از بازخورد شما درباره موارد استفاده احتمالی که بخشی از گردش کار تعاملی یا ادغام مداوم (CI) معمول شما است استقبال میکنیم. لطفاً مشکلات را در Issue Tracker ایجاد کنید یا به آنها رأی موافق دهید.
عکسهای آنی RAM مهمان با پشتیبانی فایل
با پیشاختصاص دادن و نگاشت RAM مهمان بهعنوان فایل، شبیهساز اکنون میتواند عکسهای آنی Quickboot را درطول زمان اجرا ذخیره کند، بهجای اینکه همه کارها را هنگام خروج انجام دهد. اگر درحالحاضر هنگام بستن شبیهسازها با زمان ذخیره طولانی مواجه میشوید، این ویژگی را فعال کنید تا عملکرد «راهاندازی سریع» بهبود یابد. بهطور پیشفرض، هنگام خروج، یک عکس آنی Quickboot ذخیره میشود و هربار دوباره بار میشود، مانند تعلیق و بیدار کردن یک دستگاه واقعی.
چون RAM مهمان Android اکنون بهطور پیشفرض بهصورت خودکار ذخیره میشود، اگر میخواهید وضعیت دستگاهی را تعریف کنید و بهطور مکرر از آن وضعیت بارگیری کنید، باید به شبیهساز بگویید که تغییرات را پساز هر جلسه دور بیندازد. این کار را میتوانید به روشهای زیر انجام دهید:
- هنگام راهاندازی شبیهساز از خط فرمان، از پرچمهای
-no-snapshot-saveیا-read-onlyاستفاده کنید. - به کنترلهای گسترده > عکسهای آنی > تنظیمات بروید و ذخیره خودکار وضعیت فعلی در Quickboot؟ را به نه تغییر دهید.
- پساز انتخاب این گزینه، باید شبیهساز را بازراهاندازی کنید. اگر شبیهساز روی ذخیره خودکار تنظیم شده باشد، میتوانید فرمان زیر را برای تنظیم نقطه بازرسی اجرا کنید:
پساز اجرای این فرمان، عکس آنی Quickboot شبیهساز در آن نقطه بازرسی باقی خواهد ماند. برای بار کردن شبیهساز از نقطه بازرسی، همان فرمان را دوباره اجرا کنید.adb emu avd snapshot remap 0
عکسهای آنی که ازطریق میانای کاربری «عکسهای آنی» گرفته و بار میشود، مانند قبل و بدون نگاشت فایل عمل میکنند.
چون این تغییر بزرگی در نحوه عملکرد Quickboot است، بسیار خوشحال میشویم
بازخوردتان را درباره اینکه آیا این تغییر عملکرد Quickboot را بهبود میبخشد یا نه و اینکه
هنگام استفاده از آن با چه مشکلاتی مواجه میشوید با ما درمیان بگذارید. اگر با مشکلی مواجه شدید، میتوانید
با افزودن خط زیر به فایل
~/.android/advancedFeatures.ini، این ویژگی را غیرفعال کنید:
QuickbootFileBacked = off
وقتی شبیهساز را از عکس آنی شروع میکنید (بااستفاده از گزینه خط فرمان -snapshot یا راهاندازی از عکس آنی در مدیر AVD)، شبیهساز هم ذخیره خودکار برای عکسهای آنی Quickboot و هم ذخیره عکسهای آنی Quickboot را هنگام خروج غیرفعال میکند. این کار احتمال بازنویسی ناخواسته عکس آنی Quickboot را کاهش میدهد و از مسیرهای بازگشت کند که از عکسهای آنی Quickboot با پشتیبانی فایل استفاده نمیکنند جلوگیری میکند.
QEMU 2.12
ما نسخه QEMU خود را از QEMU 2.9 به QEMU 2.12 تغییر دادهایم. این بهروزرسانی شامل تغییرات QEMU زیر است:
- https://wiki.qemu.org/ChangeLog/2.10
- https://wiki.qemu.org/ChangeLog/2.11
- https://wiki.qemu.org/ChangeLog/2.12
در اینجا برخیاز تغییرات قابلتوجهی که بر «شبیهساز Android» تأثیر میگذارند آورده شده است:
- x86:
gdbstubاکنون دسترسی به ثباتهای SSE را فراهم میکند. - تصاویر دیسک: قفل کردن تصویر اضافه شده و بهطور پیشفرض فعال است. تا زمانی که میزبان از OFD یا قفل posix پشتیبانی میکند، چند فرایند QEMU نمیتوانند در یک تصویر بنویسند، مگراینکه گزینهها بهگونه دیگری مشخص شده باشند.
qemu-img: qemu-img resizeاز پیشتخصیص بخشهای جدید تصویر پشتیبانی میکند.- اکنون کوچک کردن QCOW2 در
qemuوqemu-imgپشتیبانی میشود.
دسترسپذیری
- مشکلات مربوط به صفحهخوانها برطرف شد و پشتیبانی بهتری برای این ابزارها در میانای کاربری «ضبط صفحه» و «عکس آنی» اضافه شد.
- نمادهای اعلان «راهاندازی سریع» برای کاربرانی که کوررنگی دارند دسترسپذیرتر شده است.
گرافیک
- مشکل دسترسی به حافظه خارج از محدوده که ممکن بود برای اشارهگرهای آرایه رأس OpenGL ES رخ دهد برطرف شد.
- برخیاز GPUهای قدیمیتر از OpenGL 2.1 یا بالاتر (که الزامی است) پشتیبانی نمیکردند یا مشکلات قابلیت اطمینان دیگری داشتند. این مشکلات میتواند باعث شود شبیهساز هنگام شروع ازکار بیفتد، متوقف شود، یا در تنظیمات پیشفرض GPU غیرقابلاستفاده باشد. شبیهساز اکنون بهطور خودکار به پردازنده Swiftshader تغییر میکند اگر تشخیص دهد که این پردازندههای گرافیکی درحال استفاده هستند.
- مشکلی که باعث میشد شبیهساز بافر قاب صحیح را پست نکند، درصورتیکه
FBO != 0در زمانeglSwapBuffersمحدود شده باشد، برطرف شد. - مشکلی که باعث میشد نمایشگر مجازی Android فقط در گوشه بالا سمت راست نشان داده شود برطرف شد. فکر میکنیم این مشکل بهدلیل پیکربندی نادرست متغیرهای محیطی Qt بوده است. شبیهساز اکنون همه متغیرهای محیطی مرتبط با مقیاسبندی Qt را لغو میکند.
- مشکلی که باعث میشد شبیهساز در برخی شرایط هنگام بار کردن برنامههای GLES1 از عکس آنی ازکار بیفتد برطرف شد.
- مشکلات همزمانی در OpenGL و راهاندازی رشتههای پردازش که میتوانست منجر به آزادسازی مضاعف یا دادههای خراب شود برطرف شد.
- «شبیهساز Android» اکنون از بافت فشرده ASTC LDR (
GL_KHR_texture_compression_astc_ldr) برای ایمیجهای سیستم که از سطح میانای برنامهسازی کاربردی ۲۸ یا بالاتر استفاده میکنند پشتیبانی میکند. - اکثر واحدهای پردازش گرافیکی مدرن اکنون باید بتوانند شبیهساز را با OpenGL ES 3.x
که بهطور پیشفرض فعال است بدون استفاده از پرچم ویژگی
GLESDynamicVersionراهاندازی کنند. -
-gpu guest(پرداز زدن نرمافزار در مهمان) منسوخ شده است. تصاویر سیستم برای سطح میانای برنامهسازی کاربردی ۲۸ یا بالاتر اکنون بهطور خودکار به استفاده از Swiftshader تغییر میکند (-gpu swiftshader_indirect). - اگر شبیهساز از خط فرمان بااستفاده از پرچم
-no-windowراهاندازی شود، اکنون پردازنده پیشفرض Swiftshader است.
مکان
- شبیهساز اکنون میتواند جهت را همراه با موقعیت طول و عرض جغرافیایی بهروز کند. حسگر مجازی مغناطیسسنج با استنباط حرکت هنگام بازپخش فایل GPX یا KML، بهطور پویا خود را با شمال مغناطیسی تنظیم میکند.
- اکنون میتوان سرعت دستگاه را در صفحه «مکان» تنظیم کرد.
- هنگام بازپخش فایل GPX یا KML، سرعت بهطور خودکار تنظیم میشود و پساز پایان بازپخش روی صفر تنظیم میشود.
- ارتفاع دیگر محدود به بین ۱۰۰۰- و ۱۰۰۰۰+ متر نیست.
- مشکلی که باعث میشد مکان GPS مجازی بهطور دورهای بهروز نشود، مگر اینکه پنجره «کنترلهای گسترده» حداقل یکبار باز شده باشد، برطرف شد.
دوربین
در Windows، اکنون وبکمهای بیشتری پشتیبانی میشوند زیرا شبیهساز بهطور پویا اندازه قابهای دوربین را که از وبکم ارائه میشود تغییر میدهد. این ویژگی همچنین از هنگ کردن شبیهساز بهدلیل خطاهای تحویل قاب جلوگیری میکند.
فروشگاه Play
برای رفع مشکل تمام شدن فضای دیسک در تصاویر «فروشگاه Play»، شبیهساز اکنون هنگام اجرا با «دستگاه مجازی Android» جدید «فروشگاه Play»، اندازه پارتیشن userdata را بهطور خودکار به ۶ گیگابایت تغییر میدهد.
بهبودهای کلی کیفیت و رفع اشکالها
- برخیاز کاربران گزارش کردهاند که شبیهساز کند اجرا میشود. یک علت احتمالی را شناسایی کردیم که در آن دایرکتوری موقت شبیهساز درنهایت با تعداد زیادی فایل قدیمی در داخل آن مواجه میشود. بهعنوان راهحل، شبیهساز دیگر فایلهای بررسی فعال بودن ADB را در آن دایرکتوری ذخیره نمیکند. بااینحال، حذف محتوای آن پوشه نیز ممکن است کمک کند. بسته به سیستمعاملتان،
پوشه در یکی از مکانهای زیر قرار دارد:
- Windows:
C:\Users\<username>\AppData\Local\Temp\AndroidEmulator\* - macOS یا Linux:
/tmp/android-<username>/*
- Windows:
- اگر شبیهساز بهدلیل کافی نبودن حافظه دسترسی تصادفی آزاد نتواند شروع شود، اکنون پیام خطا نمایش داده میشود. اگر از Windows استفاده میکنید و متوجه میشوید که RAM خالی وجود دارد، اما همچنان نمیتوانید شبیهساز را راهاندازی کنید، ممکن است از حد مجاز commit charge فراتر رفته باشید. برای دریافت راهنمایی درباره این مشکل، به صفحه عیبیابی شبیهساز مراجعه کنید.
- گزینه خط فرمان
-sysdirاکنون بهدرستی دایرکتوری تصویر سیستم استنباطشده را لغو میکند. - مودم مجازی اکنون از پُرسمان
+MAIاطلاعات فعالیت مدل پشتیبانی میکند. - مشکلات مختلف مربوط به نشت حافظه، خرابی حافظه، و استفاده از CPU برطرف شد. اگر با خرابی، نشت حافظه، یا مصرف بالای منابع دیگر مواجه هستید، لطفاً مشکل را در Issue Tracker ایجاد کنید.
- مشکلی که دوباره در macOS 10.14 ظاهر شده بود و در آن استفاده از هدستهای بلوتوث با شبیهساز باعث افت کیفیت صدا در سراسر سیستم میشد برطرف شد. برای جلوگیری از این مشکل، شبیهساز اکنون هنگام اجرا در macOS از صدای بلوتوث استفاده نمیکند. (مشکل ۳۷۰۷۰۸۹۲)
- مشکلی در Windows برطرف شد که باعث میشد ساعت شبیهساز در منطقه زمانی صحیح نباشد.
- کند شدن و توقف شبیهساز در سیستمهای Linux با دیسک سخت چرخان (HDD) برطرف شد.
- برخیاز هشدارهای کامپایل که میتوانست منجر به خرابی پشته در macOS شود برطرف شد.
- مشکلاتی که میتوانست منجر به گزارشهای گمراهکننده درباره توقف عملکرد شود برطرف شد.
- مشکلی در ازبین بردن استخرهای رشته برطرف شد که میتوانست درصورت ایجاد نشدن موفقیتآمیز یکی از رشتهها باعث ازکارافتادن شود.
- مشکلی در macOS برطرف شد که باعث میشد زمانسنجها غیرقابلاعتماد شوند و درنتیجه سیستم هنگ کند و رفتارهای عجیب دیگری نشان دهد. اگر در macOS با مشکل توقف شبیهساز مواجه شدید، لطفاً مشکل را در Issue Tracker ایجاد کنید.
- مشکلی که باعث میشد بستن شبیهساز رابط کاربری را غیرفعال کند اما درواقع شبیهساز را نبندد برطرف شد.
- مشکلات مربوط به ازکارافتادنهای پراکنده، ازجمله لغو بهدلیل باز کردن بیشازحد نمونههای
/dev/urandom، برطرف شد. - مشکلی که باعث میشد شبیهساز پساز اولینبار راهاندازی نشود اگر ADB بهاجبار بسته شده بود، برطرف شد.
- ساخت MIPS برداشته شده است. اگر هنوز به MIPS نیاز دارید، لطفاً در Issue Tracker مشکل ایجاد کنید.
- رفع مشکلی که باعث میشد اتصالهای ADB هنگام بار کردن عکس آنی خراب شوند.
- مشکلی برطرف شد که در آن پنجره شبیهساز هنگام ازسرگیری عکس آنی که در آن جهت دستگاه با جهت پیشفرض AVD متفاوت بود، پستصویر داشت یا به خارج از صفحه تلپورت میشد.
- مشکلات مربوط به ازکارافتادن هنگام ذخیره کردن عکسهای آنی برطرف شد.
- در Linux، سیستمهای فایل btrfs میتوانند باعث کندی شدید شوند زیرا شبیهساز
بهطور خودکار عکسهای آنی را ذخیره میکند و از کپی-در-نوشتن برای دستگاههای دیسک مجازی خود
استفاده میکند. توصیه میکنیم دایرکتوری
~/.android/avdرا پاک کنید و فرمان زیر را در دایرکتوری خالی~/.android/avdاجرا کنید: این کار عکسهای آنی جدیدی در پوشهای که کپی-در-نوشتن در آن غیرفعال است ایجاد میکند.chattr +C
HAXM 7.3.2
مایلیم دوباره به HAXM 7.3.2 اشاره کنیم زیرا باید نصب شود تا تصاویر سیستم اخیر بهدرستی در شبیهساز اجرا شوند. HAXM 7.3.2 باید ازقبل در کانال «پایدار» دردسترس باشد و همچنین میتوان آن را بهصورت دستی از https://github.com/intel/haxm/releases نصب کرد.
در اینجا چند مشکل که این نسخه از HAXM برطرف کرده است آورده شده است:
- خرابیهای تصادفی سیستمعاملهای مهمان که از هسته Linux جدید (نسخه ۴.۶ یا بالاتر) استفاده میکنند برطرف شد. برای مثال، Ubuntu نسخه ۱۸.۰۴ (#۳۹، #۷۴).
- اشکال شبیهساز دستورالعمل x86 که میتوانست منجر به ازکارافتادن میزبان شود برطرف شد (#93).
منسوخ شدن Windows ۳۲ بیتی
بهدلیل استفاده کم و هزینههای بالای نگهداری، قصد داریم نسخه ۳۲ بیتی «شبیهساز Android» را که در Windows اجرا میشود منسوخ کنیم. قبلاز حذف و پایان عمر نسخه ۳۲ بیتی «شبیهساز Android»، طرح انتقالی را عرضه خواهیم کرد. بااینحال، فعالانه بهدنبال هرگونه بازخورد یا نگرانی درباره این تغییر آتی هستیم.
اگر درحالحاضر به نسخه ۳۲ بیتی «شبیهساز Android» که در Windows اجرا میشود متکی هستید، لطفاً در Issue Tracker به ما اطلاع دهید و بگویید چگونه میتوانیم در آینده بهترین همکاری را با شما داشته باشیم.
۲۷.۳.۱۰ (اوت ۲۰۱۸)
این بهروزرسانی شامل رفع اشکال زیر است:
اصلاح پیکربندی اندازه RAM
برخیاز کاربران گزارش کردهاند که شبیهساز کند اجرا میشود. یک علت احتمالی را شناسایی کردیم که در آن اندازه RAM دستگاه مجازی Android در فایل config.ini دستگاه مجازی Android بهطور نادرست تنظیم شده بود.
برای کاهش این مشکل، شبیهساز حداقل سطح RAM را برای تصاویری که از سطح میانای برنامهسازی کاربردی ۲۶ یا بالاتر استفاده میکنند به سطح پیشفرض Android Studio یعنی ۱۵۳۶ مگابایت افزایش میدهد. اگر
فایل config.ini مربوط به AVD شما hw.ramSize را برحسب مگابایت فهرست نمیکند،
لطفاً مشکلی در Issue Tracker ایجاد کنید.
میتوانید فایل config.ini را در مکان زیر پیدا کنید:
~/.android/avd/<avdname>.avd/config.ini
27.3.9 (ژوئیه ۲۰۱۸)
این بهروزرسانی شامل بهبودها و رفع اشکالهای زیر است:
پیامهای خطای بهبودیافته برای Windows Hypervisor Platform
برخیاز کاربران در تشخیص اینکه چرا Windows Hypervisor Platform (WHPX) هنگام فعال کردن شبیهساز WHPX مقداردهی اولیه نمیشود مشکل داشتند. برای کمک به شما در تشخیص این مشکلات، پیامهای خطای آموزندهتری اضافه کردهایم. میتوانید
این پیامهای خطا را با اجرای شبیهساز از خط فرمان بااستفاده از
پرچم -verbose فعال کنید.
اصلاحات کلی
- خطاهای OpenGL که هنگام بار کردن عکس آنی در برنامه دوربین رخ میداد برطرف شد.
27.3.8 (ژوئیه ۲۰۱۸)
این بهروزرسانی شامل چندین ویژگی جدید، بهبود ویژگیهای موجود، و رفع اشکال است.
عکسهای فوری
اکنون میتوانید چندین عکس آنی AVD را برای پیکربندی دستگاهی مشخص ذخیره کنید و انتخاب کنید کدامیک از عکسهای آنی ذخیرهشده هنگام شروع شبیهساز بار شود.
با شروع Android Studio 3.2 Canary 13، هر پیکربندی دستگاه شامل کنترلی در تنظیمات پیشرفته در کادر گفتگوی «پیکربندی دستگاه مجازی» است که با آن میتوانید مشخص کنید هنگام شروع AVD، کدام عکس آنی AVD بار شود.
برای تطبیق این گسترش ویژگیهای عکس آنی، دسته عکسهای آنی را به کادر گفتگوی کنترلهای گسترده اضافه کردهایم. این قاب جدید حاوی کنترلهایی برای ذخیره و بار کردن عکسهای آنی AVD است، ازجمله کنترلهایی برای ذخیره و بار کردن عکس آنی راهاندازی سریع که قبلاً در قاب تنظیمات بود.
میتوانید نام و شرح هر عکس آنی ذخیرهشده را ویرایش کنید.
برای جزئیات، به عکسهای آنی بروید.
HAXM 7.2.0
HAXM 7.2.0 اکنون در همه کانالها دردسترس است.
این بهروزرسانی شامل رفع اشکال و پشتیبانی بهبودیافته برای مقدار زیاد RAM است. همچنین، با این بهروزرسانی HAXM و Emulator نسخه ۲۷.۳ و جدیدتر، عکسهای آنی محتوایشان را بهجای بار کردن کل عکس آنی هنگام شروع دستگاه مجازی، براساس تقاضا در RAM بار میکنند. این تغییر باید زمان موردنیاز برای بار کردن عکس آنی را بهطور قابلتوجهی کاهش دهد.
برای جزئیات، به پیکربندی شتاب ماشین مجازی مراجعه کنید.
27.2.9 (مه ۲۰۱۸)
این بهروزرسانی شامل چندین ویژگی جدید، بهبود ویژگیهای موجود، و رفع اشکال است.
ضبط صفحهنمایش
اکنون میتوانید ویدیو و صدا را از «شبیهساز Android» ضبط کنید و ضبط را در فایل WebM یا گیف پویانماییشده ذخیره کنید.
کنترلهای ضبط صفحه در برگه ضبط صفحه در پنجره کنترلهای گسترده قرار دارند.
نکته: همچنین میتوانید با فشار دادن کلیدهای Control + Shift + R (یا Command + Shift + R در Mac)، کنترلهای ضبط صفحه را باز کنید.
برای شروع ضبط صفحه، روی دکمه شروع ضبط در برگه ضبط صفحه کلیک کنید. برای توقف ضبط، روی توقف ضبط کلیک کنید.
کنترلهای پخش و ذخیره کردن ویدیو ضبطشده در پایین برگه ضبط صفحهنمایش قرار دارد. برای ذخیره کردن ویدیو، WebM یا GIF را از منو پایین برگه انتخاب کنید و روی ذخیره کلیک کنید.
همچنین میتوانید بااستفاده از فرمان زیر در خط فرمان، ضبط صفحهنمایش را از شبیهساز ضبط و ذخیره کنید:
adb emu screenrecord start --time-limit 10 [path to save video]/sample_video.webm
نماگرفتها
میتوانید با یکی از فرمانهای زیر از خط فرمان نماگرفت بگیرید:
screenrecord screenshot [destination-directory]adb emu screenrecord screenshot [destination-directory]
نماگرفتها در قالب PNG ذخیره میشوند.
دوربین صحنه مجازی و ARCore
توسعه و آزمایش برنامههای واقعیت افزوده (AR) با ARCore اکنون با دوربین صحنه مجازی جدید آسانتر شده است. این دوربین به شما امکان میدهد تجربه واقعیت افزوده خود را در محیطی مجازی آزمایش کنید.
برای کسب اطلاعات درباره استفاده از دوربین صحنه مجازی در شبیهساز، به اجرای برنامههای واقعیت افزوده در «شبیهساز Android» مراجعه کنید.
تصاویر «فروشگاه Google Play» در دستگاه Pixel
اکنون «فروشگاه Google Play» برای تصاویر دستگاه Pixel و Pixel 2 فعال شده است. این موضوع در مدیر AVD در Android Studio نسخه ۳.۲ و بالاتر با نشانواره Google Play در ستون فروشگاه Play نشان داده میشود. دستگاههای مجازی Android که «فروشگاه Google Play» در آنها فعال است، در کادر گفتگوی کنترلهای گسترده زبانه Google Play دارند که دکمه مناسبی برای بهروزرسانی «خدمات Google Play» در دستگاه ارائه میدهد.
عکسهای فوری
اکنون میتوانید بدون بازراهاندازی شبیهساز، عکس آنی «راهاندازی سریع» را بار کنید. برای بار کردن عکس آنی، پنجره کنترلهای گسترده را در صفحه تنظیمات باز کنید و روی دکمه اکنون بار شود کلیک کنید.
بهبودهای زیادی در بار کردن و ذخیره کردن عکسهای آنی ایجاد کردهایم تا کارایی استفاده از منابع را بهبود دهیم و زمان لازم برای هر عملیات را به حداقل برسانیم. اگر همچنان با ذخیرهسازیهای طولانی غیرعادی مواجه هستید، لطفاً مشکل را ثبت کنید، و جزئیات CPU، RAM، و تنظیمات هرگونه نرمافزار ضدویروس / دیوار آتش / امنیتی درحال اجرا را ارائه دهید.
درحال پرداز زدن با Skia
هنگام استفاده از تصاویر برای API 27 یا بالاتر، شبیهساز میتواند رابط کاربری Android را با Skia پرداز کند که میتواند پرداز را بهصورت روانتر و کارآمدتر انجام دهد.
درحالحاضر، برای استفاده از Skia باید آن را صریحاً فعال کنید.
برای فعال کردن پرداز Skia، از فرمانهای زیر در پوسته adb استفاده کنید:
su setprop debug.hwui.renderer skiagl stop start
دوربین
در Windows، «شبیهساز Android» اکنون از Media Foundation بهعنوان وبکم پسزمینه استفاده میکند، که عملکرد و نرخ فریم را برای ضبط وبکم تا 720p 30 FPS بهطور قابلتوجهی بهبود میبخشد.
در Mac، اکنون میتوانید از webcam0 و webcam1 باهم استفاده کنید.
متفرقه
گزینه خط فرمان -phone-number-prefix به -phone-number [number] تغییر کرده است که امکان تنظیم شماره تلفن کامل را فراهم میکند.
اکنون میتوانید از نشانیهای پیامک الفبانمایی استفاده کنید.
تصحیحات
- نسخه Linux «شبیهساز Android» اکنون بااستفاده از زنجیره ابزار Clang C++ مدرن ساخته شده است. این تغییر مشکل عدم راهاندازی شبیهساز بهدلیل خطاهای libGL و libstdc++ را برطرف میکند.
- چندین علت خرابی و توقف رفع شد.
- برای جلوگیری از خرابی و توقف ناشی از نداشتن فضای دیسک آزاد کافی، شبیهساز اکنون فضای دیسک آزاد کافی را هنگام راهاندازی بررسی میکند و تا زمانی که حداقل ۲ گیگابایت فضای آزاد وجود نداشته باشد، شروع نمیشود.
- مشکلی که مانع از پردازش برخیاز بازیهای Unity میشد برطرف شد.
- مشکل ساناد که باعث میشد شبیهساز نتواند به شبکه متصل شود برطرف شد.
- مشکلی که باعث میشد تغییرات اعمالشده در فضای ذخیرهسازی داخلی اختصاصدادهشده به AVD ازطریق کادر گفتگوی «پیکربندی دستگاه مجازی» کار نکند برطرف شد.
- مشکل ایجاد شدن تعداد زیادی فرایند adb و خاموش نشدن صحیح آنها برطرف شد.
- مشکلی که باعث میشد دکمههای چرخش و سایر بخشهای واسط کاربر تا زمانی که پنجره «کنترلهای گسترده» باز نشده است پاسخ ندهند برطرف شد.
- مشکلی که باعث میشد کپی و جایگذاری از میزبان کار نکند، مگر اینکه کادر گفتگوی «کنترلهای گسترده» حداقل یکبار باز شده باشد، برطرف شد.
- مستطیل تغییر اندازه شبیهساز بدون قاب بهروز شده است تا از زمینه دیداری شبیهساز بهتر پیروی کند.
- اکنون وقتی حالت هواپیما روشن است، تلفن و پیامک بهدرستی غیرفعال میشوند.
- مشکلی که باعث میشد عملکرد پیامک و تلفن همراه پساز بار کردن عکس آنی غیرفعال شود برطرف شد.
- دیگر پیامهای هشدار نادرست با این مضمون دریافت نخواهید کرد:
“Unable to open... \pstore.bin. Permission denied.” - مشکلی که مانع از تغییر موقعیت AVD در برخیاز صفحهنمایشهای Mac میشد برطرف شد.
- مشکلات مربوط به لرزش و خالی بودن صفحهنمایش در رایانههای جدیدتر MacBook Pro هنگام اجرای AVD با پوسته Pixel 2 XL برطرف شد.
- مشکلات مربوط به صفحهنمایشهای خالی هنگام جابهجایی به حالت بزرگنماییشده درحالیکه شبیهساز بدون قاب فعال بود برطرف شد.
- مشکلی که باعث میشد پوسته دستگاه و محتوای شبیهساز هنگام بزرگنمایی بهصورت غیرهمگام پیمایش شوند برطرف شد.
اگر همچنان با توقف یا ناپایداریهای دیگر مواجه هستید، لطفاً مشکل را ثبت کنید.
27.1.12 (مارس ۲۰۱۸)
این بهروزرسانی شامل اصلاحاتی برای مشکلات زیر است:
- کیفیت صدای بلوتوث پساز شروع شبیهساز کاهش یافت. (مشکل ۳۷۰۹۵۷۵۶)
- مکانهای ارسالشده به یک شبیهساز به همه آنها ارسال شد. (مشکل ۷۳۴۵۰۶۳۳)
- مکان GPS تنظیمشده بااستفاده از کنسول با مقادیر تنظیمشده بااستفاده از کنترلهای گسترده > مکان در میانای نگارهای کاربر لغو شد. (مشکل ۷۳۴۷۱۷۶۰)
اگر همچنان با توقف یا ناپایداریهای دیگر مواجه هستید، لطفاً مشکل را ثبت کنید.
با این بهروزرسانی، تصویر سیستم فعلی، و نسخه پیشنمایش Android Studio، میتوانید از «شبیهساز Android» برای اجرای برنامههای واقعیت افزوده ساختهشده با ARCore استفاده کنید. برای اطلاع از الزامات و دستورالعملهای دقیق، اجرای برنامههای واقعیت افزوده در «شبیهساز Android» را ببینید.
27.1.10 (فوریه ۲۰۱۸)
وضوح ضبط دوربین
اکنون میتوان قابهای 720p را از وببین متصلشده ضبط کرد.
برای کار با Android نسخه ۸.۱ (سطح API ۲۷) و تصاویر سیستم بالاتر، هر وبکم متصلشدهای باید قابلیت ضبط فریمهای 720p را داشته باشد.
تصحیحات
- مشکلی که باعث میشد ضبط وبکم گاهی تصویری مخدوش یا کاملاً سبز تولید کند برطرف شد.
- مشکلی برطرف شد که باعث میشد پیام زیر حتی زمانی که توقف واقعی وجود نداشت دیده شود: «شبیهساز: خطا: رشته متوقفشده Qt event loop شناسایی شد. پاسخی برای ۱۵۰۰۰ میلیثانیه وجود ندارد».
اگر همچنان با توقف یا ناپایداریهای دیگر مواجه هستید، لطفاً مشکل را ثبت کنید.
27.1.7 (فوریه ۲۰۱۸)
پنجره شبیهساز بدون قاب:
بهطور پیشفرض، شبیهسازهای دارای فایلهای پوسته دستگاه اکنون بدون قاب پنجره اطراف نشان داده میشوند. برای نشان دادن قاب پنجره اطراف، نمایش قاب پنجره اطراف دستگاه را در صفحه «تنظیمات» پنجره کنترلهای گسترده فعال کنید.
بهبودهای «راهاندازی سریع» برای کارآمدتر کردن کار با عکسهای آنی AVD:
- هرزمان بخواهید میتوانید بااستفاده از دکمه اکنون ذخیره شود در پانل «تنظیمات» چارگوش گفتگوی کنترلهای گسترده، عکس آنی AVD را ذخیره کنید.
- شبیهساز زمان لازم برای ذخیره عکس آنی را در بسیاری از موارد کاهش میدهد، زیرا فقط تفاوت بین وضعیت فعلی و عکس آنی ذخیرهشده قبلی را ذخیره میکند.
برای جزئیات، به مستندات راهاندازی سریع مراجعه کنید.
شبیهساز برای استفاده از 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 (ژانویه ۲۰۱۸)
ANGLE برای پردازش در Windows اکنون بهطور پیشفرض غیرفعال است.
اگر ANGLE برای شما بهتر کار میکند، میتوانید آن را با پرچم خط فرمان
-gpu angle_indirectدوباره فعال کنید. یا پنجره «کنترلهای گسترده» را باز کنید، به تنظیمات > پیشرفته بروید، و ANGLE D3D11 را برای تنظیمات پردازنده OpenGL ES انتخاب کنید.مشکلی که باعث میشد کلیدهای Shift+B نویسه B بزرگ را تایپ نکند برطرف شد.
27.0.2 (دسامبر ۲۰۱۷)
ویژگی جدید «راهاندازی سریع» زمان شروع شبیهساز را براساس عکس آنی نمونه AVD شما سریعتر میکند.
«راهاندازی سریع» بهطور پیشفرض برای همه «دستگاههای مجازی Android» فعال است. اگرچه اولین باری که یک AVD را راهاندازی میکنید، باید راهاندازی سرد انجام دهد (درست مانند روشن کردن دستگاه)، همه راهاندازیهای بعدی سریع هستند و سیستم به وضعیتی که شبیهساز را بستید بازیابی میشود (مشابه بیدار کردن دستگاه).
اگر میخواهید زمان ذخیره عکس آنی توسط شبیهساز را کنترل کنید، پنجره کنترلهای گسترده شبیهساز را باز کنید و روی تنظیمات کلیک کنید. در اینجا میتوانید یکی از تنظیمات زیر را برای ذخیره کردن وضعیت راهاندازی سریع هنگام خروج انتخاب کنید:
- بله: همیشه هنگام بستن شبیهساز، عکس آنی راهاندازی سریع ذخیره شود. این گزینه پیشفرض است.
- نه: هرگز عکس آنی راهاندازی سریع ذخیره نشود؛ همیشه راهاندازی سرد انجام شود.
- پرسیدن: وقتی شبیهساز را میبندید، از شما میپرسد که عکس آنی راهاندازی سریع ذخیره شود یا نه.
انتخاب شما فقط برای «دستگاه مجازی Android» که درحالحاضر باز است اعمال میشود.
برای اطلاعات بیشتر، به اسناد راهاندازی سریع مراجعه کنید.
پشتیبانی از Mac OpenGL ES 3 اضافه شد (برای تصاویر سیستم بااستفاده از سطح میانای برنامهسازی کاربردی ۲۴ و بالاتر، میاناهای برنامهسازی کاربردی Google، و x86 ABI).
برای پایداری بیشتر در برنامههای OpenGL ES 2+، شبیهساز اکنون از نمایه هسته OpenGL (درصورت دردسترس بودن) استفاده میکند.
گزینههای جدید برای پردازش با Swiftshader / ANGLE:
-
-gpu swiftshader_indirect: نسخه سریعتر و پایدارتر Swiftshader که با «راهاندازی سریع» کار میکند. -gpu angle_indirect(فقط Windows): نوع پایدارتر ANGLE D3D که با «راهاندازی سریع» نیز کار میکند.
گزینههای قدیمیتر
-gpu swiftshaderو-gpu angleاکنون منسوخ شدهاند. در پنجره «کنترلهای گسترده»، گزینههای «SwiftShader» و «ANGLE» برای تنظیمات پردازنده OpenGL ES در تنظیمات > پیشرفته اکنون از انواع*_indirectاستفاده میکنند.-
رفع اشکالات مختلف دیگر.
۲۶.۱.۴ (اوت ۲۰۱۷)
این نسخه جزئی با رفع اشکال و بهبودهای زیر در پیکربندی واحد پردازش گرافیکی (GPU) است:
- فعال کردن پویانمایی راهاندازی هنگام اجرا در پردازنده ANGLE
- غیرفعال کردن GLES3 هنگام اجرا در پردازنده ANGLE
۲۶.۱.۳ (اوت ۲۰۱۷)
این نسخه جزئی شامل رفع اشکال، بهبود عملکرد، و تغییرات کوچک در ویژگیها است.
- اکنون این نسخه برای استفاده از جدیدترین تصاویر سیستم Android 8.0 لازم است.
این دستگاهها با Treble سازگارند،
و دارای بخشبندیهای
vendor.imgمجزا هستند. - HAXM 6.2.0 جدید اکنون دردسترس است (مدیر SDK را بررسی کنید) و شامل
بهروزرسانیهای زیر است:
- استفاده از حافظه بهبود یافته است. مجموعه کاری اوج حافظه پینشده توسط HAXM دیگر با اندازه RAM مربوط به AVD برابر نیست؛ درعوض، حافظه درصورت نیاز صفحهبندی میشود. این کار به شبیهساز کمک میکند تا در دستگاههایی با مقدار RAM کمتر، با اطمینان بیشتری اجرا شود.
- شبیهساز با HAXM 6.2.0 اکنون میتواند سریعتر در macOS راهاندازی شود و از مرحله طولانی مقداردهی اولیه عبور کند.
- بهبود پیکربندی GPU
- مشکلات مربوط به صفحه سیاه در بوت هنگام اجرای رندر نرمافزار سمت مهمان با بازگشت به رندر نرمافزار سمت میزبان با Swiftshader برطرف شد. آخرین بازبینیهای تصاویر سیستم برای سطوح API ۱۹ تا ۲۵ با Google APIs باید رندرینگ سمت مهمان فعال داشته باشند.
- مشکلی برطرف شد که در آن شبیهساز بهدلیل شناسایی وجود پردازنده گرافیکی Intel قدیمیتر به نرمافزار رندرکننده تغییر میکرد، اما شبیهساز درواقع روی پردازنده گرافیکی مجزا اجرا میشد. اینکه کدام GPUها برای استفاده از ANGLE
یا پردازنده Swiftshader تغییر خواهند کرد بهصورت زیر تعیین میشود:
- پردازندههای گرافیکی یکپارچه Intel قدیمیتر در درایورهای OpenGL و ANGLE D3D مشکل درایور دارند. کاربران دارای Intel HD Graphics 3xxx و قدیمیتر از Swiftshader استفاده خواهند کرد.
- برخیاز کاربران گزارش کردهاند که بهدلیل وجود اشکالی که باعث میشود «راهانداز Pixel» مرتباً متوقف شود، نمیتوانند از تصاویر سطح API ۲۵ استفاده کنند. بهنظر میرسد این مشکل مربوط به درایور در برخیاز مدلهای Intel HD 4xxx باشد. بنابراین بهطور خودکار به استفاده از ANGLE تغییر خواهند کرد.
- برای دریافت بهترین نتایج با شبیهسازی GPU، توصیه میکنیم از GPU مجزای NVIDIA یا AMD، یا GPU جدیدتر Intel (Iris، HD 5xxx، HD 5xx/6xx) استفاده کنید.
- مشکلی که باعث میشد اگر AVD با
hw.gpu.mode=hostپیکربندی شده باشد و شبیهساز در کارخواه میزکار ازراهدور راهاندازی شده باشد، شبیهساز راهاندازی نشود (شبیهسازی OpenGL مقداردهی اولیه نشود) برطرف شد. - تنظیمات «سطح OpenGL ES API (بازراهاندازی لازم است)» شفافسازی شد؛ گزینهای برای تنزل از OpenGL ES 3 به OpenGL ES 2 درصورت بروز مشکل یا نیاز به آزمایش در سطوح پایینتر OpenGL ES API اضافه شد.
- پردازنده Mesa منسوخ شده است؛
hw.gpu.mode=mesaاکنون بهطور خودکار به استفاده از Swiftshader در میزبان تغییر خواهد کرد.
- بهبودهای macOS:
- شبیهساز اکنون ازطریق Hypervisor.Framework یا HAXM 6.2.0 کاملاً با macOS 10.13 High Sierra سازگار است.
- Hypervisor.framework اکنون بهطور پیشفرض در macOS برای تصاویر x86 ۳۲ بیتی فعال است تا عملکرد و سازگاری macOS بهبود یابد. اگر بهطور خاص با آن مشکل دارید، لطفاً گزارش اشکال ارسال کنید و
HVF = offرا به~/.android/advancedFeatures.iniاضافه کنید (اگر این فایل وجود ندارد، آن را ایجاد کنید). - مشکلات مربوط به عدم اتصال به اینترنت / عدم موفقیت در پیوست کردن اشکالزدا هنگام استفاده از Hypervisor.framework برطرف شد.
- برای بهبود سازگاری و عملکرد ضبط وبکم، ضبط دوربین مبتنی بر QTKit با ضبط میانگیرشده مبتنی بر AVFoundation جایگزین شده است.
- پشتیبانی از Wi-Fi در برخیاز تصاویر سیستم اضافه شد (درحالحاضر فقط سطح API ۲۵).
نقطه دسترسیای بهنام «AndroidWifi» دردسترس است و Android بهطور خودکار
به آن متصل میشود. پشتیبانی Wi-Fi را میتوان با اجرای شبیهساز با
پارامتر خط فرمان
-feature -Wifiغیرفعال کرد. - برخیاز کاربران این نگرانی را مطرح کردند که تصاویر سیستم «فروشگاه Play» با اندازه ثابت فضای ذخیرهسازی کافی ندارند. به همین دلیل، اندازه را بهطور پیشفرض به ۲ گیگابایت افزایش دادهایم (از ۸۰۰ مگابایت).
- میانبر صفحهکلید (Ctrl+Shift+U) برای باز کردن صفحه واسط کاربر گزارش اشکال مستقیماً از صفحه تنظیمات اضافه شد.
- مشکلی برطرف شد که در آن اگر از CPU قدیمیتر با Intel x86 EPT اما بدون UG استفاده میشد، شبیهساز درصورت پیکربندی بیشاز یک هسته، بوت نمیشد.
- مشکلی که باعث میشد HyperV بهدرستی شناسایی نشود، درصورتیکه شبیهساز خودش در Xen hypervisor اجرا میشد، برطرف شد.
- مشکلی که باعث میشد شبیهساز در برخی پیکربندیهای Linux هنگام شروع ازکار بیفتد برطرف شد.
۲۶.۱.۲ (ژوئیه ۲۰۱۷)
این نسخه شامل ویژگیهای جدید و بهبود عملکرد است.
امکان تعریف پیکربندی پراکسی HTTP سفارشی در کنترلهای گسترده اضافه شد (روی بیشتر
کلیک کنید، سپس روی تنظیمات و پراکسی کلیک کنید). بهطور پیشفرض، شبیهساز از تنظیمات پراکسی HTTP در Android Studio استفاده میکند، اما این صفحه به شما امکان میدهد پیکربندی پراکسی دستی تعریف کنید.
پشتیبانی VNC برای GPU حالت مهمان اضافه شد تا شبیهساز بتواند از راه دور مشاهده و کنترل شود. برای مثال، میتوانید شبیهساز را راهاندازی کنید و به VNC اجازه دهید به درگاه ۵۹۰۱ بهصورت زیر گوش دهد:
- اجرا:
emulator -gpu guest -avd avd_name -no-window -qemu -vnc :1 برای اتصال به درگاه ۵۹۰۱، یک نمایشگر VNC، مانند نمایشگر tightvnc، را باز کنید.
برای استفاده از کلاینت همرسانی صفحهنمایش داخلی Mac، هنگام راهاندازی شبیهساز، گذرواژه VNC لازم است. برای تنظیم گذرواژه، از این فرمان استفاده کنید:
emulator -gpu guest -avd avd_name -no-window -qemu -vnc :1,password -monitor stdioو سپس
change vnc passwordرا در کنسول وارد کنید و گذرواژه را وارد کنید.
درحالحاضر Android O برای حالت VNC پشتیبانی نمیشود.
- اجرا:
دکمه ثبت اشکال در صفحه «راهنمای» کنترلهای گسترده اضافه شد (روی بیشتر
کلیک کنید، و سپس روی راهنما و راهنمای شبیهساز کلیک کنید). با کلیک کردن روی ثبت اشکال، کادر گفتگویی باز میشود که در آن میتوانید جزئیات گزارش اشکال را ببینید، ازجمله نماگرفت، اطلاعات پیکربندی AVD، و گزارش اشکال. سپس میتوانید گزارش را برای خودتان ذخیره کنید یا مشکلات شبیهساز را گزارش کنید.
حسگر ژیروسکوپ به شبیهساز و پانل حسگرهای مجازی اضافه شد. این ویژگی برای کار کردن به تصویر سیستم با پشتیبانی از ژیروسکوپ نیاز دارد (درحالحاضر میانای برنامهسازی کاربردی سطح ۲۴ و ۲۵).
ساناد ترجیحی میزبان به فهرست ساناد Qemu در Windows اضافه شد، وقتی چندین میانای شبکه مجازی در میزبان چندین نشانی ساناد را معرفی میکنند که برای شبیهساز کاربردی نیستند.
پشتیبانی آزمایشی macOS Hypervisor.Framework برای تصاویر x86 ۳۲ بیتی در macOS 10.10+ ازطریق پرچمهای سرور اضافه شد که باید زمان راهاندازی و عملکرد را بهبود بخشد.
- اگر با آن مشکلی دارید، خط
HVF = offرا در~/.android/advancedFeatures.iniاضافه کنید.
- اگر با آن مشکلی دارید، خط
OpenGL ES 3.x اکنون بهطور پیشفرض برای ایمیجهای سیستم و پردازندههای گرافیکی میزبان که از OpenGL ES 3 پشتیبانی میکنند فعال است. درحالحاضر، فقط Android O (سطح API ۲۶) و میزبانهای Windows/Linux از OpenGL ES 3 پشتیبانی میکنند.
- اگر با OpenGL ES 3 مشکل دارید، خط
GLESDynamicVersion = offرا در~/.android/advancedFeatures.iniاضافه کنید.
- اگر با OpenGL ES 3 مشکل دارید، خط
شبیهساز اکنون از OpenGL FBOهای خارج از صفحه برای همه پردازشها بهجز پست کردن تصویر نمایش نهایی استفاده میکند که این امر به رفع مشکلات مربوط به ثبات رنگ در پلاتفرمهای مختلف کمک میکند.
پساز جمعآوری دادهها درباره مشکلات کند شدن ناگهانی شبیهساز، به این نتیجه رسیدیم که این مشکل ممکن است به تداخل بین درایورهای قدیمی Intel OpenGL و بهروزرسانیهای Windows مربوط باشد. به همین دلیل، کاربران دارای Intel HD 4000، 3000، 2000 (و GPUهای مرتبط) اکنون بهطور پیشفرض رندرینگ را روی رندرکننده D3D (ANGLE) یا Swiftshader (رندرکننده نرمافزاری) تنظیم کردهاند.
۲۶.۰.۰ (مارس ۲۰۱۷)
این نسخه با سطح میانای برنامهسازی کاربردی ۲۶ سازگار است. این نسخه همچنین شامل تعدادی بهبود عملکرد و رفع اشکال است.
بازبینی جزئی ۲۶.۰.۳ (مه ۲۰۱۷)
- پرچمهای ویژگی قابلبهروزرسانی آنلاین را برای رسیدگی سریع به مشکلات ناشی از پیکربندیهای سختافزاری مشکلساز اضافه میکند. این کار به Google اجازه میدهد تا با بهروزرسانی پرچمهای سمت سرور، اصلاحات و ویژگیهایی را که به پیکربندیهای کاربر وابسته هستند عرضه کند. اگر متوجه مشکلی در سختافزار خاصی شدید، لطفاً اشکال را گزارش کنید تا بتوانیم مشکل را بررسی کنیم.
- پشتیبانی جدید از ورودی چرخشی برای تصاویر سیستم Android Wear با سطح میانای برنامهسازی کاربردی ۲۵. برای شبیهسازی صفحه ورودی چرخشی در دستگاه Wear، روی برگه ورودی چرخشی در پنجره گسترده کلیک کنید.
- اکنون اندازه کادر گفتگوی «گزارش خرابی» قابلتغییر است و دیگر زمان ارسال گزارشهای خرابی را بدون ورودی به پرسیدن بازنشانی نمیکند.
- شبیهساز ۳۲ بیتی اکنون نیاز دارد که حداکثر اندازه RAM دستگاه مجازی Android کمتر از یا برابر با ۵۱۲ مگابایت باشد تا از تمام شدن فضای شبیهساز در فضای آدرس مجازی ۲ گیگابایتی جلوگیری شود.
- پشتیبانی از مسیرهای مطلق در تصاویر شبیهساز را اضافه میکند.
- برگه جدیدی در پنجره گسترده برای تصاویر «فروشگاه Google Play» اضافه میکند که نسخه «خدمات Play» و دکمهای برای بررسی بهروزرسانیهای «خدمات Play» را نمایش میدهد.
- منو کرکرهای را برای انتخاب پردازنده OpenGL در صفحه «تنظیمات شبیهساز» اضافه میکند. اگر با درایور OpenGL در دستگاه Windows مشکل دارید، گزینههای ANGLE (D3D11) یا ANGLE (D3D9) را امتحان کنید (نیاز به بازراهاندازی دارد). اگر با درایور OpenGL در دستگاهی غیراز Windows مشکل دارید، از پردازنده نرمافزاری Swiftshader استفاده کنید (نیاز به بازراهاندازی دارد).
- خرابی نادری را که هنگام خروج از شبیهساز درصورت دریافت هر دو فرمان
exitوminimizeرخ میداد برطرف میکند. - مشکل مقیاسبندی را هنگام تغییر نمایشگر در دستگاه Mac برطرف میکند. (مشکل ۲۶۸۲۹۶)
- مشکلی را برطرف میکند که در آن شبیهساز ۳۰۰٪ از CPU را اشغال میکند و آن را نگه میدارد پساز ازسرگیری رایانه میزبان از حالت خواب یا زمانی که شبیهساز برای مدت طولانی درحال اجرا بوده است.
- مشکل ازکارافتادن شبیهساز هنگام خاموش شدن را برطرف میکند.
بهروزرسانیها با HAXM نسخه ۶.۱.۱ (مارس ۲۰۱۷)
توجه: HAXM نسخه ۶.۱.۱ از ۳۰ مارس ازطریق مدیر SDK برای کاربران Mac دردسترس است و بهزودی برای کاربران Windows نیز دردسترس خواهد بود.
نسخه ۲۶.۰.۰ «شبیهساز Android» از HAXM نسخه ۶.۱.۱ پشتیبانی میکند که شامل بهروزرسانیهای زیر است:
- شبیهسازی «واحدهای پایش عملکرد» (PMU) را فعال میکند. (مشکل ۲۲۳۳۷۷)
- مشکل همزیستی با VirtualBox و Docker در Mac را برطرف میکند. (مشکل ۱۹۷۹۱۵)
- پیام خطای نصب را که هنگام عدم شناسایی Intel VT-x در Windows توسط نصبکننده نمایش داده میشود، اصلاح میکند. این خطا معمولاً بهدلیل فعال بودن Hyper-V رخ میدهد.
- پشتیبانی از شتابدهی «شبیهساز Android» را در ماشین مجازی Windows مبتنی بر Hyper-V اضافه میکند. این بهروزرسانی مستلزم آن است که نمونه Hyper-V میزبان (نمونهای که ماشین مجازی/مهمان Windows را مدیریت میکند) از جدیدترین نسخه Hyper-V با مجازیسازی تودرتوی فعالشده استفاده کند. Hyper-V باید در نمونه Hyper-V مهمان (ماشین مجازی Windows) غیرفعال باشد.
وابستگیها
- Android SDK Platform-Tools نسخه ۲۵.۰.۴ یا بالاتر.
- ابزارهای کیت توسعه نرمافزار Android نسخه ۲۶.۰.۰ یا بالاتر.
ویژگیهای جدید و رفع اشکالها
- سازگار با سطح میانای برنامهسازی کاربردی ۲۶.
- کاملاً با GLES 2.0 سازگار باشد. با داشتن GPU میزبان که درایورهای OpenGL منطبق با رایانه دارد، شبیهساز اکنون ۱۰۰٪ فهرست Android CTS dEQP-GLES2
mustpassرا پاس میکند. این ویژگی برای تصاویر x86 سطح میانای برنامهسازی کاربردی ۲۴ (نسخه ۱۱ و بالاتر) منتشر شده است و بهزودی برای همه تصاویر سیستم اضافه خواهد شد. - عملکرد بازپخش ویدیو بهبود یافته است. شبیهساز اکنون همه میانگیرهای رنگ ویدیو را در حافظه مشترک میزبان/مهمان ذخیره میکند و تبدیل نهایی لازم YUV به RGB را در GPU انجام میدهد. اکنون ۱۰۸۰p۳۰ باید بهراحتی در دسترس اکثر سیستمها باشد. این ویژگی برای تصاویر x86 سطح API ۲۴ (نسخه ۱۱ و بالاتر) منتشر شده است و بهزودی برای همه تصاویر سیستم گنجانده خواهد شد.
- شبیهساز اکنون بهدرستی هنگام خروج، خود را از فهرست
adb devicesلغو ثبت میکند و درگاههای TCP باز را در دستگاههای Linux میبندد. - اتصالهای adb اکنون قابلاطمینانتر است. شبیهساز درحال اجرا سریعتر شناسایی میشود و دیگر به وضعیت «آفلاین» یا «غیرمجاز» نمیرود.
۲۵.۳.۰ (مارس ۲۰۱۷)
از این نسخه، «شبیهساز Android» بهطور جداگانه از «ابزارهای کیت توسعه نرمافزار» منتشر خواهد شد. این نسخه شامل انواع بهبودهای عملکرد، ویژگیهای جدید، و رفع اشکال است.
بازبینی جزئی ۲۵.۳.۱ (مارس ۲۰۱۷)
- خرابیای که در برخی پیکربندیهای GPU رخ میداد با غیرفعال کردن GLAsyncSwap بهطور پیشفرض برطرف شد.
این ویژگی در نسخه ۲۵.۳.۰ برای بهبود زمانبندی فریم و فریم در ثانیه برای بازیها و ویدیوها اضافه شد، اما باعث میشود شبیهساز در برخی پیکربندیهای ناشناخته دستگاه با مشکل مواجه شود. میتوانید
آن را بهصورت دستی با باز کردن
فایل
android_sdk/emulator/lib/advancedFeatures.iniو تنظیمGLAsyncSwap = onفعال کنید.
وابستگیها
- نسخه ۲۴ یا جدیدتر «ابزارهای پلاتفرم کیت توسعه نرمافزار Android».
- ابزارهای کیت توسعه نرمافزار Android نسخه ۲۵.۳.۰.
ویژگیهای جدید و رفع اشکالها
- موتور شبیهسازی به QEMU 2.7 بهروزرسانی شده است، ازجمله همه رفع اشکالهای اخیر، عملکرد بهبودیافته، و ویژگیهای جدید.
- پشتیبانی جدید IPv6.
- شبیهساز اکنون از SwiftShader بهعنوان پردازکننده نرمافزاری خالص در میزبان استفاده میکند.
- بهبود عملکرد Android Pipe: Android Pipe، کانال ارتباطی اصلی بین شبیهساز و سیستمعامل Android، اکنون یک مرتبه سریعتر است، تأخیر کمتری دارد، و عملکرد چندرشتهای بهتری ارائه میدهد. این امر باعث بهبودهای عملکردی متعددی برای شبیهساز میشود، ازجمله:
- سرعت ارسال/دریافت ADB بهبود یافته است.
- پشتیبانی بهتر از شتاب سهبعدی.
- واکنشگرایی کلی شبیهساز افزایش یافته است.
- بهبود عملکرد گرافیک.
- اکنون شبیهساز از میانگیرهای سمت GPU (glBindBuffers / glBufferData) استفاده میکند وقتی مهمان آنها را درخواست میکند، که سربار CPU را در برخیاز برنامهها کاهش میدهد.
- پشتیبانی صوتی بهبود یافته است.
- ورودی/خروجی دیسک سریعتر: شبیهساز اکنون از رشتههای جداگانه برای ارسال ورودی/خروجی دیسک استفاده میکند که منجر به تأخیر کمتر و توان عملیاتی بهتر میشود (سرعت ورودی/خروجی متوالی تقریباً ۱٫۵ برابر، سرعت ورودی/خروجی دسترسی تصادفی تقریباً ۵ برابر). این کار همچنین تعداد دفعات پاکسازی دیسک را کاهش میدهد و درنتیجه بار دستگاه فیزیکی بسیار کمتر میشود.
- شبیهساز اکنون از فایلهای پراکنده برای راهاندازی دیسک در دستگاههای Windows استفاده میکند، که هم راهاندازی اولیه و هم راهاندازیهای «پاک کردن دادهها» را سرعت میبخشد. هنگام ایجاد یا بازنشانی AVD، شبیهساز اکنون ۱۰۰ تا ۲۰۰ مگابایت داده در دیسک مینویسد، بهجای ۲ گیگابایت یا بیشتر.
- بهبودهای مختلف در واسط کاربر گرافیکی:
- شبیهساز اکنون از Qt 5.7.0 استفاده میکند که شامل رفع اشکال و بهبود عملکرد است.
- مقداردهی اولیه واسط کاربر دیگر تلاش نمیکند همه فایلهای اجرایی شبیهساز را بهعنوان افزونههای Qt بار کند، بنابراین بهطور چشمگیری کوتاهتر است، بهویژه در HDD.
- تعاملات میانای کاربر اکنون سریعتر و روانتر است، ازجمله چرخش، تغییر اندازه پنجره، و بار کردن و بستن پنجره کنترلهای گسترشیافته.
OpenXR™ و نشانواره OpenXR علامتهای تجاری متعلق به The Khronos Group Inc. هستند و بهعنوان علامت تجاری در چین، اتحادیه اروپا، ژاپن، و پادشاهی متحد (UK) ثبت شدهاند.