شبیهساز Android در «استودیو Android» گنجانده شده است.
نسخههای شبیهساز قبلاز ۲۵.۳.۰ بهعنوان بخشی از «ابزارهای کیت توسعه نرمافزار Android» توزیع میشدند.
برای اطمینان از اینکه جدیدترین نسخه را دارید، مدیر کیت توسعه نرمافزار را برای بهروزرسانی بررسی کنید.
برای بارگیری نسخههای قبلی «شبیهساز Android»، به بایگانی بارگیری شبیهساز مراجعه کنید.
برای یادداشتهای انتشار نسخههای «شبیهساز» قبلاز ۲۵.۳.۰، به یادداشتهای انتشار «ابزارهای کیت توسعه نرمافزار Android» مراجعه کنید.
برای دیدن اینکه چه مشکلاتی در جدیدترین نسخههای «شبیهساز Android» برطرف شده است، مشکلات بستهشده را ببینید.
برای مشکلات شناختهشده و عیبیابی، لطفاً عیبیابی شبیهساز را ببینید.
37.2.12 Stable (۲۹ سپتامبر ۲۰۲۶)
[رفع اشکال]مسئله ۵۳۷۸۰۲۹۵۹ macOS (Apple Silicon): gRPC streamScreenshot با ImageTransport MMAP موتور شبیهساز ازکار میافتد / قابها را بهطور بیصدا هرگز نمینویسد
[رفع اشکال]مشکل شماره ۵۰۷۰۷۸۵۸۰ شبیهساز مانع از به خواب رفتن macOS میشود
[رفع اشکال]مشکل شماره ۵۰۶۴۷۵۵۸۱ اعوجاج صوتی باقیمانده و خشخش هنگام راهاندازی در macOS هنگام استفاده از میانای صوتی با >۲ کانال (بازخورد، چند خروجی) برطرف شد
37.1.11 Stable (۳۰ ژوئیه ۲۰۲۶)
درایور سرپرست «شبیهساز Android» (AEHD) در ۳۱ دسامبر ۲۰۲۶ منسوخ خواهد شد. برای کمک به این انتقال، Android Studio اکنون به کاربران Windows کمک میکند از AEHD به Windows Hypervisor Platform (WHPX) تبدیل کنند. برای کسب اطلاعات درباره پیکربندی شتاب ماشین مجازی بااستفاده از WHPX، به پیکربندی شتاب ماشین مجازی بااستفاده از WHPX مراجعه کنید.

AVD مربوط به Pixel 10a اضافه شد
پشتیبانی از افزونههای جدید Vulkan که برای اجرای تصاویر سیستم API 37 لازم است اضافه شد
[رفع اشکال]مشکل شماره ۳۲۴۴۶۵۹۸۶ هنگام گرفتن عکس فوری در شبیهساز بدون فضا، خطای کمبود فضا دریافت نمیشود
[رفع اشکال]مسئله ۵۲۶۶۷۱۸۷۲ پشتیبانی از پسوندهای واحد (برای نمونه، «۶ گیگابایت»، «۳۲ مگابایت») برای پیکربندیهای «حافظه دسترسی تصادفی» و «اندازه پشته ماشین مجازی» در config.ini
[رفع اشکال]مشکل شماره ۳۲۵۸۱۴۵۹۲ مشکلی که در macOS 14 معرفی شده است و باعث میشود شبیهساز پساز شروع دوربین یخ بزند و بسیار کند کار کند
36.6.11 Stable (۲ ژوئن ۲۰۲۶)
از API 37، حداقل حافظه (RAM) مورداستفاده ماشین مجازی AVD به ۴ گیگابایت افزایش یافته است.
برای پشتیبانی از نیازهای حافظه بالاتر Android 17 (API 37)، «دستگاههای مجازی Android» (AVD) «تلفن» اکنون به حداقل ۴ گیگابایت حافظه دسترسی تصادفی نیاز دارند. اگر AVD شما با حافظه کمتری پیکربندی شده باشد، «شبیهساز» بهطور خودکار تنظیم را بازنویسی میکند تا حداقل ۴ گیگابایت اختصاص دهد و از مشکلات احتمالی زمان اجرا جلوگیری کند.
حالت دوربین «محیط» به «شبیهساز» اضافه شد تا پسزمینههای صحنه مجازی قابلپیکربندی شود. این صحنهها در فایل environment.ini مربوط به AVD تعریف شدهاند و میتوانند بهصورت پویا در زمان اجرا مجدداً بار شوند.
اشکالی که باعث میشد پیشنمایش لحظهای در شبیهساز مستقل پساز حذف لحظهای پاک نشود برطرف شد.
[رفع اشکال]مشکل شماره ۵۰۶۴۷۵۵۸۱ وقتی از میانای صوتی با >۲ کانال (حلقه برگشتی، چند خروجی) استفاده میشود، صدای شبیهساز در macOS بهشدت تحریف میشود
[رفع اشکال]مشکل شماره ۵۱۶۴۵۵۳۷۰ نشت حافظه قابلتوجهی در macOS نسخه ۲۶.۳ هنگام بستن شبیهساز رفع شد، این مشکل مربوط به پاکسازی منابع استفادهشده توسط Hypervisor.framework APIs بود.
وصله 36.5.11 (۲۳ آوریل ۲۰۲۶)
- [رفع اشکال]مسئله شماره ۴۹۲۲۲۸۰۲۰ وقتی از «پردازش گرافیکی سختافزاری/خودکار» در «واحد پردازش گرافیکی Intel» استفاده میشود، «شبیهساز Android» صفحهنمایش سیاه نشان میدهد
36.5.10 Stable (۲ آوریل ۲۰۲۶)
این بهروزرسانی شامل ویژگی زیر و رفع اشکالها است:
آزمایش تعاملات چنددستگاهی با «شبیهساز Android»
«شبیهساز Android» اکنون دارای پشته شبکهسازی جدیدی است که آزمایش چنددستگاهی را بهبود میبخشد و نیاز به بازارسال دستی درگاه برای اتصال چندین نمونه AVD در یک میزبان را ازبین میبرد. اکنون «دستگاههای مجازی Android» میتوانند بهطور خودکار یکدیگر را کشف کنند و با هم ارتباط برقرار کنند، انگار که در یک شبکه مجازی هستند. این کار امکان آزمایش یکپارچه تعاملات همتا به همتا را بااستفاده از پروتکلهایی مانند «Wi-Fi بیواسطه» و «کشف سرویس شبکه» فراهم میکند.
این پشته جدید شبکه مزایای کلیدی متعددی برای توسعهدهندگان ارائه میدهد:
- بدون پیکربندی: دیگر نیازی به بازارسال درگاه دستی یا نوشتن دستورات adb نیست.
- همتا به همتای یکپارچه: پروتکلهای حیاتی مثل Wi-Fi Direct و Network Service Discovery بین شبیهسازها بدون نیاز به تنظیمات اضافی کار میکنند.
- پایداری بهبودیافته: مشکلات پایداری قدیمی، مانند ازدست رفتن دادهها (مشکل شماره ۱۵۰۷۵۸۷۳۶) و قطع اتصال (مشکل شماره ۴۴۹۸۱۷۸۵۶) در پشته قدیمی را برطرف میکند.
برای شروع، «شبیهساز Android» را در «مدیر کیت توسعه نرمافزار» Android Studio به جدیدترین نسخه بهروزرسانی کنید. برای اطلاعات بیشتر، مستندات در اینجا است.
ویژگیهای اضافی و رفع اشکالها
«دستگاههای مجازی Android» جدید Pixel اضافه شد، ازجمله Pixel 10، Pixel 10 Pro، Pixel 10 Pro XL، و Pixel 10 Pro Fold
وبکمها را بهعنوان نامهای کاربرپسند فهرست میکند و مشکلی را در Linux برطرف میکند که در آن «شبیهساز» نمیتوانست همه وبکمهای متصل را شناسایی و فهرست کند
[رفع اشکال]مشکل شماره ۳۳۳۶۲۸۴۶۲ فرایند crashpad_handler در macOS بیشازحد از واحد پردازش مرکزی استفاده میکند
وصله 36.4.10 (۹ مارس ۲۰۲۶)
- [رفع اشکال]مشکل شماره ۴۸۹۳۶۹۰۸۰ رفع مشکل ازکارافتادگی «شبیهساز تلویزیون» هنگام معلق ماندن پساز بهروزرسانی به Panda 2
36.4.9 پایدار (۱۰ فوریه ۲۰۲۶)
برای سادهسازی انتخاب 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 Studio یا «شبیهساز Android»، به گزارش کردن اشکال مراجعه کنید.
36.3.10 پایدار (۴ دسامبر ۲۰۲۵)
[رفع اشکال]مشکل شماره ۴۵۲۸۴۳۳۲۱ عملکرد در زمان انتقال فایلهای بزرگ به شبیهساز در Android API 34 و نسخههای جدیدتر تنزل پیدا میکند.
رفع خرابیهای ترکیببندی Vulkan هنگام اجرای کدکهای ویدیو در حالت بافت gpu.
رفع خرابی «شبیهساز» در رویداد صفحه لمسی هنگام اجرا با -debug-events.
36.2.12 Patch (۱۳ اکتبر ۲۰۲۵)
- رفع کردن مشکل ازکارافتادن در Windows که هنگام راهاندازی برنامه Vulkan در حالت پردازش نرمافزاری رخ میداد
36.2.11 پایدار (۹ اکتبر ۲۰۲۵)
پشتیبانی HAXM از «شبیهساز» برداشته شده است. اگر بخواهید AVD را با HAXM ایجاد کنید، برنمایی خواهید دید که گزارش میکند hypervisor وجود ندارد و پیوند کنشی برای نصب AEHD ارائه میدهد.

برای کسب اطلاعات درباره حذف نصب HAXM، به حذف نصب HAXM مراجعه کنید.
رفع مشکل برای اطمینان از اینکه GPU Intel از OpenGL ES 3.0 استفاده میکند تا از خرابی درایور جلوگیری شود
[رفع اشکال]مشکل شماره ۳۴۰۳۲۲۸۸۸ وقتی فضای خالی در دستگاه وجود ندارد، AVD شروع نمیشود
[رفع اشکال]اشکال شماره ۱۵۰۷۵۸۷۳۶ ازدست رفتن متناوب دادههای تکبایتی در اتصالات TCP در شبیهساز
[رفع اشکال]مشکل شماره ۴۳۴۷۷۴۳۸۱ هسته مهمان پساز راهاندازی سریع برای API 36 و 35 (شاید بیشتر) در Windows 11 بااستفاده از WHPX در i7-11850H ازکار افتاد
۳۶.۱.۹ پایدار (۳۱ ژوئیه ۲۰۲۵)
[رفع اشکال]مشکل شماره ۴۱۹۱۵۷۴۲۸ نویسههای UTF-8 در نام کاربری یا در مسیر AVD میتواند از شروع شبیهساز جلوگیری کند
[رفع اشکال]مشکل شماره ۴۲۳۶۷۰۸۳۳ «شبیهساز Android» در سیستم فایل btrfs ازکار میافتد
توجه: اگر در راهاندازی شبیهساز در X11 با مشکل مواجه هستید، از رندرینگ نرمافزاری استفاده کنید. برای نحوه پیکربندی پرداز زدن نرمافزاری، پیکربندی شتابدهی گرافیکی را ببینید.
35.6.11 پایدار (۲۴ ژوئن ۲۰۲۵)
پشتیبانی از واحدهای پردازش گرافیکی AMD و Nvidia در Windows و Linux برای «شبیهسازی واقعیت گسترده» بهبود یافته است
XR AVD میتواند بهصورت جاسازیشده در پنجرههای درحال اجرای Android Studio اجرا شود
بهبود جزئیات گزارش خرابی در Windows برای فعال کردن تخلیه کامل «شبیهساز»
[رفع اشکال]مسئله شماره ۴۱۰۴۸۵۰۴۳ دستگاه Android Emulator XR با خطای Vulkan ازکار میافتد
[رفع اشکال]مشکل شماره ۳۸۸۷۱۸۴۱۷ libndk_translation.so متوقف میشود و باعث ازکارافتادن Arm64AesEncode میشود
35.5.10 Stable (۶ مه ۲۰۲۵)
بررسیهای سازگاری CPU اضافی با پیامهای خطا (مثلاً فضای دیسک کافی نیست) اضافه شد
اشکالات مربوط به مدیریت حافظه Vulkan و موارد استفاده نامعتبر رفع شد
وقتی در پایانه اجرا میشود، پشتیبانی از تصویر فوری Vulkan بهدرستی بررسی و رد میشود
پشتیبانی از افزونه VK_KHR_multiview و قالب بافت A1R5G5B5 اضافه شد
AVD مربوط به Pixel 9a اضافه شد
35.4.9 Stable (۲۵ فوریه ۲۰۲۵)
منوِ کرکرهای در کنترلهای گسترده برای اولویتهای درایور «مهمان GLES» اضافه شد
[رفع اشکال]مسئله شماره ۳۸۹۳۳۰۷۵۰ ارسال پیامک به شبیهساز با نویسه Ñ باعث تقسیم پیام میشود
[رفع اشکال]مشکل شماره ۳۸۲۱۸۰۴۸۸ عملکرد «emuglConfig_get_vulkan_hardware_gpu_support_info» بهدلیل شناسایی نشدن دستگاه Vulkan ازکار میافتد
توجه: «شبیهساز Android XR» فقط در نسخههای Canary «استودیوِ YouTube» دردسترس است
35.3.11 Stable (۹ ژانویه ۲۰۲۵)
[رفع اشکال]مشکل شماره ۳۶۸۰۵۹۲۱۱ دسترسی برنامهریزیشده سیستمعامل Android Auto به VHAL بااستفاده از «میانای برنامهسازی کاربردی سرویس خودرو» کار نمیکند
[رفع اشکال]مسئله شماره ۳۴۸۵۹۸۵۱۳ شبیهساز روش عمومی ناامن غیرضروری در قفل چندرشتهای دارد
[رفع اشکال]مشکل شماره ۳۵۶۸۹۶۴۸۶ هنگام اجرا با -feature -Vulkan، فراخوانیهای «میانای برنامهسازی کاربردی» Vulkan واقعاً غیرفعال میشود
۳۵.۴.۴ Canary (۱۲ دسامبر ۲۰۲۴)
شبیهساز جدید Android XR
شبیهساز Android XR آزمایشی جدیدی برای توسعه و آزمایش برنامههای ساختهشده با کیت توسعه نرمافزار Jetpack XR برای هدستها اضافه کردیم. برای کسب اطلاعات درباره نصب شبیهساز Android XR و راهاندازی محیط توسعه، به راهاندازی کیت توسعه نرمافزار Jetpack XR مراجعه کنید.
شبیهساز Android XR ابزاری آزمایشی است. بااینحال تصمیم گرفتیم زودتر با شما همرسانی کنیم تا بتوانید زودتر آن را آزمایش کنید. منتظر مشکلات، بهویژه در برخیاز پیکربندیهای درایور و GPU در Windows باشید. مشکلات ممکن است در اطراف آزمایش سازگاری برنامههای تلفن همراه دوبعدی موجود نیز ایجاد شود. بازخورد شما به ما کمک میکند ویژگیهای آینده را بهبود دهیم و اولویتبندی کنیم.
تاکنون، شبیهساز Android XR در پیکربندیهای سختافزاری زیر آزمایش شده است:
- Mac (ARM)
- Windows 11
- واحد پردازش گرافیکی nVidia، ۴ گیگابایت vRAM، نسخه درایور ۵۵۳.۳۵ یا جدیدتر
- ۱۶ گیگابایت حافظه دسترسی تصادفی یا بیشتر
- ۸ هسته یا بیشتر
مشکلات شناختهشده
شبیهساز - پایداری و عملکرد:
- در برخیاز پیکربندیهای Windows، ممکن است قفلهای سیستم بحرانی یا خرابی درطول راهاندازی یا هنگام اجرای برنامهها رخ دهد. لطفاً با دنبال کردن راهنمای توسعهدهنده Android Studio برای فعال کردن WHPX، مطمئن شوید که Windows Hypervisor Platform (WHPX) فعال است.
- مشکلاتی مانند عدم پاسخدهی AVD یا عناصر واسط کاربر در رایانههای کیفی پساز چرخه تعلیق-ازسرگیری (مانند بستن رایانه کیفی و باز کردن آن).
- گاهی اوقات هنگام تغییر برنامهها از «حالت صفحه اصلی» به «حالت تمامصفحه» خرابی رخ میدهد
- «میاناهای برنامهسازی کاربردی Gemini» هنوز دردسترس نیستند؛ برنامه الگوی آغازگر «میانای برنامهسازی کاربردی Gemini» ازکار خواهد افتاد.
شبیهساز - شبیهسازی ورودی و خروجی:
- صفحهکلید مجازی برای فیلدهای جستجو و ویرایش ممکن است فقط بهصورت جزئی در میدان دید قابلمشاهده باشد
عناصر را نمیتوان بااستفاده از موشواره و صفحهکلید در جهت z (بهداخل و خارج از صفحهنمایش) حرکت داد
ناپایداری ورودی صوتی میزبان میکروفون AVD ممکن است منجر به بازراهاندازی و خرابی AVD شود.
صدا گاهی اوقات دارای نویز یا تحریف است.
وقتی دوربین از اتاق نشیمن مجازی خارج میشود، خطاهای پردازش قابل مشاهده است.
پیکربندیهای Windows رنگهای تیرهتری نسبتبه معمول نمایش میدهد.
پساز اینکه شبیهساز را در حالت آمادهبهکار قرار دهید و صفحه را در macOS قفل کنید، صدا دیگر کار نمیکند. (با بازراهاندازی شبیهساز، این مورد بازیابی خواهد شد.)
وقتی ماشین میزبان Wi-Fi را تغییر میدهد، اتصال شبکه قطع میشود.
با فعال بودن «حروف بزرگ»، حروف کوچک همچنان تایپ میشوند.
پیمایش بااستفاده از پد لمسی در Mac روان نیست.
پیمایش با کلیک و کشیدن در برخیاز عناصر رابط کاربری ممکن است بهدلیل طراحی کار نکند. اگر این امکان وجود ندارد، از چرخ موشواره برای پیمایش استفاده کنید.
نوشتار محو، واسط کاربر، و اشکالات دیگر در Chrome در برخیاز پیکربندیهای سیستم Windows. راهکار احتمالی: فعال کردن WHP.
شبیهساز - شبیهسازی صفحهها و لنگرها:
- گاهی اوقات لنگرها در نزدیکی همان مکان دوباره ظاهر نمیشوند
- قابهای متحرک ممکن است به دیوارها یا سقف متصل نشوند
- هواپیماهای شبیهسازیشده با چیدمان فیزیکی اتاق سهبعدی در حالت انتقال مطابقت ندارد
- محدود کردن کلی نواحی برای ثابت کردن اشیا در اتاق مجازی
- آرتیفکت کوچک نمایان در نمای انتقال در Windows
- در برخی موارد، قرار دادن لنگرها میتواند باعث ازکارافتادن برنامه شود
- وقتی «برنامهها» را در Windows نزدیک زمین حرکت میدهید، ممکن است خطوط سیاهی در بالای «برنامهها» ظاهر شود
شبیهساز - دیگران:
- شبیهساز فقط در حالت «خوداتکا» شروع میشود. حالت «جاسازیشده» (میانای کاربری جاسازیشده) هنوز پشتیبانی نمیشود.
- ورود به سیستم با حسابهای موجود در شبیهساز در Windows ممکن است باعث شود شبیهساز پاسخ ندهد
- محتوای رابط کاربری پنجرهها ممکن است پساز تغییر اندازه ناپدید شود (راهکار موقت: فشار دادن دکمه «صفحه اصلی»)
- در برنامه JXRCore ActivityPanelTest، پانل دوم در ابتدا نمایش داده نمیشود
- پساز مدت طولانی، ممکن است موارد «تنظیمات فوری» از تنظیمات سیستم ناپدید شوند.
- «میانای کاربر» شبیهساز ممکن است در ابتدا خارج از ناحیه صفحهنمایش ظاهر شود. اگر اینطور است، اندازه پنجره شبیهساز را کمی تغییر دهید تا به جای خود برگردد.
- هنگام استفاده از «میزکار از دور Chrome» در Windows، شبیهساز ممکن است راهاندازی نشود
- تاکنون OpenXR در شبیهساز پشتیبانی نشده است و برنامههای OpenXR ممکن است باعث ازکارافتادن شبیهساز شوند
- خطاهای نادر هنگام تلاش برای ارسال گزارش اشکال بااستفاده از تنظیمات تکمیلی Android Studio در Windows
- نماد «درحال پیمایش به عقب» تا زمانی که مکاننما در Mac نزدیک آن قرار نگیرد بهدرستی در برنامه «تنظیمات» قابلمشاهده نیست
- در برخی موارد، هنگام استفاده از واحد «نمایه پایه» بهعنوان بخشی از پروژه الگوی واقعیت گسترده، ساخت ممکن است با خطا مواجه شود
- درحالحاضر دسترسپذیری «XR Talkback» فقط بهصورت جزئی در شبیهساز ادغام شده است
برنامه Scene Viewer:
- جابهجایی عناصر در «نمایشگر صحنه» ممکن است باعث ازکارافتادن آن شود. برای دور زدن این مشکل، قبلاز تلاش برای حرکت دادن عنصر، موقعیت سر را کمی از موقعیت اولیه آن دور کنید (مثلاً بااستفاده از چرخش، حرکت دوربین، WASD، و غیره).
- اگر اندازه واقعی مدل سهبعدی کمتر یا بیشتر از حداقل و حداکثر مقیاس (که درحالحاضر بهترتیب روی ۲۰ سانتیمتر و ۷۰ متر تنظیم شده است) باشد، ویژگی اندازه واقعی ۱:۱ بهدرستی کار نخواهد کرد
- مدل سهبعدی میتواند پساز بار شدن در قاب اول بپرد
۳۵.۲.۱۰ (۱ اکتبر ۲۰۲۴)
- «دستگاههای مجازی Android» جدید Pixel اضافه شد، ازجمله Pixel 9، Pixel 9 Pro، Pixel 9 Pro XL، و Pixel 9 Pro Fold
- تصویر سیستم «رایانه لوحی» جدیدی برای Vanilla Ice Cream (API 35) اضافه شد
35.1.20 (۲۹ اوت ۲۰۲۴)
- Pixel 8a AVD اضافه شد
- رفع اشکالات مختلف برای دستگاههای تاشو
- بهروزرسانی Qt و رفع اشکالات مربوط به ازکارافتادگیها و گیر کردنهای Qt
- [رفع اشکال] رفع مشکل ازکارافتادگی و توقف در Windows با برنامههایی که از Vulkan استفاده میکنند
۳۴.۲.۱۶ (۹ ژوئیه ۲۰۲۴)
- [رفع اشکال] ثابت شدن رابط کاربری که در Pixel Fold هنگام تا کردن/باز کردن رخ میدهد
- [رفع اشکال] نمایش نادرست نسخه Android بهعنوان Android Vanilla Ice Cream پیشنمایش بهجای API 35 در Mac M1.
- [رفع اشکال] مشکل شماره ۲۹۶۱۶۲۶۶۱: در شبیهساز رایانه لوحی Pixel C، مقدار HasSystemFeature FEATURE_SENSOR_HINGE_ANGLE درست برگردانده میشود
۳۴.۲.۱۵ (۳۱ مه ۲۰۲۴)
- رفع اشکالات مختلف مربوط به حالت swangle و پاکسازی تبلیغکننده
۳۴.۲.۱۴ (۲۰ مه ۲۰۲۴)
با Android Studio Jellyfish Stable Patch 1 آزمایش شده است.
- [رفع اشکال] گاهیاوقات «عکس آنی» در شبیهساز جاسازیشده معلق میشود
- [رفع اشکال] دکمههای «نه» و «لغو» در عکس فوری بهدرستی کار نمیکنند
- [رفع اشکال] دکمههای پد جهتی کار نمیکنند
- [رفع اشکال] مشکلی که در Windows دیده میشد و باعث میشد شبیهساز در برخیاز شرایط هنگام استفاده از حالتهای GPU با ANGLE شروع نشود و پیام خطای «شبیهسازی GL شروع نشد» در گزارش برگردانده شود برطرف شد. توجه داشته باشید که شروع شبیهساز ازطریق خط فرمان با گزینه
-gpu swangle_indirectممکن است همچنان این خطا را با این نسخه ایجاد کند. اگر همچنان میخواهید شبیهساز را بااستفاده از خط فرمان در Windows با «پردازش گرافیکی نرمافزاری» با این نسخه شروع کنید، لطفاً از-gpu swiftshader_indirectاستفاده کنید - [رفع اشکال] میانبر مکان در صفحهکلید نقشه غیرقابل استفادهای را بار میکند
- [رفع اشکال] هنگام تنظیم مکان، کادر گفتگوی «ذخیره مسیر» وجود ندارد
۳۴.۲.۱۳ (۳۰ آوریل ۲۰۲۴)
با Android Studio Jellyfish Stable آزمایش شده است.
- به Qt 6.5.3 بهروزرسانی کنید
- سازگاری برای بهروزرسانیهای Google Maps API که در ویژگیهای «مکان» در «کنترلهای توسعهیافته» شبیهساز استفاده میشود و در پایان ماه مه رخ میدهد.
- رفع خرابیهای بسیار تأثیرگذار
- اصلاحات مختلف برای Pixel AVD
- کتابخانه گرافیکی مورداستفاده برای پردازنده نرمافزاری را بهروزرسانی کنید
- [رفع اشکال]مشکل ۲۲۵۵۴۱۸۱۹ شروع Chrome باعث ازکارافتادن «شبیهساز» در x86_64 میشود
- [رفع اشکال]مسئله ۳۱۴۶۱۴۴۳۵
-http-proxyکلید بهدرستی تجزیه نمیشود
۳۴.۱.۲۰ (۱ آوریل ۲۰۲۴)
با Android Studio Iguana Stable آزمایش شده است.
- [رفع اشکال] مسئله شماره ۳۱۴۶۱۴۴۳۵: رفع مشکل تجزیه نادرست کلید
-http-proxy
۳۴.۱.۱۹ (۷ مارس ۲۰۲۴)
با Android Studio Iguana Stable آزمایش شده است.
- [رفع اشکال] مشکل شماره ۳۱۲۶۷۷۲۵۹: مشکل ازکارافتادن صفحهنمایش در شبیهساز جاسازیشده پساز تغییر اندازه پنجره برطرف شد.
۳۴.۱.۱۸ (۲۹ فوریه ۲۰۲۴)
با Android Studio Iguana Stable آزمایش شده است.
- دستگاهها به «شبیهساز» اضافه شدند، ازجمله:
- Pixel Fold
- Pixel Tablet
- Pixel 8
- Pixel 8 Pro
- Pixel 7a
- آزمایش یکپارچهسازی gRPC: اکنون نقطههای پایانی gRPC برای آزمایشهای ابزارگریشدهای که در شبیهساز اجرا میشوند دردسترس است و امکان آزمایش سناریوهای واقعی را فراهم میکند. این ویژگی به توسعهدهندگان امکان میدهد از درون آزمایشهای ابزار دقیق Android بهطور ایمن با نقطه پایانی gRPC میزبانیشده توسط «شبیهساز Android» تعامل داشته باشند.
- رفع اشکالات مختلف
۳۳.۱.۲۴ (۲۸ دسامبر ۲۰۲۳)
با Android Studio Hedgehog Stable و Iguana Beta 1 آزمایش شده است.
- رفع مشکل وبکم «شبیهساز» که اجازه نمیدهد صفحهنمایش در قالب mp4 ضبط شود.
- رفع مشکل ازکار افتادن «شبیهساز» در «دستگاه مجازی Pixel Fold» وقتی درحین ضبط صفحهنمایش باز میشود.
- رفع مشکل نمایش پوسته تلفن متفاوت با صفحهکلید جداشده در Pixel Fold که باعث میشد غیرقابل استفاده شود (در Windows، Mac Intel، و Linux رفع شد)
- رفع اشکال در ظاهر «حسگرهای مجازی» در حالت «خوداتکا» (در Windows، Mac Intel، و Linux رفع شد)
- رفع برخیاز خرابیها، بهویژه هنگام بستن شبیهساز، ارائه شد
۳۳.۱.۲۳ (۳۰ نوامبر ۲۰۲۳)
با Android Studio Giraffe Patch 4 و Hedgehog Stable آزمایش شده است.
- پیادهسازی تاشو جدید برای شبیهسازی بهتر دستگاه Pixel Fold، با جدیدترین API 34 کار میکند
- ارتقای زیرینه گرافیک: پروتکل gfxstream را برای زیرینه گرافیک خود پیادهسازی کردهایم. این بهبود عملکرد کلی گرافیک و پایداری سیستم شما را افزایش میدهد. علاوهبراین، پشتیبانی از Vulkan 1.3 را با شروع از تصویر سیستم با API 34 معرفی میکنیم
- درخواست ویژگی: گزینه غیرفعال کردن اشاره زوم کردن با دو انگشت یا اختصاص مجدد کلید میانبر آن
- [رفع اشکال] اشکال شماره ۳۰۲۵۶۲۹۶۲ رفع خرابی وبکم «شبیهساز» هنگام استفاده از MacOS sonoma
- [رفع اشکال] اشکال شماره ۲۹۳۵۰۳۸۷۱ رفع مشکلی که در آن تنظیم «میکروفون» هنگام بازراهاندازی «شبیهساز» ذخیره نمیشد
- [رفع اشکال] مشکل شماره ۲۷۰۳۸۶۳۱۴ رفع خطای پویانمایی که در آن نوار کناری پساز کوچک شدن صفحه AVD باز میماند
- [رفع اشکال] مشکل شماره ۱۵۴۸۹۶۷۷۵ رفع اشکال ابزار ارسال اشکال
۳۲.۱.۱۵ (۲۹ اوت ۲۰۲۳)
با Android Studio Giraffe Patch 1 و Hedgehog Canary 16 آزمایش شده است.
- رعایت الزامات سختافزاری GAS برای «حسگرها» در «شبیهساز AAE»
- [رفع اشکال] مشکل شماره ۲۶۶۲۰۱۲۸۰ پیامک عبری در API 33 ارسال نمیشود
- [رفع اشکال] مشکل شماره ۲۵۷۰۹۷۴۰۴ شبیهساز زمان صحیح را پساز بیدار شدن میزبان در API 29 و 30 نشان نمیدهد
- [رفع اشکال] اشکال شماره ۲۲۸۲۰۱۸۹۹ نمیتوان Google Maps را در «کنترلهای گسترده شبیهساز Android» دید
۳۲.۱.۱۴ (۲۷ ژوئن ۲۰۲۳)
با Android Studio Hedgehog Canary 8، Giraffe Beta 5، و Flamingo Stable آزمایش شده است.
- جهتگیریها و اعوجاجهای دوربین شبیهساز را اصلاح کنید.
- [رفع اشکال] مشکل شماره ۲۵۷۰۹۷۴۰۴ "شبیهساز پساز بیدار شدن میزبان زمان درست را نشان نمیدهد". این اشکال هنوز برای API 29 و API 30 قابل بازتولید است.
- [رفع اشکال] مشکل شماره ۲۴۳۴۵۶۵۸۲ "نسخههای Android پساز API 30 ممکن است در شبیهساز در دستگاههای Mac M1 بهدرستی شروع نشوند"
۳۲.۱.۱۳ (۲۲ مه ۲۰۲۳)
با Android Studio Hedgehog Canary 2، Giraffe Beta 1، و Flamingo Stable آزمایش شده است.
- پشتیبانی از Pixel Fold و Pixel Tablet AVD را اضافه کنید.
- مشکل ازکارافتادن gLinux بهبود یافت.
- [رفع اشکال] مشکل شماره ۲۱۵۲۳۱۶۳۶ «شبیهساز با API بالاتر از API 30 در پردازنده نسل ۱۲ Intel کار نمیکند».
- [رفع اشکال] مشکل شماره ۲۷۵۳۹۷۹۰۵ سطح بالای خرابی در «شبیهساز Android M1» هنگام حرکت دادن مکرر تمرکز مکاننما به داخل و خارج شبیهساز.
- مشکل شناختهشده در راهاندازی AVD وقتی گزارش خرابی شبیهساز جدیدتر وجود دارد. برای اطلاعات بیشتر، عیبیابی شبیهساز را ببینید.
۳۲.۱.۱۲ (۲۱ مارس ۲۰۲۳)
با Android Studio Giraffe Canary 10، Flamingo RC، و Electric Eel Patch 2 آزمایش شده است.
- [رفع اشکال] مشکل شماره ۲۶۷۶۴۷۳۲۳ شبکه در «شبیهساز» که از «استودیو Android» شروع شده است کار نمیکند
- [رفع اشکال] اشکال شماره ۲۶۸۴۹۸۶۸۶ صفحهنمایش شبیهساز سوسو میزند
- [رفع اشکال] مشکل شماره ۲۷۰۰۳۴۸۲۴ عملکرد شبیهساز پساز بهروزرسانی به نسخه ۳۳.۱.۱ افت کرد
- [رفع اشکال] مشکل شماره ۲۲۵۵۴۱۸۱۹ شروع Chrome باعث ازکارافتادن «شبیهساز» در x86_64 میشود
- [رفع اشکال] مشکل شماره ۲۵۷۰۹۷۴۰۴ شبیهساز پساز بیدار شدن میزبان زمان صحیح را نشان نمیدهد
- افزودن گزارش خرابی برای دستگاههای Apple M1
۳۲.۱.۱۱ (۸ فوریه ۲۰۲۳)
با Android Studio Giraffe Canary 2، Flamingo Beta 1، و Electric Eel Patch 1 آزمایش شده است.
- بهینهسازیهای سرعت شبکه
- پشتیبانی از موشواره در «شبیهساز جاسازیشده»
- بهبودهای Virtio-snd
- غیرفعال کردن استفاده از پیوندهای نمادین هنگام باز کردن فایل Android Emulator درحین نصب
- رفع خرابی در بررسی شبیهساز
۳۱.۳.۱۴ (۱۳ دسامبر ۲۰۲۲)
با Android Studio Dolphin، Electric Eel RC1، و Flamingo Canary 9 آزمایش شده است.
- [رفع اشکال] رفع خرابیهای AVD که هنگام ورود به سیستم «فروشگاه Play» رخ میدهد.
۳۱.۳.۱۳ (۲۷ اکتبر ۲۰۲۲)
با Android Studio Dolphin، Electric Eel Beta 2، و Flamingo Canary 5 آزمایش شده است.
- [رفع اشکال] مشکل شماره ۲۴۹۹۴۸۳۳۸: پارامتر منطقه زمانی کار نمیکند
- [رفع اشکال] مشکل شماره ۲۴۹۳۶۶۵۴۳: گزینه Emulator -dns-server پساز API 31 کار نمیکند
۳۱.۳.۱۲ (۱۰ اکتبر ۲۰۲۲)
با Android Studio Dolphin و Electric Eel Beta 1 آزمایش شده است.
این بهروزرسانی شامل بهبودها و اصلاحات زیر است:
- [رفع اشکال] مشکل شماره ۲۴۷۸۴۳۰۰۰: خطای مدیریت مسیر نسبی AVD
- افزایش اندازه دیسک برای API 24 و نسخههای جدیدتر
۳۱.۳.۱۱ (۲۳ سپتامبر ۲۰۲۲)
با Android Studio Dolphin و Electric Eel Canary 10 آزمایش شده است.
این بهروزرسانی شامل بهبودها و اصلاحات زیر است:
- [رفع اشکال] ازکارافتادن AVD شبیهساز جاسازیشده در «پنجره کنترلهای گسترده»
- [رفع اشکال] مشکل شماره ۱۸۳۱۳۹۲۰۷: مشکلات صوتی مرتبط با فعال شدن میکروفون توسط «شبیهساز»
- [رفع اشکال] مشکل شماره ۲۲۹۷۶۴۰۲۴: اشکال لمس چسبنده AVD که منجر به مشکلات رفتار واسط کاربر میشود
- [رفع اشکال] خطای راهاندازی API 33 AVD در Mac M1.
- [رفع اشکال] مشکل شماره ۲۴۳۰۵۳۴۷۹: سرعت پایین شبکه پساز بهروزرسانی «شبیهساز»
- [رفع اشکال] مشکل شماره ۲۴۴۶۱۷۶۲۷: مکان Maps در Windows و Linux کار نمیکند
- [رفع اشکال] مشکل شماره ۲۳۲۹۷۱۷۹۶: دکمه «تماس با دستگاه» در صفحه «کنترلهای گسترده > تلفن» کار نمیکند
- بهروزرسانی «شبیهساز Android» به minigbm
- انتقال دستورگانهای ساخت به Python3
۳۱.۳.۱۰ (۱۸ اوت ۲۰۲۲)
با Android Studio Dolphin Beta 5 و Electric Eel Canary 9 آزمایش شده است.
بارگیریهای مستقل شبیهساز اکنون دردسترس است. اگر با این نسخه پایدار جدید با مشکل یا خرابی مواجه شدید، لطفاً گزارش اشکال ثبت کنید و نسخه قبلی که کار میکرده است را از بایگانی بارگیری شبیهساز بارگیری کنید.
این بهروزرسانی شامل بهبودها و اصلاحات زیر است:
- پشتیبانی بهتر از مسیر یونیکد در Windows
- مدیریت بهتر خاموش شدن شبیهساز بهطوریکه راهاندازی مجدد همان AVD بتواند موفقیتآمیز باشد.
- طراحی AVD تاشو و تنظیمات پیشفرض بهروز شد
- دکمههای شبیهساز Wear بهروزرسانی شد
- بهبودهای جاریسازی صوتی gRPC
- فرمان کنسول شبیهساز تغییرپذیر اضافه شد
- رفع اشکال Chrome برای API 31
- [رفع اشکال] اصالتسنجی «حساب Google» با GmsCore نسخه ۲۱.۴۲.۱۸ ناموفق بود
۳۱.۲.۱۰ (۲۰ آوریل ۲۰۲۲)
با Android Studio Dolphin Canary 8 و Chipmunk RC 1 آزمایش شده است.
این بهروزرسانی شامل بهبودها و اصلاحات زیر است:
- افزودن ابزار برای بار کردن توابع Vulkan با بازگشت
- [رفع اشکال] رفع خطای ساخت gcc8
۳۱.۲.۹ (۲۳ مارس ۲۰۲۲)
با Android Studio Dolphin Canary 7 آزمایش شده است.
این بهروزرسانی شامل رفع اشکال زیر است:
- [رفع اشکال] هنگام ذخیره کردن تصویر کلی در M1، فشار حافظه نادیده گرفته میشود
۳۱.۲.۸ (۷ فوریه ۲۰۲۲)
با Android Studio Bumblebee Patch 1 و Chipmunk Canary 6 آزمایش شده است.
این بهروزرسانی شامل بهبودها و اصلاحات زیر است:
- [رفع اشکال] ورود به سیستم برنامهها امکانپذیر نیست
- [رفع اشکال] مسئله شماره ۲۱۵۳۶۸۳۵۸: «adb reboot» در پلاتفرم Intel باعث ازکارافتادن avd با «vcpu shutdown request» میشود
۳۱.۲.۷ (۱ فوریه ۲۰۲۲)
با Android Studio Bumblebee Patch 1 و Chipmunk Canary 6 آزمایش شده است.
این بهروزرسانی شامل رفع اشکال زیر است:
- [رفع اشکال] خطای هنگ کردن شبیهساز در ماشینهای M1.
۳۱.۲.۶ (۲۰ ژانویه ۲۰۲۲)
با Android Studio Arctic Fox، Bumblebee Beta 4، و Chipmunk Canary 6 آزمایش شده است.
این بهروزرسانی شامل بهبودها و اصلاحات زیر است:
- دکمههای پوشیدنی به شبیهساز Wear OS اضافه شد.
- همه داراییهای خودرو در برگه VHAL قابلویرایش شد.
- [رفع اشکال] «احراز هویت حساب Google» با GmsCore نسخه ۲۱.۴۲.۱۸ ناموفق بود.
- [رفع اشکال] Netshaper با VirtioWifi خوب کار نمیکرد.
- [رفع اشکال] فرمان کنسول موشواره رویداد کار نمیکرد.
- بررسی KVM برای ایجاد AVD محلی اضافه شد.
۳۱.۱.۳ (۱۸ ژانویه ۲۰۲۲)
این بهروزرسانی شامل بهبودها و اصلاحات زیر است:
- درگاههای کنسول برای Fuchsia فعال شد.
- هنگام تغییر اندازه پنجره چندنمایشی، جهتگیری نادیده گرفته میشود.
- Wi-Fi: پشتیبانی از فیلتر کردن بستههای تکفرستی براساس نشانی MAT mac اضافه شد.
- Wi-Fi: خرابی هنگام استفاده از vmnet برطرف شد.
۳۰.۹.۵ (۱۵ دسامبر ۲۰۲۱)
این بهروزرسانی شامل بهبودها و اصلاحات زیر است:
- امکان تغییر آسان اندازه به پنجرهای به اندازه رایانه یا رایانه لوحی اضافه شد.
- پشتیبانی از ورودی چندلمسی از دستگاههای میزبان سازگار اضافه شد.
- VirtioWifi: پشتیبانی از شبکه tap اضافه شد.
- «ورودی چرخشی» برای «تصاویر سیستم Wear» فعال شد.
- مشکل پیکربندی صدای gRPC برطرف شد.
- «بازپخش شبیهساز SensorReplay» بهروزرسانی شد تا از حسگرهای استاندارد Android پشتیبانی کند.
- شبیهساز را بااستفاده از USB با عبور USB به لوازم جانبی و دستگاهها متصل کرد.
۳۰.۴.۵ (۲۳ فوریه ۲۰۲۱)
این بهروزرسانی شامل بهبودها و اصلاحات زیر است:
- macOS: مشکلات مربوط به تحریف ورودی صوتی برطرف شد.
- پشتیبانی از virtio-vsock در فضای کاربر اضافه شد.
- تصاویر سیستم آینده از virtio-console برای logcat و پیامهای هسته استفاده خواهند کرد.
- پرداز کردن Vulkan را تسریع کنید.
- پشتیبانی از اشکالزدایی لحظهای درصورت عدم موفقیت در آزمایش اضافه شد.
- virtio-gpu: تعریفها بهروز شد تا از جدیدترین شمارشهای منبع لکه پشتیبانی کند.
- پشتیبانی از تصویر فوری برای انتقال گرافیک نوع «asg» اضافه شد.
- macOS: پشتیبانی از ساختن دربرابر macOS SDK نسخه ۱۱.۱ و بالاتر اضافه شد.
- KVMclock بهطور پیشفرض در تصاویر سیستم جدیدتر فعال است.
- پشتیبانی از حسگر ضربان قلب به شبیهسازهای Wear اضافه شد.
- پشتیبان libportability Vulkan برداشته شد.
- پشتیبانی از ویژگیهای بیشتر در شبیهساز مودم اضافه شد.
۳۰.۰.۲۶ (۱۶ اوت ۲۰۲۰)
این بهروزرسانی شامل چندین ویژگی جدید، بهبود ویژگیهای موجود، و رفع اشکالات است.
پشتیبانی از دستگاههای تاشو با حسگر لولای مجازی و نمای سهبعدی
پشتیبانی از حسگرهای لولا برای دستگاههای تاشو اضافه شد. این کار به تصویر سیستم 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.iniاکنونhw.sensor.hinge.sub_type = hinge/foldدردسترس است. برای خواندن بیشتر، به پست وبلاگ توسعه برای Android 11 با «شبیهساز Android» مراجعه کنید.حسگر لولا اکنون بهطور پیشفرض فعال است.
اگر دستگاه تاشو پیکربندی شده باشد، شبیهساز اکنون بهروزرسانیهای حسگر زاویه لولا و تغییرات وضعیت را به مهمان ارسال میکند. دستگاههای تاشو موجود اکنون وقتی دکمههای تاشدن یا بازشدن نوارابزار فشرده میشوند، زاویه حسگر لولا و وضعیت را بهروزرسانی میکنند.

شبیهساز برای میزبانهای ARM64
کد منبع شبیهساز Linux اکنون از ترجمه متقابل از x86_64 به arm64 میزبان پشتیبانی میکند و امکان اجرای تصاویر سیستم arm64 با مجازیسازی KVM را فراهم میکند. درحالحاضر، فقط
-gpu swiftshader_indirect(پردازش میزبان Swiftshader arm64) پشتیبانی میشود، اما با جایگزین کردن کتابخانههای libEGL/libGLESv2 مجموعه سازگار GPU میزبان با lib64/gles_swiftshader و سپس راهاندازی مجدد با-gpu swiftshader_indirect، میتوان از این کتابخانهها نیز استفاده کرد. همچنین ممکن است «نماگرفتها» کار نکند (-no-snapshotرا به خط فرمان اضافه کنید). دستورالعملها:mkdir emu cd emu repo init -u https://android.googlesource.com/platform/manifest -b emu-master-dev --depth=1 repo sync -qcj 12 cd external/qemu pip install absl-py pip install urlfetch sudo apt-get install crossbuild-essential-arm64 python android/build/python/cmake.py --noqtwebengine --noshowprefixforinfo --target linux_aarch64پشتیبانی از Apple Silicon درحال انجام است.
پشتیبانی virtio-gpu
- پشتیبانی در سمت میزبان برای منابع blob منسجم میزبان virtio-gpu آینده اضافه شد.
- بهدلیل نحوه عملکرد پردازش شبیهساز، اکنون virtqueue مربوط به virtio-gpu را در رشته vcpu پردازش میکنیم (زیرا پردازش بههرحال به رشتههای دیگر واگذار میشود). پردازش virtio-gpu در نسخه آینده تصویر سیستم و شبیهساز فعال خواهد شد.
- در تصویر سیستم آینده، شبیهساز میتواند همه گرافیکها را با پشته مبتنی بر virtio-gpu اجرا کند.
ویژگیهای جدید و بهبودهای دیگر
- گذرگاه USB اکنون در Windows بااستفاده از
-qemu -usb -device usb-host,vendorid=<usb-vendor-id>,productid=<usb-product-id>دردسترس است. (این ویژگی باید ازقبل در Linux و macOS کار میکرده است) - کتابخانههای WebRTC به M83 بهروزرسانی شد.
- اکنون شبیهساز از جاریسازی صوتی در محتویات ازطریق WebRTC پشتیبانی میکند.
- نقطه پایانی لوله darwinn برداشته شده است.
- رمزگشایی CUDA VPx برای ویدیو اکنون دردسترس است، اگر رمزگشایی CUDA VPx در سختافزار دردسترس باشد، ازطریق متغیر محیطی
ANDROID_EMU_MEDIA_DECODER_CUDA_VPX=1. - در macOS، اکنون SSE 4.1 و 4.2 از داخل مهمان Android دردسترس است.
- در macOS، INVTSC اکنون بهطور پیشفرض فعال است. این کار میتواند دقت اندازهگیریهای زمان مهمان را بهبود دهد.
- اکنون در سنجهها پیگیری میکنیم که کاربر کدام پانل کنترل گسترده را انتخاب کرده است.
- اکنون شبیهساز Linux وقتی نسخه هسته مهمان >= 5.4 باشد (تصاویر سیستم R یا جدیدتر)، از ساعت مجازیسازی موازی KVM استفاده میکند.
- اکنون «شبیهساز» از 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>
برای آسانتر کردن ذخیره فضای عمودی صفحهنمایش، گزینهای برای پنهان کردن قاب دستگاه برای AVD فعلی در کنترلهای گسترده > تنظیمات اضافه کردهایم. برای پنهان کردن سراسری قابهای دستگاه برای همه AVDها، پرچم ویژگی
NoDeviceFrameرا دردسترس قرار دادهایم که میتوان آن را ازطریق راهاندازی شبیهساز از خط فرمان با قاب-feature NoDeviceفعال کرد، یا برای قفل کردن آن،NoDeviceFrame = onرا به~/.android/advancedFeatures.iniاضافه کرد (اگر این فایل ازقبل وجود ندارد، آن را ایجاد کنید).مورد کرکرهای در صفحه تلفن همراه اضافه شد تا پشتیبانی از اندازهگیری روشن و خاموش شود، این مورد برای تصاویر سیستم قدیمیتر که از کلید اندازهگیری 5G پشتیبانی نمیکنند، بدون عملکرد است.
- فرمان کنسول نیز برای همین منظور اضافه شد:
gsm meter on|off
- فرمان کنسول نیز برای همین منظور اضافه شد:
زنجیره ابزار / ساختار به C++17 ارتقا یافت.
اصلاحات: شبیهساز جاسازیشده
- اکنون بریدهدان باید کار کند.
- رفع مشکلی که در آن نویسههای حروف بزرگ در شبیهساز بهصورت نویسههای حروف کوچک ارائه میشد.
- رفع مشکل بار کردن کد کنسول از مسیر یونیکد در ویندوز.
- پیام خطای
SO_REUSEPORTدر Linux برطرف شد. - مشکل خراب شدن عکس آنی هنگام ارسال دستورات عکس آنی ازطریق gRPC و همچنین هنگام فشار دادن دکمه ذخیره عکس آنی در شبیهساز جاسازیشده Android Studio برطرف شد.
هنگام استفاده از شبیهساز Linux جاسازیشده در «استودیو»، متوجه شدیم که اگر این کار ازطریق «میزکار از دور Chrome» انجام شود، اشکالی وجود دارد که در آن
XDG_RUNTIME_DIRتنظیم نمیشود و ممکن است باعث شود شبیهساز جاسازیشده بهدلیل قرار گرفتن فایلهای شناسایی شبیهساز درXDG_RUNTIME_DIRظاهر نشود. میتوانید وضعیت مشکل مربوطه را در ردیاب مشکل Chrome بررسی کنید.بهعنوان راهکار موقت، شبیهساز اکنون به استفاده از فایلهای شناسایی در دایرکتوری احتمالاً متفاوتی که براساس UID کاربر است برمیگردد:
/run/user/<uid>.شبیهساز جاسازیشده: دستگاههای دارای گوشههای گرد/بریدگی اکنون چیدمان خود را بهدرستی تغییر میدهند تا برای گوشهها و بریدگی جا باز کنند. این کار نیاز به راهاندازی مجدد آن شبیهسازها دارد.
نقطه پایانی gRPC اکنون از ارسال پیامک به دستگاه پشتیبانی میکند.
اصلاحات عمومی
- مشکلات سازگاری در اجرای شبیهساز Windows با Riot Vanguard فعال مشاهده کردهایم. شبیهساز Windows اکنون ضدتقلب Vanguard را شناسایی میکند و اگر 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 کافی نباشد، شبیهساز اکنون دستورالعملهای اشکالزدایی را سریعتر چاپ میکند.
- رفع مشکلی که باعث میشد شبیهساز نتواند تصاویر سیستم جدید را بدون شتابدهنده راهاندازی کند.
- خرابی حافظه یا ازکارافتادگی هنگام شروع از آشکارساز تکمیل بوت برطرف شد.
- مشکل نشت حافظه درطول جلسههای طولانی ضبط صفحه برطرف شد.
- نمادهای شبیهساز بهروز شد تا نشان تجاری «استودیو ۴.۱» را منعکس کند.
- پشتیبانی بهتری برای تشخیص جلسات ازراهدور در 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 میپردازد بهروزرسانی شد.
- اکنون اگر سایهزن انتقال قاببافر پایه کامپایل نشود، شبیهساز را ازکار میاندازیم تا بتوانیم این پدیده را پیگیری کنیم.
- ترجمان سایهزن ANGLE بهروزرسانی شد تا با ANGLE بالادستی همگام شود. این نسخه مشکل مربوط به خراب شدن حافظه هنگام ترجمه و ثابتتا کردن سایهزنهای OpenGL ES را که از ماتریسهای غیرمربعی استفاده میکردند برطرف میکند. اکنون مترجم سایهزن یک کتابخانه
همرسانیشده جداگانه است،
libshadertranslator.dll. - مشکلی در مقداردهی اولیه Vulkan در برخیاز درایورهای GPU برطرف شد که در آن برخیاز عملکردهای دستگاه 1.1 پیدا نمیشد.
- Vulkan: به استفاده از بارکننده پیشساخته برگشتیم زیرا استفاده از بارکننده Vulkan سیستم در برخیاز تنظیمات مشکل ایجاد میکرد؛ راهکار بهتری پیدا خواهیم کرد.
- رفع مشکل هنگام استفاده از حافظه خارجی Vulkan که در آن ممکن بود شاخصهای نوع حافظه نامنطبق در میزبان وارد شود.
- مشکل شبیهسازی
GL_ALIASED_POINT_SIZE_RANGEکه در آن شمارش در میزبان پشتیبانی نمیشد برطرف شد. - مشکلی برطرف شد که در آن، در برخیاز GPUهای میزبان، سایهزنهای 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دوباره فعال کرد.
۳۰.۰.۱۰ (۳۰ آوریل ۲۰۲۰)
این بهروزرسانی شامل پشتیبانی از اجرای مستقیم شبیهساز در Android Studio و دستگاههای مجازی با «حالت پنجره قالب آزاد» است که بهطور پیشفرض فعال است.
اجرا کردن «شبیهساز» در «استودیو Android»
اکنون میتوان «شبیهساز Android» را مستقیماً در «استودیو Android» اجرا کرد. از این ویژگی برای صرفهجویی در فضای صفحهنمایش، پیمایش سریع بین شبیهساز و پنجره ویرایشگر بااستفاده از کلیدهای میانبر، و سازماندهی گردش کار شبیهساز و IDE در یک پنجره برنامه استفاده کنید.
حالت پنجره قالب آزاد
اکنون میتوانید با انتخاب کردن نمایه سختافزاری رایانه لوحی «آزاد» ۱۳٫۵ اینچی هنگام ایجاد دستگاه مجازی در «استودیو Android»، «دستگاه مجازی Android» با «حالت پنجره آزاد» فعال ایجاد کنید. این نمایه سختافزاری به تصویر سیستم با Android 11 Developer Preview 3 یا بالاتر نیاز دارد.
مشکلات شناختهشده
درحالحاضر بهدلیل مشکلاتی در انتقال تمرکز به «مدیر پنجره»، تغییر اندازه پنجرههای قالب آزاد کار نمیکند. این مشکل در نسخهٔ پخش بعدی تصویر سیستم Android 11 برطرف خواهد شد.
۳۰.۰.۰ (۱۹ فوریه ۲۰۲۰)
این بهروزرسانی شامل تصاویر سیستم Android 11 (سطح میانای برنامهسازی کاربردی ۳۰) و عملکرد بهبودیافته هنگام اجرای فایلهای اجرایی ARM است.
تصاویر سیستم Android 11
اکنون میتوانید با انتخاب یکی از تصاویر سیستم سطح API 30 موجود، «دستگاه مجازی Android» بسازید که Android 11 را اجرا میکند:
- x86: شامل هر دو ABI x86 و ARMv7 است.
- x86_64: شامل رابطهای دودویی نرمافزار x86، x86_64، ARMv7، و ARM64 است.
پشتیبانی از فایلهای اجرایی ARM در تصاویر سیستم Android 9 و 11
اگر قبلاً بهدلیل اینکه برنامهتان به باینریهای ARM وابسته بود نمیتوانستید از «شبیهساز Android» استفاده کنید، اکنون میتوانید از تصویر سیستم 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 (لینوکس) مراجعه کنید.
- اکنون شبیهساز شامل ساخت بدون سر برای مهمانان ۳۲ بیتی x86
(
qemu-system-i386) است. این ویژگی تصاویر ۳۲ بیتی x86 را برای سطوح API 26 و پایینتر فعال میکند تا با ساخت بدون سر اجرا شوند. توجه داشته باشید که برای مهمانان ۳۲ بیتی x86 با API 27 و نسخههای جدیدتر، شبیهساز از موتور ۶۴ بیتی (qemu-system-x86_64) استفاده میکند زیرا در این تصاویر سیستم، اگرچه فضای کاربر ۳۲ بیتی است، هسته ۶۴ بیتی است. «استودیو Android» از هسته برای انتخاب موتورهای شبیهسازی استفاده میکند. - اکنون میتوانید مسیرهای کتابخانه Qt سفارشی را بااستفاده از
ANDROID_QT_LIB_PATHمتغیر محیط مشخص کنید. - اکنون میتوانید شبیهساز را با باینریهای قبلی که از QEMU1 استفاده میکنند اجرا کنید، بهشرطی که فایلهای اجرایی QEMU1 (
emulator[64]-[x86|arm|etc]) در دایرکتوری شبیهساز قرار داده شده باشند. - Windows: مشکلی که گاهی اوقات باعث میشد شبیهساز با پیام «درخواست خاموش کردن vCPU» شروع نشود برطرف شد.
- مشکل مربوط به مانع خط لوله غیرضروری در بافتهای فشرده شبیهسازیشده در Vulkan رفع شد.
- خطایی که در درخواستهای پراکسی http هنگام استفاده از کدبندی انتقال تکهتکه رخ میداد برطرف شد. برای اطلاعات بیشتر، جزئیات تعهد را ببینید.
۲۹.۰.۹ (۷ مه ۲۰۱۹)
این بهروزرسانی شامل رفع اشکال زیر است:
- Windows: مشکلی که باعث میشد دوربین صحنه مجازی و وبکم در شبیهساز کار نکند برطرف شد.
۲۹.۰.۸ (۶ مه ۲۰۱۹)
این بهروزرسانی شامل بهبودها و اصلاحات زیر است:
- وقتی سرویس مهمان برای فهرست کردن و تنظیم هر نمایشگر وجود دارد، پشتیبانی از چند نمایشگر سختافزاری مجازی اضافه شد. چندین نمایشگر سختافزار مجازی در بهروزرسانی آتی تصویر سیستم شبیهساز گنجانده خواهد شد.
- گزینه خط فرمان جدیدی اضافه شد:
-delay-adb. این گزینه پردازش بستههای ADB را تا زمانی که مهمان راهاندازی را تکمیل کند (از راهاندازی سرد) متوقف میکند. این گزینه به حل مشکلاتی که ممکن است درصورت استفاده از شبیهساز در محیط CI که شبیهساز را بازراهاندازی میکند و بهطور همزمان از DDMS استفاده میکند، کمک میکند. - خطایی که هنگام بار شدن نماهای فوری رخ میداد و در آن
glIsRenderbufferمقدار نادرستی برمیگرداند رفع شد. - برخیاز مشکلات مربوط به وضعیت قدیمی هنگام بازراهاندازی مهمان Android برطرف شد.
- Windows: مشکلاتی که مانع از شروع شبیهساز میشد وقتی نام کاربری Windows نویسههای غیرASCII یا فاصله داشت برطرف شد.
مشکلات شناختهشده
- «میانای کاربری» «نماگرفتها» برای تصاویر سیستم «خودرو» غیرفعال است زیرا درحالحاضر از نماگرفتها برای این تصاویر سیستم پشتیبانی نمیشود.
۲۹.۰.۶ (۱ مه ۲۰۱۹)
این بهروزرسانی شامل چندین ویژگی جدید، بهبود ویژگیهای موجود، و رفع اشکالات است.
برداشتن QEMU1 و پشتیبانی از Windows ۳۲ بیتی
برای حفظ بهتر شبیهساز، دیگر QEMU1 و باینریهای Windows ۳۲بیتی را ارائه نمیدهیم. اگر از Windows 32-bit استفاده میکنید، نمیتوانید به نسخه ۲۹.۰.۶ ارتقا دهید.
الزامات تصاویر سیستم Android Q
اگر میخواهید «دستگاه مجازی Android» را اجرا کنید که از تصویر سیستم Android Q استفاده میکند، اکنون باید از نسخه ۲۹.۰.۶ (این نسخه پخش) یا بالاتر استفاده کنید.
بهبودهای Project Marble
این بهروزرسانی کار ما را در زمینه ابتکار پروژه Marble که در نشست توسعهدهندگان Android در نوامبر ۲۰۱۸ اعلام شد ادامه میدهد. برای اطلاعات بیشتر درباره بهبودهای دیگر Project Marble در نسخههای قبلی، شبیهساز Android: بهبودهای Project Marble را ببینید.
برای این بهروزرسانی، بیشتر تلاشهای ما در «پروژه Marble» به کاهش مصرف منابع شبیهساز اختصاص داده شد، مثلاً کاهش مصرف واحد پردازش مرکزی شبیهساز در حالت بیکاری. همچنین تغییراتی را اضافه کردهایم که کار با شبیهساز را در محیطهای متنوعتر آسانتر میکند و مشکلات کیفیت عمومی را برطرف کردهایم.
بخشهای زیر بهبودهای «پروژه Marble» را که در این بهروزرسانی گنجانده شده است شرح میدهد:
بهبودهایی برای عملکرد صوتی میزبان
از نسخه ۲۸.۰.۳، شبیهساز بهطور پیشفرض ورودی صدا را از میزبان مسدود میکند
اگر میخواهید از دادههای صوتی میزبان استفاده کنید، میتوانید با رفتن به کنترلهای گسترده > میکروفون و فعال کردن میکروفون مجازی از ورودی صوتی میزبان استفاده میکند، این گزینه را فعال کنید. هرزمان شبیهساز بازراهاندازی شود، این گزینه بهطور خودکار غیرفعال میشود.
اگر از خط فرمان استفاده میکنید، میتوانید صدای میزبان را بااستفاده از گزینه
-allow-host-audio نیز فعال کنید، و میتوانید از فرمانهای ADB زیر برای روشن یا خاموش کردن دادههای صدای میزبان استفاده کنید:
adb emu avd hostmiconadb emu avd hostmicoff
بهبودهایی برای ساخت شبیهساز بدون سر
از نسخه 28.0.25، شبیهساز شامل گزینه ساخت بدون سر است که میتواند بدون رابط کاربری اجرا شود. میتوانید از ساختهای بدون سر استفاده کنید تا به شما در راهاندازی شبیهساز برای گردشهای کار Docker و یکپارچهسازی مداوم (CI) کمک کند.
با این بهروزرسانی، بهبودهای بیشتری ایجاد کردهایم تا شبیهساز بتواند با حداقل تعداد وابستگیها اجرا شود. در Linux، ساختهای بدون سر دیگر شامل کتابخانههای pulseaudio یا libX11 نمیشود. کتابخانههای مشترک وابسته به سیستم که همراه با شبیهساز بستهبندی نشدهاند به فهرست زیر کاهش یافته است:
Linux-vdso.so.1Libutil.so.1Libm.so.6Libdl.so.2Librt.so.1Libpthread.so.0Libgcc_s.so.1Libc.so.6ld-linux-x86-64.so.2
کتابخانههای میانای کاربر Qt به نسخه 5.12 LTS ارتقا یافت
این بهروزرسانی شامل بهبودهای زیر از نسخه Qt 5.12 LTS است:
- برای جلوگیری از خرابی در
libpngکدبندی Qt هنگام شروع برخیاز تصاویر سیستم، شبیهساز اکنون از نسخه خودlibpngبرای کدبندی تصاویر PNG استفاده میکند. - برای رفع مشکلات مربوط به برخیاز نصبهای Linux که حاوی نسخههای ناسازگار برخیاز کتابخانههای وابسته Qt هستند، اکنون
libfreetype،libsoftokn،libsqlite3، وlibxkbcommonرا با شبیهساز بستهبندی میکنیم. - اکنون شبیهساز از کتابخانههای پنجرهبندی بومی پلاتفرم برای دریافت ابعاد مانیتور استفاده میکند، بهجای اینکه از کتابخانههای Qt استفاده کند که نتایج غیرقابلاعتمادی برمیگرداند.
بهینهسازی خودکار واحد پردازش مرکزی پساز راهاندازی سرد
برای رسیدگی به استفاده از 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 لغو میکند، که وقتی برنامه جستجوی Google فعال است، استفاده از CPU در پسزمینه را در صفحه اصلی و در راهانداز بهمیزان زیادی کاهش میدهد.
- این فرمان علاوهبر رفتار پیشفرض شبیهساز مبنی بر غیرفعال کردن صدای میزبان برای میزبان اجرا میشود. علاوهبراین، این ویژگی بهطور خودکار کاهش استفاده از واحد پردازش مرکزی را که برای تشخیص کلمه کلیدی در نسخه ۲۸.۰.۲۳ توضیح داده شده است ارائه میدهد.
متغیرهای محیطی جدید برای پایش عملکرد
اکنون میتوانید از دو متغیر محیطی جدید برای فعال کردن پایش دقیق عملکرد شبیهساز و استفاده از منابع استفاده کنید.
SHOW_PERF_STATS=1- این متغیر محیطی ردیابی استفاده از واحد پردازش مرکزی و حافظه دسترسی تصادفی را فعال میکند. ردیابی برای استفاده از RAM بین استفاده از گرافیک و حافظه مقیم کل تمایز قائل میشود.
ANDROID_EMU_TRACING=1- این متغیر محیطی امکان چاپ را هر بار که عملیات ورودی یا گرافیک زمان زیادی طول میکشد (بیشتر از ۱ میلیثانیه) فراهم میکند.
- همچنین از این متغیر محیطی برای کمک به تشخیص مشکلات کاربران Windows که نسبتبه کاربران macOS یا Linux با لرزش (افت فریم) بیشتری مواجه میشوند استفاده میکنیم.
بهبودهای کلی Project Marble
این بهروزرسانی همچنین شامل بهبودهای کلی زیر است که بخشی از طرح ابتکاری Project Marble است:
- اکنون میتوانید همه vCPUها را در شبیهساز ازطریق فرمانهای کنسول زیر فوراً موقتاً متوقف کنید:
adb emu avd pauseadb emu avd resume
- سربار طراحی OpenGL بهشدت کاهش یافته است. این بهبود باعث کاهش استفاده از واحد پردازش مرکزی درطول پخش پویانماییها توسط شبیهساز میشود.
- پشتیبانی از دستگاه شبکه مجازی e1000 در QEMU اصلی بازگردانده شد. میتوانید از این دستگاه برای راهاندازی شبیهساز در محیط شبکه پلسازیشده استفاده کنید. در محیط شبکه پلسازیشده، شبیهساز در شبکه میزبان و شبکه میزبان در شبیهساز نشان داده میشود.
- اکنون از باینریهای BIOS مناسب QEMU 2.12 برای راهاندازی شبیهساز استفاده میشود.
- نسخه
ffmpegبرای کدبندی و رمزگشایی ویدیو به ۳.۴.۵ ارتقا یافت. - با جایگزین کردن حلقه اصلی مبتنی بر
select()با حلقه اصلی مبتنی برkqueue، سربار ورودی/خروجی حلقه اصلی QEMU در macOS بهطور چشمگیری کاهش یافت. - اندازه میانگیر Logcat به ۲ مگابایت افزایش یافت تا مشکلات مربوط به EOF غیرمنتظره و ناپایدار هنگام اجرای Logcat با شبیهساز برطرف شود.
- اکنون شبیهساز متغیر محیطی
LC_ALL=Cرا بهطور پیشفرض صادر میکند. این تغییر به مشکلات ازکارافتادن و ناسازگاری مرتبط با اجرای شبیهساز در منطقههای مختلف میپردازد. - اکنون میتوانید بااستفاده از آمار عملکرد که در کنترلهای توسعهیافته > تنظیمات > پیشرفته > آمار عملکرد دردسترس است، میزان استفاده از CPU و RAM شبیهساز را پیگیری کنید. از این آمارها برای تشخیص سریع مشکلات درصورتیکه شبیهساز بهنظر میرسد از CPU یا RAM بیشازحد استفاده میکند استفاده کنید.
-
glReadPixels GL_IMPLEMENTATION_COLOR_READ_TYPEاکنون بهجای نتیجه شبیهسازیشده از نتیجه GPU میزبان استفاده میکند. این تغییر به رفع مشکلاتی کمک میکند که در آنها تصاویر و داراییها بهدلیل قالب نامناسب برای خواندن برگرد نمایش داده نمیشوند. - اگر میزبان از افزونههای OpenGL ES
GL_EXT_texture_format_BGRA8888وGL_APPLE_texture_format_BGRA8888پشتیبانی کند، پشتیبانی از این افزونهها اضافه میشود. - اطلاعات تشخیصی بیشتری به «میانای کاربری گزارش اشکال» اضافه شد. علاوهبراین، میتوانید بااستفاده از دستورات زیر به گزارشهای اشکال از کنسول دسترسی پیدا کنید:
telnet localhost 5554avd bugreport
- در تصاویر سیستم Android Q، شبیهساز حداقل اندازه حافظه دسترسی تصادفی خود را به ۲ گیگابایت افزایش میدهد.
- هرگاه OpenGL یا hypervisor در مقداردهی اولیه ناموفق باشد، گزارشگیری و چاپ بیشتری اضافه میشود.
- اگر شبیهساز نتواند نمونه
-read-onlyهمزمان AVD را شروع کند، شبیهساز اکنون تلاش میکند تا AVD-read-onlyرا ۳ بار دیگر درطول ۳ ثانیه بازراهاندازی کند. این تغییر احتمال اینکه شبیهساز بتواند درصورتیکه نمونههای نوشتنی دیگر آن AVD پاکسازی فایلهای قدیمی را انجام نداده باشند، نمونههای-read-onlyهمزمان AVD را راهاندازی کند افزایش میدهد. - برای تصاویر سیستم آینده، شبیهساز اکنون از Hardware Composer 2.0 پشتیبانی میکند. این تغییر باید سربار درایور را هنگام اجرای اکثر پویانماییها کاهش دهد.
- ساخت شبیهساز اکنون براساس CMake/Ninja است.
- در رابط کاربری کنترلهای گسترده شبیهساز، خطوط جداکننده در جدول میانبرهای صفحهکلید بازیابی شده است.
- اکنون کاربران میتوانند موافقت کنند که معیارهای استفاده از CPU و RAM را در بازههای ۱۰ ثانیهای دراختیار تیم ما قرار دهند. ما از این سنجهها برای غنیسازی دادههایمان درباره استفاده از منابع شبیهساز با موارد استفاده مختلف از کاربرانمان استفاده میکنیم که به ما امکان میدهد شبیهساز را کارآمدتر و واکنشگرتر کنیم.
رفع اشکالات عمومی Project Marble
این بهروزرسانی همچنین شامل اصلاحات کلی زیر است که بخشی از ابتکار عمل Project Marble است:
- مشکلات مربوط به لرزش و قابهای نادرست که در سیستمهای دارای GPUهای Intel هنگام استفاده از تصاویر سیستم Android Q نمایش داده میشدند رفع شد.
- مشکلاتی که در آنها هنگام استفاده از تصاویر سیستم Android Q با پوستههای Pixel 2 XL (یا هر پوستهای که دارای بریدگی یا گوشههای گرد است) صفحهنمایش سیاه نمایش داده میشد برطرف شد.
- رفع مشکلی که باعث میشد گزینه خط فرمان
-partition-sizeاندازه پارتیشن داده را تنظیم نکند. - رفع مشکلی که در آن pulseaudio در شبیهساز Linx میچرخید و در برخیاز شرایط کل هسته CPU را اشغال میکرد.
- مشکلات مربوط به دسترسی به حافظه خارج از محدوده هنگام پردازش بافتهای فشرده برطرف شد.
- خطاهای GL که در میزبان در
glTexSubImage2Dهنگام بهروزرسانی برخیاز بافرهای gralloc (با قالب RGB 565، RGB10A2، RGB(A)16F) رخ میداد برطرف شد. - مشکل نمایش در تصاویر سیستم Android Q با نماگرفتهایی که در آنها هندسه سایه اعلان با تنظیم تقسیمکننده نمونه نادرست پرداز شده بود برطرف شد.
- چندین مشکل خرابی و فریز شدن که بازتولید آنها در زمان راهاندازی دشوار بود و بهدلیل ازدست رفتن سیگنالهای Qt یا داشتن وضعیتهای ناپایدار و ناسازگار در زمان راهاندازی رخ میداد رفع شد.
- مشکلات همزمانسازی متعددی رفع شد. اکنون میتوانیم شبیهساز Linux را با ThreadSanitizer (TSAN) بسازیم که میتواند بهراحتی اشکالاتی را که درغیراینصورت بازتولید آنها دشوار است آشکار کند.
- برای کاربران Linux: متوجه شدهایم که در برخیاز هستههای میزبان، هسته مهمان Android
میتواند در KVM با خطای سختافزاری عمومی دچار خطا شود و از آن خارج شود. اکنون شبیهساز
وقتی این اتفاق میافتد
abort()میکند تا قابلیت اشکالزدایی را افزایش دهد (قبلاً شبیهساز فقط معلق میشد). - برای کاربران Linux: برای راحتی در تنظیمات CI، میتوانید از گزینه خط فرمان جدید
-stdouterr-file <file-name>برای هدایت هر دوstdoutوstderrبه یک فایل استفاده کنید. - مشکلی که باعث میشد
SO_REUSEADDRبهدرستی استفاده نشود برطرف شد. برای اطلاعات بیشتر، جزئیات تعهد را ببینید. - مشکل قدیمی شبیهساز Windows که در آن فرایندهای فرعی، مثل دستورات ADB، درصورتیکه نام کاربری فاصله داشته باشد شروع نمیشد برطرف شد.
- مشکل مقداردهی اولیه نشدن RCU در رشتههای vCPU در HAXM برطرف شد. این اصلاح احتمالاً میتواند برخیاز خرابیها و شرایط مسابقه را برطرف کند.
- خرابیای که در الگوهای خاصی از ذخیره و بار کردن نماگرفتها از میانای کاربری نماگرفتها بااستفاده از تصاویر سیستم Android Q اخیر رخ میداد برطرف شد.
- رفع مشکلی که باعث میشد وقتی شبیهساز از یک لحظهعکس اولیه میشد و یک کلاندستور واقعیت افزوده در زمان ذخیره آن لحظهعکس درحال پخش بود، دوربین صحنه مجازی خالی باشد.
- مشکلی برطرف شد که در آن برخیاز کاربران با تنظیمات میز کار از دور هنگام راهاندازی شبیهساز در Linux صفحهنمایش سیاه دریافت میکردند. برای جلوگیری از این اتفاق، شبیهساز اکنون
MESA_RGB_VISUALرا بهطور صریح پیکربندی میکند. برای اطلاعات بیشتر، جزئیات تعهد را ببینید. - مشکلی که در آن دکمههای چرخش در AVDهای تلویزیون ظاهر میشدند برطرف شد.
- مشکلی برطرف شد که در آن اگر شبیهساز روی همیشه در بالا تنظیم شده بود، پنجره کنترلهای گسترده هر بار که شبیهساز چرخانده میشد ظاهر میشد.
نمایههای سختافزاری برای دستگاههای تاشو
اکنون شبیهساز شامل نمایههای سختافزاری برای دستگاههای تاشو است. برای استفاده از این نمایههای سختافزاری جدید، باید از Android Studio 3.5 Canary 10 یا بالاتر استفاده کنید.
دو نمایه سختافزاری تاشو وجود دارد که میتوانید از آنها برای ایجاد AVD استفاده کنید:
- ۷٫۳ اینچی تاشو: ۱۵۳۶x۲۱۵۲ باز، ۴٫۶ اینچی ۸۴۰x۱۹۶۰ تاشده
- دستگاه تاشو ۸ اینچی: ۲۲۰۰x۲۴۸۰ در حالت باز، ۶٫۶ اینچی ۱۴۸۰x۲۴۸۰ در حالت بسته
وقتی شبیهساز را بااستفاده از یکی از این نمایههای سختافزاری اجرا میکنید، میتوانید دستگاه را بااستفاده از کنشهای تا کردن و باز کردن در نوارابزار شبیهساز، فرمانهای کنسول، یا میانبرهای صفحهکلید زیر تا کنید و باز کنید:
- تا کردن:
Ctrl + F(Command + Fدر macOS) - ازهم بازکردن:
Ctrl + U(Command + Uدر macOS)
ماکروهای واقعیت افزوده
شبیهساز اکنون شامل کلاندستورهای واقعیت افزوده است که میتواند به شما در آزمایش کنشهای واقعیت افزوده رایج کمک کند. برای مثال، میتوانید از یک کلاندستور برای بازنشانی همه حسگرهای دستگاه به حالت پیشفرض استفاده کنید.
برای اطلاعات بیشتر، آزمایش کنشهای رایج واقعیت افزوده با کلانها را ببینید.
پشتیبانی از Vulkan (ویندوز، لینوکس)
کاربران 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
پشتیبانی اولیه برای توسعهدهندگان رام
توسعهدهندگان رام که sdk_phone_x86 یا sdk_phone_x86_64
(userdebug، eng گونه) هدف را در شاخه AOSP master میسازند اکنون میتوانند شبیهساز فعالشده با Vulkan را اجرا کنند.
این پشتیبانی هنوز در مرحله آزمایشی است و عمدتاً برای توسعهدهندگانی است که روی
تصویرهای سیستم، درایورها، و موتورهای بازی کار میکنند. بسیاری از افزونهها هنوز وجود ندارد.
بااینحال، از حافظه HOST_COHERENT پشتیبانی میشود و اکنون باید بتوانید
نمونههای آموزشی «میانای برنامهسازی کاربردی Vulkan» را اجرا کنید.
اگر از Linux استفاده میکنید، میتوانید بااستفاده از فرمانهای زیر این کار را امتحان کنید:
mkdir aosp-mastercd aosp-masterrepo init -u https://android.googlesource.com/platform/manifest -b master --depth=1repo sync -c -j12. build/envsetup.shlunch sdk_phone_x86_64-userdebugmake -j12emulator -no-snapshot -feature Vulkan,GLDirectMem
پرداز Skia با Vulkan
واحدهای پردازش گرافیکی NVIDIA و AMD که از Vulkan پشتیبانی میکنند، از قابلیت تعامل بدون کپی با
OpenGL ازطریق افزونه GL_EXT_memory_objects نیز پشتیبانی میکنند. شبیهساز از این قابلیت برای ارائه روشی کامل برای پردازش رابط کاربری Android بااستفاده از میاناهای برنامهسازی کاربردی Skia Vulkan استفاده میکند.
اگر واحد پردازش گرافیکی NVIDIA یا AMD دارید که از Vulkan پشتیبانی میکند، از دستورات زیر برای آزمایش رندرینگ Skia با تصویر سیستم سازگار (Android Q نسخه بتای ۳ و بالاتر) استفاده کنید:
adb shellsusetprop debug.hwui.renderer skiavkstopstart
پشتیبانی macOS از Vulkan
پشتیبانی از macOS هنوز در مرحله آزمایشی است، اما شبیهساز ازقبل شامل میاناهای برنامهسازی کاربردی Swiftshader، MoltenVK، و libportability (gfx-rs) است. با تنظیم متغیرهای محیط زیر میتوانید این میاناهای برنامهسازی کاربردی را آزمایش کنید:
- Swiftshader:
ANDROID_EMU_VK_ICD=swiftshader - MoltenVK:
ANDROID_EMU_VK_ICD=moltenvk - libportability:
ANDROID_EMU_VK_ICD=portability
مشکلات شناختهشده
گاهی اوقات HAXM نمیتواند حافظه منسجم Vulkan را به مهمان نگاشت کند و شبیهساز را خاموش میکند. این مشکل در بهروزرسانی آتی HAXM برطرف خواهد شد.
شبیهساز جاریسازی gRPC (لینوکس)
ما همواره در تلاشیم تا با امکان ارائه GPU میزبان و تعاملپذیری در گستردهترین طیف زمینههای اجرایی، شبیهساز را تا حد امکان تطبیقپذیر کنیم. کاربران CI و رایانه از دور ما مشکلات قدیمی زیر را دارند:
- ارسال برنامهریزیشده دستورات ورودی به شبیهساز شامل یکی از این موارد میشود: اجرای دستورات پوسته adb که ممکن است سربار بالایی داشته باشد، یا استفاده از کنسول telnet که سریعتر است اما ممکن است با برخی پیکربندیهای شبکه کار نکند.
- کاربران CI اغلب شبیهسازها را بدون سر اجرا میکنند، که میتواند باعث شود متوجه مشکلات نیازمند نمایشگر یا تعامل نشوند.
- کاربران میز کار از دور اغلب نمیتوانند هنگام استفاده از رندرینگ GPU میزبان با شبیهساز تعامل داشته باشند زیرا رندرینگ GPU اغلب به نمایشگرهای غیرمجازی میزبان مرتبط است.
برای رفع این مشکل، اکنون وقتی شبیهساز روی ماشین Linux اجرا میشود، سرویس gRPC ارائه میکند. gRPC چارچوب کلی برای RPC است که ازطریق HTTP کار میکند.
بهطور پیشفرض، سرویس gRPC شبیهساز غیرفعال است، اما میتوانید سرویس را بااستفاده از گزینه خط فرمان زیر فعال کنید، که در آن <port>
درگاهی است که شبیهساز باید درخواستهای gRPC را در آن ارائه دهد (معمولاً 5556):
-grpc <port>
پساز شروع سرویس، فرمانهای gRPC را میتوان از کارخواهان صادر کرد. مجموعه فعلی فرمانها امکان ارسال رویدادهای ورودی و دریافت نماگرفتها را فراهم میکند. این فرمانها به رفع مشکلات زیر کمک میکنند:
- فرمانهای ورودی را میتوان با سربار کم ازطریق HTTP به شبیهساز ارسال کرد. HTTP همچنین امکان ارسال دستورات در پیکربندیهای شبکه اضافی را فراهم میکند.
- فرمانهای نماگرفت را میتوان برای پُرسمان صفحه فعلی ارسال کرد، حتی اگر شبیهساز بدون سر اجرا شود. برای تعاملپذیری، رویدادهای ورودی نیز میتوانند به شبیهساز برگردانده شوند.
- کاربران میز کار از دور میتوانند شبیهساز را بدون سر در نمایشگر اصلی با پردازش شتابدار GPU اجرا کنند و درعینحال از gRPC برای دریافت نماگرفتها و ارسال رویدادهای ورودی برای تعامل با شبیهساز استفاده کنند.
برای فهرست کامل فرمانهای دردسترس، به این protobuf مراجعه کنید.
برای کمک به شما در شروع کار با gRPC، چند کارخواه نمونه ارائه کردهایم که میتوانید به آنها مراجعه کنید.
درحالحاضر، این شامل نمونههای زیر میشود:
- سرویس مبتنی بر Go که میتوان از آن برای پُرسمان وضعیتهای شبیهساز استفاده کرد.
- برنامه React که تعاملپذیری از دور را ازطریق نماگرفت و RPC نشان میدهد. این نمونه به protobuf نسخه ۳.۷.۰ یا بالاتر نیاز دارد.
- نمونهای از Python که پیکربندی ماشین مجازی شبیهساز را پُرسمان میکند و سپس مجموعهای از فرمانها را ارسال میکند.
۲۸.۰.۲۵ (۲۹ مارس ۲۰۱۹)
این بهروزرسانی شامل بهبودها و اصلاحات زیر است:
ساخت شبیهساز بدون سر
راهاندازی شبیهساز با Docker و دیگر گردشهای کار یکپارچهسازی مداوم (CI) بهدلیل انتظارات ضمنی سیستم برای پشتیبانی از Qt بههمراه وابستگیهای کتابخانه مشترک آن (در میان مشکلات دیگر) دشوار بوده است.
بهعنوان اولین گام برای رسیدگی به این مشکل، گونهای از راهانداز شبیهساز با فایلهای اجرایی QEMU معرفی کردهایم که به Qt وابسته نیست. در Linux، هنوز پیوندی به libX11 وجود دارد، اما امیدواریم آن را نیز بهزودی برداریم.
برای استفاده از شبیهساز بدون سر، شبیهساز را مثل همیشه از خط فرمان اجرا کنید،
اما فراخوانی دودویی شبیهساز را با emulator-headless جایگزین کنید. برای اطلاعات بیشتر، بهروزرسانی انتشار 28.1.8 Canary
را ببینید.
- لرزش و نمایش نادرست قاب در واحدهای پردازش گرافیکی Intel هنگام اجرای تصاویر سیستم 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 همکاری خواهیم کرد تا مطمئن شویم تشخیص کلمه کلیدی در تصویر سیستم نیز غیرفعال شود.
برای رسیدگی به این موضوع، تغییرات زیر را اعمال کردهایم:
- دادههای صوتی میزبان واقعی اکنون بهطور پیشفرض سرکوب میشوند. وقتی مهمان از میکروفون استفاده میکند، بهجای صدای میزبان، سکوت منتقل میشود.
- اگر میخواهید از دادههای صوتی میزبان استفاده کنید، اکنون میتوانید با رفتن به کنترلهای گسترده > میکروفون و فعال کردن میکروفون مجازی از ورودی صوتی میزبان استفاده میکند، این گزینه را فعال کنید. هرزمان شبیهساز بازراهاندازی شود، این گزینه بهطور خودکار غیرفعال میشود.
بهروزرسانیهای مربوط به تحقیقات درباره استفاده از واحد پردازش مرکزی
درطول تحقیقات «پروژه Marble»، متوجه شدیم که استفاده زیاد از CPU در شبیهساز معمولاً در سه دسته زیر قرار میگیرد:
در حالت آماده بهکار: بهروزرسانی خودکار برنامهها در تصاویر «فروشگاه Play»
متوجه شدیم که در فواصل زمانی تصادفی، همه برنامههای نصبشده بهروزرسانی میشوند، حتی زمانی که کاربر به سیستم وارد نشده است. درطول این فرایند، استفاده از CPU به تعداد هستهها × ۱۰۰٪ (معمولاً حدود ۴۰۰٪) در GMSCore و dex2oat میرسد. با غیرفعال کردن بهروزرسانیهای خودکار برنامه در برنامه «فروشگاه Play» میتوانید این مشکل را کاهش دهید.
در حالت آماده بهکار: تشخیص کلیدگفته
وقتی در صفحه اصلی هستید و هیچ برنامهای در پیشزمینه نیست، ممکن است استفاده از CPU بسیار زیاد باشد (~۲۵٪ با اوجهایی تا ۵۰٪). این امر بهدلیل تشخیص کلیدگفته است که مرتباً میزبان را پینگ میکند. نمیتوانید با غیرفعال کردن ورودی صدای میزبان این مشکل را کاهش دهید زیرا هزینه CPU عمدتاً ناشی از زمانی است که طول میکشد تا از میزبان به مهمان برسد. بااینحال، میتوانید با لغو اجازههای میکروفون از برنامه Google این مشکل را کاهش دهید.
هنگام فعال بودن، گاهی در حالت آماده بهکار: پویانماییها
سومین منبع استفاده زیاد از واحد پردازش مرکزی، پویانماییها هستند. متوجه شدهایم که با بهینهسازی پشته درایور گرافیک میتوانیم استفاده از CPU را حتی زمانی که شبیهساز در حالت آماده به کار نیست کاهش دهیم. بهعنوان بخشی از «پروژه Marble»، بهینهسازیهای درایور گرافیک را بهتدریج عرضه خواهیم کرد.
۲۸.۰.۲۲ (۲۱ دسامبر ۲۰۱۸)
این بهروزرسانی شامل بهبودها و اصلاحات زیر است:
- مشکل قدیمیای که در برخی تنظیمات باعث میشد شبیهساز Mac در ذخیره «راهاندازی سریع» بازراهاندازی شود یا با خطای هسته مواجه شود برطرف شد. (مسئله 120951634)
- اکنون هنگام استفاده از فایل نگاشتشده بهعنوان نمای فوری RAM، شبیهساز نگاشت فایل را بهطور صریح در خروج لغو میکند.
28.0.20 (۱۱ دسامبر ۲۰۱۸)
این بهروزرسانی شامل بهبودها و اصلاحات زیر است:
- رفع مشکلی در Windows که باعث میشد شبیهساز در بار کردن نمای فوری با مدلهای خاصی از واحدهای پردازش گرافیکی Intel منجمد شود.
- مشکلی که باعث ایجاد وضعیت دستگاه
unauthorizedADB هنگام استفاده از مکانANDROID_SDK_HOMEغیرمعمولی میشد برطرف شد. - مشکلی در Windows برطرف شد که باعث میشد شبیهساز هنگام راهاندازی تصاویر سیستم با شتاب CPU غیرفعال ازکار بیفتد.
- مشکل نمایشگر شطرنجیشده شبیهساز رفع شد. اکنون باید نمونهبرداری پایین کار کند.
- مشکلی در macOS 10.14+ برطرف شد که در آن کنترل نگاه با موشواره دوربین صحنه مجازی بهدلیل تعامل با تنظیمات امنیتی جدید دسترسپذیری میتوانست بیشازحد حساس شود.
- خطایی در محاسبه منطقه زمانی برطرف شد که میتوانست باعث شود ساعت شبیهساز بهصورت نامنظم تغییر کند.
- خطاهای پردازش در برنامههای مختلف cocos2d و Unreal engine برطرف شد.
- پشتیبانی از Wi-Fi peer-to-peer در شبیهساز اضافه شد.
اکنون اگر از جدیدترین تصویر «فروشگاه Play» در Pie استفاده کنید، دو شبیهساز میتوانند مستقیماً ازطریق 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 اضافه شد.
28.0.16 (نوامبر ۲۰۱۸)
این بهروزرسانی شامل چندین ویژگی جدید، بهبود ویژگیهای موجود، و رفع اشکالات است.
استفاده از منبع
اکنون شبیهساز بهطور کلی از RAM کمتری استفاده میکند، بهویژه هنگام استفاده از تصاویر سیستم با سطح API 28 یا بالاتر. این تصاویر سیستم شامل بهبود استفاده از حافظه برای درایورهای گرافیکی سمت مهمان است.
علاوهبراین، استفاده از منابع را در زمینههای زیر نیز بهبود دادهایم:
- میزان استفاده از حافظه شبیهساز درطول آزمایشهای طولانیمدت کاهش یافت. اگر همچنان درطول آزمایشهای طولانیمدت با استفاده از حافظه مشکل دارید، لطفاً در Issue Tracker مشکلی ایجاد کنید که مورد استفادهتان را شرح دهد.
- هنگام اجرای برنامههای دارای پویانمایی، استفاده از واحد پردازش مرکزی کاهش مییابد.
- مشکلی که در آن زمینه QEMU AIO ممکن بود در Windows نشت کند برطرف شد.
اجرای همزمان چندین نمونه از یک AVD
اکنون میتوانید چندین نمونه از AVD یکسان را راهاندازی کنید و آنها را بهطور همزمان اجرا کنید. نمونههایی که پساز نمونه اول راهاندازی میکنید فقط خواندنی هستند و تغییرات آنها در دیسک مجازی مهمان هنگام خروج دور انداخته میشود.
برای اجرای همزمان چند نمونه از یک AVD، هر نمونهای را
پساز نمونه اول از خط فرمان بااستفاده از پرچم -read-only راهاندازی کنید.
این ویژگی با کپی کردن فایلهای QCOW2 مرتبط با بخشهای
قابلنوشتن تصویر Android امکانپذیر شده است. برای کمک به شما در مدیریت فضای دیسک، ابزار خط فرمان qemu-img را نیز دستهبندی کردهایم تا به شما امکان دهد فایلهای QCOW2 را قبلاز راهاندازی چندین نمونه ازپیش تعهد کنید.
علاوهبراین، وقتی با ویژگی نماگرفتهای RAM مهمان پشتیبان فایل استفاده میشود، چندین نمونه AVD نماگرفت AVD Quickboot اصلی را بهعنوان منبع مشترک RAM مهمان کپیدرجا همرسانی میکنند. این ویژگی یعنی نمونهها بخش زیادی از RAM خود را بهصورت مشترک استفاده میکنند. از این ویژگی برای اجرای آزمایشهایی که نیاز به چندین دستگاه برای اجرا بهصورت موازی دارند استفاده کنید.
از بازخوردهای شما درباره موارد استفاده احتمالی که بخشی از جریان کار تعاملی یا CI معمولی شما است استقبال میکنیم. لطفاً مشکلات را در Issue Tracker ایجاد یا به آنها رأی مثبت دهید.
عکسهای آنی حافظه دسترسی تصادفی مهمان با پشتیبانی فایل
با پیشتخصیص و نگاشت کردن RAM مهمان بهعنوان فایل، شبیهساز اکنون میتواند نماگرفتهای «راهاندازی سریع» را درطول زمان اجرا ذخیره کند، بهجای اینکه همه کارها را هنگام خروج انجام دهد. اگر درحالحاضر هنگام بستن شبیهسازهایتان با زمانهای طولانی ذخیره مواجه میشوید، این ویژگی را فعال کنید تا عملکرد «راهاندازی سریع» را بهبود دهید. بهطور پیشفرض، یک نمای فوری «راهاندازی سریع» هنگام خروج ذخیره میشود و هر بار دوباره بار میشود، درست مثل تعلیق و بیدار کردن یک دستگاه واقعی.
ازآنجاییکه RAM مهمان Android اکنون بهطور پیشفرض ذخیره خودکار میشود، اگر میخواهید وضعیت دستگاهی را تعریف کنید و بهطور مکرر از آن وضعیت بار کنید، باید به شبیهساز بگویید که تغییرات را پساز هر جلسه دور بیندازد. میتوانید این کار را به روشهای زیر انجام دهید:
- هنگام راهاندازی شبیهساز از خط فرمان، از پرچمهای
-no-snapshot-saveیا-read-onlyاستفاده کنید. - به کنترلهای توسعهیافته > عکسهای فوری > تنظیمات بروید و وضعیت فعلی در «راهاندازی سریع» بهطور خودکار ذخیره شود؟ را به خیر تغییر دهید.
- پساز انتخاب این گزینه، باید شبیهساز را بازراهاندازی کنید. اگر شبیهساز روی ذخیره خودکار تنظیم شده باشد، میتوانید فرمان زیر را برای تنظیم نقطه بازرسی اجرا کنید:
پساز اجرای این فرمان، تصویر فوری «راهاندازی سریع» شبیهساز در آن نقطه بازرسی باقی میماند. برای بار کردن شبیهساز از نقطه بازرسی، همان فرمان را دوباره اجرا کنید.adb emu avd snapshot remap 0
عملکرد نماگرفتهایی که ازطریق «میانای کاربری نماگرفتها» گرفته و بارگذاری میشوند مانند قبل است و هیچ نگاشت فایلی ندارد.
ازآنجاییکه این تغییر بزرگی در نحوه عملکرد «راهاندازی سریع» است، بسیار سپاسگزار خواهیم بود اگر
بازخوردتان را درباره اینکه آیا این تغییر عملکرد «راهاندازی سریع» را بهبود میبخشد و چه
نوع مشکلاتی هنگام استفاده از آن با آن مواجه میشوید به ما بگویید. اگر با مشکلی مواجه شدید، میتوانید با افزودن خط زیر به فایل
~/.android/advancedFeatures.ini این ویژگی را غیرفعال کنید:
QuickbootFileBacked = off
وقتی شبیهساز را از یک لحظهعکس شروع میکنید (یا بااستفاده از گزینه خط فرمان -snapshot
یا با راهاندازی از لحظهعکس در مدیر AVD)، شبیهساز هم ذخیره خودکار لحظهعکسهای «راهاندازی سریع» و هم ذخیره لحظهعکسهای «راهاندازی سریع» در خروج را غیرفعال میکند. این کار احتمال بازنویسی ناخواسته تصویر فوری «راهاندازی سریع» را کاهش میدهد و از مسیرهای بازگشت کند که از تصاویر فوری «راهاندازی سریع» با پشتیبانی فایل استفاده نمیکنند جلوگیری میکند.
QEMU 2.12
نسخه متغیر QEMU خود را از QEMU 2.9 به QEMU 2.12 تغییر دادهایم. این بهروزرسانی شامل تغییرات زیر در QEMU است:
- https://wiki.qemu.org/ChangeLog/2.10
- https://wiki.qemu.org/ChangeLog/2.11
- https://wiki.qemu.org/ChangeLog/2.12
در اینجا برخیاز تغییرات قابلتوجهی که بر «شبیهساز Android» تأثیر میگذارند آورده شده است:
- x86:
gdbstubاکنون دسترسی به ثبتهای SSE را فراهم میکند. - تصاویر دیسک: قفل تصویر بهطور پیشفرض اضافه و فعال میشود. چندین فرایند QEMU نمیتوانند در یک تصویر بنویسند، بهشرطی که میزبان از OFD یا قفل کردن posix پشتیبانی کند، مگر اینکه گزینهها بهگونهای دیگر مشخص شده باشند.
-
qemu-img: qemu-img resizeاز پیشتخصیص بخشهای جدید تصویر پشتیبانی میکند. - اکنون کوچک کردن QCOW2 در
qemuوqemu-imgپشتیبانی میشود.
دسترسپذیری
- مشکلات مربوط به صفحهخوانها برطرف شد و پشتیبانی بهتری برای این ابزارها در میانای کاربری «ضبط صفحه» و «عکس فوری» اضافه شد.
- نمادهای اعلان «راهاندازی سریع» برای کاربرانی که کوررنگ هستند دسترسپذیرتر شد.
گرافیک
- مشکل دسترسی به حافظه خارج از محدوده که ممکن بود برای اشارهگرهای آرایه رأس OpenGL ES رخ دهد برطرف شد.
- برخیاز GPUهای قدیمی از OpenGL 2.1 یا بالاتر (که الزامی است) پشتیبانی نمیکردند یا مشکلات قابلیت اطمینان دیگری داشتند. این مشکلات میتواند باعث شود شبیهساز در شروع ازکار بیفتد، منجمد شود، یا در تنظیمات پیشفرض GPU غیرقابل استفاده باشد. اکنون اگر شبیهساز تشخیص دهد که از این 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(پرداز زدن نرمافزار در مهمان) منسوخ شده است. تصاویر سیستم برای سطح API 28 یا بالاتر اکنون بهطور خودکار به استفاده از Swiftshader تغییر میکنند (-gpu swiftshader_indirect). - اگر شبیهساز از خط فرمان بااستفاده از پرچم
-no-windowراهاندازی شود، پردازنده پیشفرض اکنون Swiftshader است.
مکان
- اکنون شبیهساز میتواند جهت را همراه با عرض و طول جغرافیایی مکان بهروز کند. حسگر مجازی مغناطیسسنج با استنباط حرکت هنگام پخش فایل GPX یا KML، بهطور پویا خود را با شمال مغناطیسی تنظیم میکند.
- اکنون میتوانید سرعت دستگاه را در صفحه «مکان» تنظیم کنید.
- هنگام بازپخش فایل GPX یا KML، سرعت بهطور خودکار تنظیم میشود و وقتی بازپخش تمام میشود، سرعت روی صفر تنظیم میشود.
- ارتفاع دیگر به بین ۱۰۰۰- و ۱۰۰۰۰+ متر محدود نمیشود.
- رفع مشکلی که باعث میشد مکان GPS مجازی بهصورت دورهای بهروز نشود، مگر اینکه پنجره «کنترلهای گسترده» حداقل یکبار باز شود.
دوربین
در Windows، اکنون از وبکمهای بیشتری پشتیبانی میشود زیرا شبیهساز بهصورت پویا قابهای دوربین را که از وبکم ارائه میشوند تغییر اندازه میدهد. این ویژگی همچنین از بروز خطا در تحویل قاب که باعث هنگ کردن شبیهساز میشود جلوگیری میکند.
فروشگاه Play
برای رفع مشکلات مربوط به کمبود فضای دیسک در تصاویر «فروشگاه Play»، شبیهساز اکنون هنگام اجرا با AVD «فروشگاه Play» جدید، اندازه پارتیشن دادههای کاربر را بهطور خودکار به ۶ گیگابایت تغییر میدهد.
بهبودهای کلی کیفیت و رفع اشکالها
- برخیاز کاربران گزارش دادهاند که شبیهساز بهکندی اجرا میشود. یک دلیل احتمالی شناسایی کردیم که در آن، دایرکتوری موقت شبیهساز حاوی فایلهای قدیمی بیشازحد است. بهعنوان راهکار موقت، شبیهساز دیگر فایلهای بررسی فعال بودن ADB را در آن دایرکتوری ذخیره نمیکند. بااینحال، ممکن است حذف محتوای آن پوشه نیز کمک کند. پوشه در یکی از مکانهای زیر قرار دارد،
بسته به سیستمعامل شما:
- Windows:
C:\Users\<username>\AppData\Local\Temp\AndroidEmulator\* - macOS یا Linux:
/tmp/android-<username>/*
- Windows:
- اگر شبیهساز بهدلیل کافی نبودن حافظه دسترسی تصادفی آزاد نتواند شروع شود، پیام خطایی نمایش داده میشود. اگر از Windows استفاده میکنید و متوجه میشوید که RAM آزاد دارید، اما همچنان نمیتوانید شبیهساز را راهاندازی کنید، ممکن است از حد تعهد هزینه فراتر رفته باشید. برای دریافت راهنمایی درباره این مشکل، به صفحه عیبیابی شبیهساز مراجعه کنید.
- گزینه خط فرمان
-sysdirاکنون بهدرستی دایرکتوری تصویر سیستم استنباطشده را ملغی میکند. - مودم مجازی اکنون از پُرسمان اطلاعات فعالیت مدل
+MAIپشتیبانی میکند. - مشکلات مختلفی درخصوص نشت حافظه، خراب شدن حافظه، و استفاده از CPU برطرف شد. اگر با خرابی، نشت حافظه، یا استفاده زیاد از منابع مواجه هستید، لطفاً مشکلی در Issue Tracker ایجاد کنید.
- مشکلی که در macOS 10.14 دوباره ظاهر شده بود و باعث میشد استفاده از هدستهای بلوتوث با شبیهساز کیفیت صدا را در کل تنزل دهد برطرف شد. برای جلوگیری از این اتفاق، شبیهساز اکنون هنگام اجرا در macOS از صدای بلوتوث استفاده نمیکند. (Issue 37070892)
- مشکلی در 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 جدید (>= 4.6) استفاده میکنند برطرف شد. برای مثال، Ubuntu 18.04 (#39، #74).
- اشکال شبیهساز دستورالعمل x86 که میتوانست منجر به ازکارافتادن میزبان شود برطرف شد (#93).
منسوخ شدن Windows ۳۲ بیتی
بهدلیل استفاده کم و هزینههای بالای نگهداری، قصد داریم نسخه ۳۲ بیتی «شبیهساز Android» را که در Windows اجرا میشود منسوخ کنیم. قبلاز برداشتن و پایان عمر نسخه ۳۲ بیتی «شبیهساز Android»، طرح انتقالی را عرضه خواهیم کرد. بااینحال، ما بهطور فعال بهدنبال هرگونه بازخورد یا نگرانی درباره این تغییر آینده هستیم.
لطفاً در Issue Tracker به ما اطلاع دهید که آیا درحالحاضر از نسخه ۳۲ بیتی «شبیهساز Android» که در Windows اجرا میشود استفاده میکنید یا نه و به ما بگویید چگونه میتوانیم در آینده بهترین همکاری را با شما داشته باشیم.
27.3.10 (اوت ۲۰۱۸)
این بهروزرسانی شامل رفع اشکال زیر است:
رفع پیکربندی اندازه RAM
برخیاز کاربران گزارش کردهاند که شبیهساز بهکندی اجرا میشود. یک دلیل احتمالی شناسایی کردیم که در آن اندازه RAM «دستگاه مجازی Android» در فایل config.ini «دستگاه مجازی Android» بهدرستی تنظیم نشده بود.
برای کاهش این مشکل، شبیهساز حداقل سطح حافظه دسترسی تصادفی را برای تصاویری که از سطح میانای برنامه کاربردی ۲۶ یا بالاتر استفاده میکنند به سطح پیشفرض Android Studio یعنی ۱۵۳۶ مگابایت افزایش میدهد. اگر فایل config.ini «دستگاه مجازی Android» شما hw.ramSize را برحسب مگابایت فهرست نمیکند،
لطفاً در سامانه پیگیری مشکلات مشکل ایجاد کنید.
میتوانید فایل config.ini را در مکان زیر پیدا کنید:
~/.android/avd/<avdname>.avd/config.ini
27.3.9 (ژوئیه ۲۰۱۸)
این بهروزرسانی شامل بهبودهای زیر و رفع اشکالات است:
پیامهای خطای بهبودیافته برای Windows Hypervisor Platform
برخیاز کاربران هنگام فعال کردن شبیهساز WHPX در تشخیص دلیل مقداردهی اولیه نشدن «پلاتفرم Windows Hypervisor»
(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 و «شبیهساز» نسخه ۲۷.۳ و جدیدتر، نماگرفتها محتوایشان را بهجای بار کردن کل نماگرفت هنگام شروع دستگاه مجازی، بهصورت درخواستی در RAM بار میکنند. این تغییر باید زمان لازم برای بار کردن یک نمای فوری را بهشدت کاهش دهد.
برای جزئیات، پیکربندی شتابدهنده ماشین مجازی را ببینید.
27.2.9 (مه ۲۰۱۸)
این بهروزرسانی شامل چندین ویژگی جدید، بهبود ویژگیهای موجود، و رفع اشکالات است.
ضبط صفحهنمایش
اکنون میتوانید ویدیو و صدا را از «شبیهساز Android» ضبط کنید و ضبط را در فایل WebM یا گیف پویانماییشده ذخیره کنید.
کنترلهای ضبط صفحهنمایش در برگه ضبط صفحهنمایش در پنجره کنترلهای گسترده قرار دارند.
نکته: همچنین میتوانید با فشار دادن کلیدهای «کنترل + تبدیل + R» (یا «فرمان + تبدیل + 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 Store اکنون برای تصاویر دستگاه 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 بهعنوان زیرینه وبکم استفاده میکند که عملکرد و نرخ فریم را برای ضبط وبکم تا ۷۲۰ پیکسل ۳۰ فریم در ثانیه بهطور قابلتوجهی بهبود میبخشد.
در 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 برطرف شد.
- مشکلات مربوط به صفحههای خالی هنگام رفتن به حالت بزرگنمایی درحالیکه شبیهساز بدون قاب فعال بود برطرف شد.
- مشکلی که باعث میشد پوسته دستگاه و محتوای شبیهساز هنگام بزرگنمایی از همگامسازی خارج شوند برطرف شد.
اگر هنوز با مشکلاتی مثل گیر کردن یا ناپایداری مواجه هستید، لطفاً مشکلی ثبت کنید.
۲۷.۱.۱۲ (مارس ۲۰۱۸)
این بهروزرسانی شامل رفع اشکال برای مشکلات زیر است:
- کیفیت صدای بلوتوث پساز شروع شبیهساز تنزل یافت. (مشکل ۳۷۰۹۵۷۵۶)
- مکانهای ارسالشده به یک شبیهساز به همه آنها ارسال شد. (مشکل ۷۳۴۵۰۶۳۳)
- مکان GPS تنظیمشده بااستفاده از کنسول با مقادیر تنظیمشده بااستفاده از کنترلهای گسترده > مکان در میانای نگارهای کاربر ملغی شد. (Issue 73471760)
اگر هنوز با مشکلاتی مثل گیر کردن یا ناپایداری مواجه هستید، لطفاً مشکلی ثبت کنید.
با این بهروزرسانی، تصویر سیستم فعلی، و نسخه پیشنمایش Android Studio، میتوانید از «شبیهساز Android» برای اجرای برنامههای واقعیت افزوده ساختهشده با ARCore استفاده کنید. برای دیدن الزامات و دستورالعملهای دقیق، به اجرای برنامههای AR در «شبیهساز Android» مراجعه کنید.
27.1.10 (فوریه ۲۰۱۸)
وضوح ضبط دوربین
اکنون میتوان قابهای ۷۲۰ پیکسل را از وبکم متصل ضبط کرد.
برای کار با تصاویر سیستم Android 8.1 (سطح API 27) و بالاتر، هر وبکمی که متصل میشود باید قابلیت ضبط قابهای ۷۲۰ پیکسل را داشته باشد.
تصحیحات
- رفع مشکلی که باعث میشد ضبط وبکم گاهی تصویر تحریفشده یا کاملاً سبز تولید کند.
- مشکلی برطرف شد که باعث میشد پیام زیر حتی زمانی که تعلیق واقعی وجود نداشت نشان داده شود: «شبیهساز: خطا: رشته تعلیق «حلقه رویداد Qt» شناسایی شد. پاسخی برای ۱۵۰۰۰ میلیثانیه دریافت نشد».
اگر هنوز با مشکلاتی مثل گیر کردن یا ناپایداری مواجه هستید، لطفاً مشکلی ثبت کنید.
۲۷.۱.۷ (فوریه ۲۰۱۸)
پنجره شبیهساز بدون قاب:
بهطور پیشفرض، شبیهسازهای دارای فایلهای پوسته دستگاه اکنون بدون قاب پنجره اطراف نمایش داده میشوند. برای نشان دادن قاب پنجره اطراف، نمایش قاب پنجره اطراف دستگاه را در پانل «تنظیمات» پنجره کنترلهای توسعهیافته فعال کنید.
بهبودهای «راهاندازی سریع» برای کارآمدتر کردن کار با تصاویر فوری AVD:
- هرزمان بخواهید میتوانید بااستفاده از دکمه ذخیره کردن در قاب «تنظیمات» در کادر گفتگوی کنترلهای گسترده یک لحظهعکس AVD ذخیره کنید.
- شبیهساز با ذخیره کردن فقط تفاوت بین وضعیت فعلی و نمای فوری ذخیرهشده قبلی، زمان لازم برای ذخیره کردن نمای فوری را در بسیاری از موارد کاهش میدهد.
برای جزئیات، به مستندات راهاندازی سریع مراجعه کنید.
شبیهساز برای استفاده از QEMU 2.9 بهروز شده است.
برخیاز بهبودهای قابلتوجه عبارتاند از:
- ورودی/خروجی بهینهسازیشده و قفل کردن رشته ورودی/خروجی با جزئیات بیشتر برای عملکرد بهتر.
- اشکالات رفعشده از زمان QEMU 2.8 (۲۶.۱.۴).
- پیادهسازی جدید زیرینه HAXM.
فهرست کامل تغییرات را در گزارش تغییرات QEMU 2.9 ببینید.
پیادهسازی Swiftshader مطابق با OpenGL ES 3.0:
پردازنده Swiftshader شبیهساز اکنون کاملاً با OpenGL ES 3.0 سازگار است. برای جزئیات مربوط به رندرکننده Swiftshader، بخش تنظیمات > پیشرفته در کنترلهای گسترده را ببینید.
تصحیحات
- رفع مشکلی که باعث میشد همرسانی بریدهدان کار نکند، مگراینکه گزینه فعال کردن همرسانی بریدهدان خاموش و روشن شود.
- وقتی از زیرینه رندرینگ Swiftshader با AVDهای با وضوح پایین استفاده میشد، مشکل گیر کردن برطرف شد.
۲۷.۰.۵ (ژانویه ۲۰۱۸)
ANGLE برای پرداز در Windows اکنون بهطور پیشفرض غیرفعال است.
اگر ANGLE برای شما بهتر کار میکند، میتوانید آن را با پرچم خط فرمان
-gpu angle_indirectبازفعال کنید. یا، پنجره «کنترلهای گسترده» را باز کنید، به تنظیمات > پیشرفته بروید، و ANGLE D3D11 را برای تنظیم رندرکننده OpenGL ES انتخاب کنید.رفع مشکلی که باعث میشد «تبدیل + ب» نویسه «ب» بزرگ را تایپ نکند.
۲۷.۰.۲ (دسامبر ۲۰۱۷)
ویژگی جدید «راهاندازی سریع» براساس نمونه فوری از نمونه AVD شما، زمانهای شروع شبیهساز سریعتری ارائه میدهد.
«راهاندازی سریع» بهطور پیشفرض برای همه AVDها فعال است. اگرچه اولینباری که AVD را شروع میکنید باید راهاندازی سرد انجام دهد (دقیقاً مثل روشن کردن دستگاه)، همه شروعهای بعدی سریع هستند و سیستم به وضعیتی که در آن شبیهساز را بسته بودید بازیابی میشود (مشابه بیدار کردن دستگاه).
اگر میخواهید کنترل کنید شبیهساز چه زمانی لحظهای را ذخیره کند، پنجره کنترلهای گسترده شبیهساز را باز کنید و روی تنظیمات کلیک کنید. در اینجا میتوانید یکی از تنظیمات زیر را برای ذخیره وضعیت راهاندازی سریع هنگام خروج انتخاب کنید:
- بله: وقتی شبیهساز را میبندید، همیشه عکس آنی راهاندازی سریع را ذخیره کنید. این گزینه پیشفرض است.
- نه: هرگز تصویر لحظهای راهاندازی سریع ذخیره نمیشود؛ همیشه راهاندازی سرد انجام میشود.
- پرسیدن: وقتی شبیهساز را میبندید، از شما میپرسد که آیا میخواهید عکس آنی راهاندازی سریع را ذخیره کنید یا نه.
انتخاب شما فقط برای AVD باز فعلی اعمال میشود.
برای اطلاعات بیشتر، به مستندات «راهاندازی سریع» مراجعه کنید.
پشتیبانی از Mac OpenGL ES 3 (برای تصاویر سیستم بااستفاده از سطح API 24 و بالاتر، Google APIs، و 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استفاده میکنند.-
رفع اشکالات مختلف دیگر.
۲۶.۱.۴ (اوت ۲۰۱۷)
این نسخه جزئی شامل رفع اشکال و بهبودهای زیر در پیکربندی «واحد پردازش گرافیکی» است:
- فعال کردن پویانمایی راهاندازی هنگام اجرا در رندر ANGLE
- غیرفعال کردن GLES3 هنگام اجرا در رندرکننده ANGLE
۲۶.۱.۳ (اوت ۲۰۱۷)
این نسخهٔ پخش جزئی شامل رفع اشکالها، بهبود عملکرد، و تغییرات کوچک در ویژگیها است.
- اکنون برای استفاده از جدیدترین تصاویر سیستم Android 8.0، این نسخه لازم است.
این دستگاهها سازگار با Treble هستند و
دارای
vendor.imgپارتیشن مجزا هستند. - HAXM 6.2.0 جدید اکنون دردسترس است (در «مدیر کیت توسعه نرمافزار» بررسی کنید) و شامل بهروزرسانیهای زیر است:
- بهبود استفاده از حافظه. مجموعه کاری اوج حافظه سنجاقشده توسط HAXM دیگر برابر با اندازه RAM «دستگاه مجازی Android» نیست؛ درعوض، حافظه درصورت نیاز صفحهبندی میشود. این کار باید به شبیهساز کمک کند تا در ماشینهایی با مقدار RAM کمتر قابلاعتمادتر اجرا شود.
- شبیهساز با HAXM 6.2.0 اکنون میتواند در macOS سریعتر راهاندازی شود و از مرحله طولانی اولیه صرفنظر کند.
- بهبود پیکربندی GPU
- مشکلات مربوط به صفحهنمایش سیاه در هنگام راهاندازی هنگام انجام رندرینگ نرمافزاری سمت مهمان با بازگشت به رندرینگ نرمافزاری سمت میزبان با Swiftshader برطرف شد. آخرین نسخههای بازبینی تصاویر سیستم برای سطوح API 19 تا 25 با Google APIs باید رندرینگ سمت مهمان کارا داشته باشند.
- مشکلی برطرف شد که در آن شبیهساز بهدلیل تشخیص وجود واحدهای پردازش گرافیکی قدیمیتر Intel به رندر نرمافزاری تغییر میکرد، اما شبیهساز درواقع روی واحد پردازش گرافیکی مجزا اجرا میشد. اینکه کدام واحدهای پردازش گرافیکی برای استفاده از ANGLE
یا رندر Swiftshader تغییر کنند به این صورت تعیین میشود:
- iGPUهای قدیمی Intel در درایورهای OpenGL و ANGLE D3D مشکل دارند. کاربران دارای Intel HD Graphics 3xxx و قدیمیتر از Swiftshader استفاده خواهند کرد.
- برخیاز کاربران گزارش کردهاند که نمیتوانند از تصاویر سطح API 25 استفاده کنند زیرا اشکالی وجود دارد که باعث میشود «راهانداز Pixel مدام متوقف شود». بهنظر میرسد این مشکل مربوط به درایور در برخیاز مدلهای Intel HD 4xxx است. بنابراین آنها بهطور خودکار به استفاده از ANGLE تغییر خواهند کرد.
- برای دریافت بهترین نتایج با شبیهسازی واحد پردازش گرافیکی، توصیه میکنیم از واحد پردازش گرافیکی NVIDIA یا AMD مجزا یا واحد پردازش گرافیکی Intel جدیدتر (Iris، HD 5xxx، HD 5xx/6xx) استفاده کنید.
- رفع مشکلی که باعث میشد اگر «دستگاه مجازی Android» با
hw.gpu.mode=hostپیکربندی شده باشد و شبیهساز در کارخواه میز کار از دور راهاندازی شود، شبیهساز شروع نشود (شبیهسازی OpenGL مقداردهی اولیه نشد). - تنظیمات «سطح میانای برنامهسازی کاربردی OpenGL ES (بازراهاندازی لازم است)» شفافسازی شد؛ گزینهای برای تنزل از OpenGL ES 3 به OpenGL ES 2 درصورت بروز مشکل یا نیاز به آزمایش در سطوح پایینتر میانای برنامهسازی کاربردی OpenGL ES اضافه شد.
- پردازنده Mesa منسوخ شده است؛ ازاینپس
hw.gpu.mode=mesaبهطور خودکار به استفاده از Swiftshader در میزبان تغییر خواهد کرد.
- بهبودها برای macOS:
- اکنون شبیهساز با macOS 10.13 High Sierra ازطریق Hypervisor.Framework یا HAXM 6.2.0 کاملاً سازگار است.
- Hypervisor.framework اکنون بهطور پیشفرض در macOS برای تصاویر ۳۲ بیتی x86 فعال است تا عملکرد و سازگاری macOS بهبود یابد. اگر با آن مشکل خاصی دارید، لطفاً گزارش اشکال ثبت کنید و
HVF = offرا به~/.android/advancedFeatures.iniپیوست کنید (اگر این فایل وجود ندارد، آن را ایجاد کنید). - مشکلات مربوط به عدم اتصال به اینترنت / عدم پیوست اشکالزدا هنگام استفاده از Hypervisor.framework برطرف شد.
- برای بهبود سازگاری و عملکرد ضبط وبکم، ضبط دوربین مبتنی بر QTKit با ضبطی بافرشده مبتنی بر AVFoundation جایگزین شده است.
- پشتیبانی از Wi-Fi در برخیاز تصاویر سیستم اضافه شد (درحالحاضر فقط سطح API 25).
نقطه دسترسیای بهنام «AndroidWifi» دردسترس است و Android بهطور خودکار به آن متصل میشود. با اجرای شبیهساز با پارامتر خط فرمان
-feature -Wifi، میتوان پشتیبانی Wi-Fi را غیرفعال کرد. - برخیاز کاربران نگرانی خود را درباره کافی نبودن فضای ذخیرهسازی تصویرهای سیستم «فروشگاه Play» با اندازه ثابت مطرح کردند. بههمین دلیل، اندازه پیشفرض را به ۲ گیگابایت افزایش دادهایم (از ۸۰۰ مگابایت).
- میانبر صفحهکلید (Ctrl+Shift+U) برای باز کردن صفحه رابط کاربری گزارش اشکال مستقیماً از صفحه تنظیمات اضافه شد.
- مشکلی برطرف شد که در آن اگر از CPU قدیمیتری با Intel x86 EPT اما بدون UG استفاده میشد، درصورت پیکربندی بیشاز یک هسته، شبیهساز راهاندازی نمیشد.
- رفع مشکلی که در آن اگر شبیهساز در یک Hypervisor Xen اجرا میشد، HyperV بهاشتباه شناسایی میشد.
- رفع مشکلی که باعث میشد شبیهساز در برخی پیکربندیهای 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،
و گزارش اشکال. سپس میتوانید گزارش را برای خودتان ذخیره کنید یا
مشکلات شبیهساز را گزارش کنید.حسگر ژیروسکوپ به شبیهساز و پانل حسگرهای مجازی اضافه شد. برای کار کردن، به تصویر سیستم با پشتیبانی ژیروسکوپ نیاز دارد (درحالحاضر سطح API 24 و 25).
وقتی چندین میانای شبکه مجازی در میزبان چندین نشانی ساناد را معرفی میکنند که برای شبیهساز کار نمیکنند، ساناد ترجیحی میزبان به فهرست ساناد Qemu در Windows اضافه شد.
پشتیبانی آزمایشی از macOS Hypervisor.Framework برای تصاویر x86 ۳۲ بیتی در macOS 10.10+ ازطریق پرچمهای سرور اضافه شد که باید زمان راهاندازی و عملکرد را بهبود دهد.
- اگر با آن مشکل دارید، خط
HVF = offرا در~/.android/advancedFeatures.iniاضافه کنید.
- اگر با آن مشکل دارید، خط
OpenGL ES 3.x اکنون بهطور پیشفرض برای تصاویر سیستم و GPU میزبان که از OpenGL ES 3 پشتیبانی میکنند فعال است. درحالحاضر، فقط میزبانهای Android O (سطح میانای برنامهسازی کاربردی ۲۶) و Windows/Linux از OpenGL ES 3 پشتیبانی میکنند.
- اگر با OpenGL ES 3 مشکل دارید، خط
GLESDynamicVersion = offرا در~/.android/advancedFeatures.iniاضافه کنید.
- اگر با OpenGL ES 3 مشکل دارید، خط
اکنون شبیهساز برای همه پردازشها بهجز پست کردن تصویر نمایشگر نهایی از FBOهای OpenGL خارج از صفحه استفاده میکند که باید به حل مشکلات یکنواختی رنگ در پلاتفرمهای مختلف کمک کند.
پساز جمعآوری دادهها درباره مشکلات کاهش سرعت ناگهانی شبیهساز، متوجه شدیم که مشکل ممکن است به تعامل بین درایورهای قدیمی Intel OpenGL و بهروزرسانیهای Windows مربوط باشد. بههمین دلیل، کاربران دارای Intel HD 4000، 3000، 2000 (و واحدهای پردازش گرافیکی مرتبط) اکنون بهطور پیشفرض رندرینگ را روی رندرکننده D3D (ANGLE) یا Swiftshader (رندرکننده نرمافزاری) تنظیم کردهاند.
۲۶.۰.۰ (مارس ۲۰۱۷)
این نسخه با سطح میانای برنامهسازی کاربردی ۲۶ سازگار است. این نسخه همچنین شامل تعدادی بهبود عملکرد و رفع اشکال است.
نسخه اصلاحی جزئی ۲۶.۰.۳ (مه ۲۰۱۷)
- پرچمهای ویژگی قابلبهروزرسانی آنلاین را برای رسیدگی سریع به مشکلات ناشی از پیکربندیهای سختافزاری مشکلدار اضافه میکند. این کار به Google اجازه میدهد تا اصلاحات و ویژگیهایی را که به پیکربندیهای کاربر وابسته هستند با بهروزرسانی پرچمهای سمت سرور عرضه کند. اگر متوجه مشکلاتی در سختافزار خاصی شدید، لطفاً گزارش اشکال ارسال کنید تا بتوانیم مشکل را بررسی کنیم.
- پشتیبانی جدید از ورودی چرخشی برای تصاویر سیستم Android Wear API سطح ۲۵. برای شبیهسازی شمارهگیر ورودی چرخشی در دستگاه Wear، روی زبانه ورودی چرخشی در پنجره گسترده کلیک کنید.
- اکنون اندازه کادر گفتگوی «گزارش خرابی» قابلتغییر است و دیگر When to send crash reports (چه زمانی گزارش خرابی ارسال شود) را بدون ورودی به Ask (پرسیدن) بازنشانی نمیکند.
- اکنون شبیهساز ۳۲ بیتی ملزم میکند که حداکثر اندازه حافظه دسترسی تصادفی AVD کمتر از یا برابر با ۵۱۲ مگابایت باشد تا از تمام شدن فضای شبیهساز در فضای نشانی مجازی ۲ گیگابایتی جلوگیری شود.
- از مسیرهای مطلق در تصاویر شبیهساز پشتیبانی میکند.
- برگه جدیدی در پنجره گسترده برای تصاویر «فروشگاه Google Play» اضافه میکند که نسخه «خدمات Play» و دکمهای برای بررسی بهروزرسانیهای «خدمات Play» را نمایش میدهد.
- منوِ کرکرهای برای انتخاب رندرکننده OpenGL در صفحه «تنظیمات شبیهساز» اضافه میکند. اگر در ماشین Windows با درایور OpenGL مشکل دارید، از گزینههای ANGLE (D3D11) یا ANGLE (D3D9) استفاده کنید (به بازراهاندازی نیاز دارد). اگر در دستگاه غیر Windows با درایور OpenGL مشکل دارید، از رندرکننده نرمافزاری Swiftshader استفاده کنید (به بازراهاندازی نیاز دارد).
- خرابی نادری را که هنگام خروج از شبیهساز و دریافت هر دو فرمان
exitوminimizeرخ میداد رفع میکند. - مشکل مقیاسبندی هنگام تغییر نمایشگر در دستگاه Mac را برطرف میکند. (مشکل ۲۶۸۲۹۶)
- مشکلی را برطرف میکند که در آن شبیهساز ۳۰۰٪ از CPU را میگیرد و آن را پساز ازسر گرفتن رایانه میزبان از حالت خواب یا زمانی که شبیهساز برای مدت طولانی درحال اجرا بوده است نگه میدارد.
- ازکارافتادن شبیهساز هنگام خاموش شدن را برطرف میکند.
بهروزرسانیهای HAXM نسخه ۶.۱.۱ (مارس ۲۰۱۷)
توجه: HAXM نسخه ۶.۱.۱ از ۳۰ مارس ازطریق مدیر کیت توسعه نرمافزار برای کاربران Mac دردسترس است و بهزودی برای کاربران Windows نیز دردسترس قرار خواهد گرفت.
نسخه ۲۶.۰.۰ «شبیهساز Android» از HAXM نسخه ۶.۱.۱ پشتیبانی میکند که شامل بهروزرسانیهای زیر است:
- شبیهسازی «واحدهای پایش عملکرد» (PMU) را فعال میکند. (Issue 223377)
- همزیستی با VirtualBox و Docker در Mac را اصلاح میکند. (Issue 197915)
- پیام خطای نصب را که وقتی نصبکننده نمیتواند 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 سازگار با رایانه دارد، شبیهساز اکنون ۱۰۰٪ از فهرست
mustpassAndroid CTS dEQP-GLES2 را میگذراند. این ویژگی برای تصاویر API سطح ۲۴ x86 (نسخه ۱۱ و بالاتر) منتشر شده است و بهزودی برای همه تصاویر سیستم دردسترس قرار خواهد گرفت. - عملکرد بهبودیافته بازپخش ویدیو. اکنون شبیهساز همه بافرهای رنگ ویدیو را در حافظه مشترک میزبان/مهمان ذخیره میکند و تبدیل نهایی YUV به RGB لازم را در واحد پردازش گرافیکی انجام میدهد. ۱۰۸۰p۳۰ اکنون باید برای اکثر سیستمها دردسترس باشد. این ویژگی برای تصاویر API سطح ۲۴ x86 (نسخه ۱۱ و بالاتر) منتشر شده است و بهزودی برای همه تصاویر سیستم دردسترس قرار خواهد گرفت.
- اکنون شبیهساز هنگام خروج، خود را بهدرستی از فهرست
adb devicesلغو ثبت میکند و در ماشینهای Linux، درگاههای TCP باز را میبندد. - اتصالهای adb اکنون قابلاطمینانتر است. شبیهساز درحال اجرا شناسایی میشود و دیگر به وضعیت «آفلاین» یا «غیرمجاز» نمیرود.
۲۵.۳.۰ (مارس ۲۰۱۷)
از این نسخه، «شبیهساز Android» بهطور جداگانه از «ابزارهای کیت توسعه نرمافزار» منتشر خواهد شد. این نسخهٔ پخش شامل بهبودهای مختلف در عملکرد، ویژگیهای جدید، و رفع اشکالات است.
نسخه فرعی ۲۵.۳.۱ (مارس ۲۰۱۷)
- با غیرفعال کردن GLAsyncSwap بهطور پیشفرض، خرابی در برخیاز پیکربندیهای GPU برطرف شد.
این ویژگی در نسخه ۲۵.۳.۰ برای بهبود زمانبندی قاب و تعداد قاب در ثانیه برای بازیها
و ویدیو اضافه شد، اما باعث میشود شبیهساز در برخی پیکربندیهای ناشناخته ماشین با خطا مواجه شود. با باز کردن فایل
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. هستند و بهعنوان علامت تجاری در چین، اتحادیه اروپا، ژاپن، و پادشاهی متحد ثبت شدهاند.