شبیه ساز اندروید همراه با اندروید استودیو موجود است.
نسخه های شبیه ساز قبل از 25.3.0 به عنوان بخشی از ابزار Android SDK توزیع شده است.
برای اطمینان از اینکه آخرین نسخه را دارید، مدیر SDK را برای به روز رسانی بررسی کنید.
برای دانلود نسخه های قبلی شبیه ساز اندروید، به آرشیو دانلود شبیه ساز مراجعه کنید.
برای یادداشتهای انتشار نسخههای شبیهساز قبل از 25.3.0، به یادداشتهای انتشار Android SDK Tools مراجعه کنید.
برای اینکه ببینید چه مشکلاتی در جدیدترین نسخههای شبیهساز اندروید برطرف شدهاند، به مسائل بستهشده مراجعه کنید.
برای مشکلات شناخته شده و عیب یابی، لطفاً به عیب یابی شبیه ساز مراجعه کنید.
[رفع اشکال] شماره 419157428 نویسههای UTF-8 در نام کاربری یا مسیر AVD میتوانند مانع از شروع شبیهساز شوند.
[رفع اشکال] شماره 423670833 شبیه ساز اندروید در سیستم فایل btrfs خراب می شود
توجه: اگر با راهاندازی شبیهساز در X11 مشکل دارید، از رندر نرمافزار استفاده کنید. برای نحوه پیکربندی رندر نرم افزار به پیکربندی شتاب گرافیکی مراجعه کنید.
پشتیبانی AMD و Nvidia GPU در ویندوز و لینوکس برای شبیه سازی XR بهبود یافته است
XR AVD را می توان به صورت تعبیه شده در ویندوزهای در حال اجرا اندروید استودیو اجرا کرد
بهبود جزئیات گزارش خرابی در ویندوز برای فعال کردن تخلیه کامل شبیه ساز
[رفع اشکال] شماره 410485043 دستگاه شبیه ساز Android XR با خطای Vulkan خراب می شود
[رفع اشکال] شماره 388718417 libndk_translation.so سقط شده و باعث خرابی در Arm64AesEncode می شود
اضافه شدن بررسی های اضافی سازگاری CPU با پیام های خطا (مثلاً فضای دیسک ناکافی)
رفع اشکالات مربوط به مدیریت حافظه Vulkan و موارد استفاده نامعتبر
پشتیبانی از عکس فوری Vulkan هنگام اجرا از روی ترمینال بررسی می شود و به درستی از آن صرفنظر می شود
پشتیبانی از افزونه VK_KHR_multiview و فرمت بافت A1R5G5B5 اضافه شده است
Pixel 9a AVD اضافه شد
یک منوی کشویی در کنترل های توسعه یافته برای تنظیمات برگزیده راننده GLES مهمان اضافه شد
[رفع اشکال] شماره 389330750 ارسال پیامک به شبیه ساز با کاراکتر Ñ پیام را تقسیم می کند
[رفع اشکال] شماره #382180488 عملکرد "emuglConfig_get_vulkan_hardware_gpu_support_info" به دلیل عدم شناسایی دستگاه های Vulkan از کار می افتد
توجه: شبیه ساز Android XR فقط در نسخه های Canary Studio موجود است
[رفع اشکال] شماره 368059211 دسترسی برنامهای به سیستمعامل Android Auto به VHAL با استفاده از Car Service API کار نمیکند
[رفع اشکال] شماره 348598513 شبیهساز دارای روش عمومی غیرضروری غیر ایمن در یک قفل چند رشتهای است.
[رفع اشکال] شماره 356896486 واقعاً تماسهای Vulkan API را هنگام اجرا با -feature -Vulkan غیرفعال کنید
شبیه ساز جدید اندروید XR
ما یک شبیهساز آزمایشی Android XR برای توسعه و آزمایش برنامههای ساخته شده با Jetpack XR SDK برای هدستها اضافه کردیم. برای اطلاعات در مورد نصب شبیهساز Android XR و راهاندازی محیط توسعه خود، به تنظیمات Jetpack XR SDK مراجعه کنید.
شبیه ساز Android XR یک ابزار آزمایشی است. با این وجود، تصمیم گرفتیم زودتر با شما به اشتراک بگذاریم - تا به شما اجازه آزمایش زودهنگام را بدهیم. به خصوص در برخی از تنظیمات GPU و درایور ویندوز، منتظر مشکلات باشید. همچنین ممکن است مشکلاتی در مورد آزمایش سازگاری برنامههای تلفن همراه دوبعدی موجود ایجاد شود. بازخورد شما به ما کمک می کند تا اولویت بندی ویژگی های آینده را بهبود بخشیم و راهنمایی کنیم.
تا کنون، شبیه ساز Android XR بر روی تنظیمات HW زیر آزمایش شده است:
- مک (ARM)
- ویندوز 11
- پردازنده گرافیکی nVidia، 4 گیگابایت vRAM، نسخه درایور 553.35 یا بالاتر
- 16 گیگابایت رم یا بیشتر
- 8 هسته یا بیشتر
مسائل شناخته شده
شبیه ساز - ثبات و عملکرد:
- قفل شدن یا از کار افتادن حیاتی سیستم در هنگام بوت یا در حین اجرای برنامه ها ممکن است در برخی از تنظیمات ویندوز رخ دهد. لطفاً با دنبال کردن راهنمای برنامهنویس Android Studio برای فعال کردن WHPX، مطمئن شوید که Windows Hypervisor Platform (WHPX) فعال است.
- مشکلاتی مانند عدم پاسخگویی عناصر AVD یا UI در لپتاپها پس از یک چرخه تعلیق-رزومه (مانند بستن لپتاپ و باز کردن آن).
- خرابی های گاه به گاه هنگام تغییر برنامه ها از "حالت صفحه اصلی" به "حالت تمام صفحه"
- API های Gemini هنوز در دسترس نیستند. برنامه الگوی شروع Gemini API خراب می شود.
شبیه ساز - شبیه سازی ورودی و خروجی:
- صفحهکلید مجازی برای قسمتهای جستجو و ویرایش ممکن است فقط تا حدی در میدان دید قابل مشاهده باشد
با استفاده از ماوس و صفحه کلید نمی توان عناصر را در جهت z (داخل و خارج از صفحه) جابجا کرد
ناپایداری ورودی صوتی میزبان میکروفون AVD ممکن است منجر به راه اندازی مجدد AVD و خرابی شود.
صدا گاهی ساکن است یا مخدوش می شود.
هنگامی که دوربین به خارج از اتاق نشیمن مجازی منتقل می شود، خطاهای رندر قابل مشاهده است.
تنظیمات ویندوز تیره تر از رنگ های معمولی نمایش داده می شوند.
پس از بیکار ماندن شبیه ساز و قفل کردن صفحه در macOS، صدا دیگر کار نمی کند. (با راه اندازی مجدد شبیه ساز آن را بازیابی می کند.)
هنگامی که دستگاه میزبان Wi-Fi را تغییر می دهد، اتصال شبکه قطع می شود.
با فعال کردن Caps Lock، حروف کوچک همچنان تایپ می شوند.
پیمایش با استفاده از پد لمسی در مک آسان نیست.
پیمایش کلیک و کشیدن روی برخی از عناصر رابط کاربری ممکن است از نظر طراحی کار نکند. اگر نه، از چرخ ماوس برای اسکرول استفاده کنید.
متن تار، رابط کاربری و سایر اشکالات در Chrome در برخی از پیکربندیهای سیستم ویندوز. راه حل احتمالی: فعال کردن WHP .
شبیه ساز - شبیه سازی هواپیماها و لنگرها:
- لنگرها گاهی اوقات در نزدیکی همان مکان بازپخش نمی شوند
- شیشه های متحرک ممکن است به دیوارها یا سقف نچسبند
- هواپیماهای شبیه سازی شده با طرح فیزیکی اتاق سه بعدی در حالت عبور مطابقت ندارند
- به طور کلی مناطق محدود برای لنگر انداختن اشیاء در اتاق مجازی
- مصنوع کوچک قابل مشاهده در نمای عبور در ویندوز
- در برخی موارد، قرار دادن لنگرها می تواند برنامه را خراب کند
- هنگام نزدیک کردن برنامهها به زمین در ویندوز، ممکن است خطوط سیاه در بالای برنامهها ظاهر شوند
شبیه ساز - دیگران:
- شبیه ساز فقط در حالت "مستقل" شروع می شود. حالت "Embedded" (UI جاسازی شده) هنوز پشتیبانی نمی شود.
- ورود به سیستم با حسابهای شبیهساز در ویندوز ممکن است باعث شود شبیهساز پاسخ ندهد
- محتوای UI ویندوز ممکن است پس از تغییر اندازه ناپدید شود (راه حل: فشار دادن دکمه "Home")
- در برنامه JXRCore ActivityPanelTest پانل ثانویه در ابتدا نمایش داده نمی شود
- موارد تنظیمات سریع ممکن است پس از یک دوره طولانی از تنظیمات سیستم ناپدید شوند.
- رابط کاربری شبیه ساز ممکن است در ابتدا خارج از منطقه صفحه نمایش ظاهر شود. اگر چنین است، اندازه پنجره شبیه ساز را کمی تنظیم کنید و باید به جای خود بازگردد.
- ممکن است هنگام استفاده از کنترل دسکتاپ از راه دور Chrome در Windows، شبیهساز راهاندازی نشود
- OpenXR تاکنون در شبیه ساز پشتیبانی نمی شود و برنامه های OpenXR ممکن است شبیه ساز را خراب کنند.
- هنگام تلاش برای ارسال گزارشهای اشکال با استفاده از تنظیمات توسعهیافته Android Studio در ویندوز، شکستهای نادر
- نماد «پیمایش به عقب» به درستی در برنامه «تنظیمات» قابل مشاهده نیست تا زمانی که مکاننما در مک به آن نزدیک شود.
- در برخی موارد، ساختمان ممکن است هنگام استفاده از ماژول "Baseline Profile" به عنوان بخشی از پروژه الگوی XR اشتباه کند.
- دسترسی "XR Talkback" تاکنون فقط تا حدی در شبیه ساز ادغام شده است
برنامه نمایش صحنه:
- جابجایی عناصر در Scene Viewer ممکن است باعث خرابی آن شود. برای حل این مشکل، موقعیت سر را کمی از موقعیت اولیه خود دور کنید (مثلاً با استفاده از پان، دالی، WASD، و غیره) قبل از تلاش برای حرکت دادن عنصر.
- اگر اندازه واقعی مدل سهبعدی کمتر یا بیشتر از محدودیتهای حداقل و حداکثر مقیاس (در حال حاضر به ترتیب روی 20 سانتیمتر و 70 متر تنظیم شده است) ویژگی اندازه واقعی 1:1 به درستی کار نخواهد کرد.
- مدل سه بعدی می تواند پس از بارگذاری روی اولین فریم بپرد
- Pixel AVD های جدید شامل Pixel 9، Pixel 9 Pro، Pixel 9 Pro XL و Pixel 9 Pro Fold اضافه شده است.
- اضافه شدن تصویر سیستم تبلت جدید برای بستنی وانیلی (API 35)
- Pixel 8a AVD اضافه شد
- رفع اشکال مختلف برای تاشو
- به روز رسانی Qt و رفع خرابی ها و هنگ های مربوط به qt
- [رفع اشکال] رفع خرابی و فریز کردن ویندوز با برنامههایی که از Vulkan استفاده میکنند
- [رفع اشکال] UI ثابت می شود که در Pixel Fold در حین فولد/گشودن رخ می دهد
- [رفع اشکال] نمایش نادرست نسخه اندروید به عنوان پیش نمایش بستنی وانیلی اندروید به جای API 35 در Mac M1.
- [رفع اشکال] شماره 296162661 : ویژگی HasSystem FeaTURE_SENSOR_HINGE_ANGLE در شبیهساز رایانه لوحی Pixel C به درستی برمیگردد
- رفع خرابی های مختلف مربوط به حالت swangle و پاکسازی تبلیغ کننده
تست شده با Android Studio Jellyfish Stable Patch 1.
- [رفع اشکال] Snapshot گاهی اوقات روی شبیه ساز تعبیه شده آویزان می شود
- [رفع اشکال] دکمه های «خیر» و «لغو» به درستی روی عکس فوری کار نمی کنند
- [رفع اشکال] دکمه های پد جهت کار نمی کنند
- [رفع اشکال] مشکل مشاهده شده در ویندوز را برطرف کرد که مانع از شروع شبیهساز در برخی شرایط هنگام استفاده از حالتهای GPU با ANGLE میشد، و پیام خطای "Failed to Initialize GL emulation" را در گزارش برمیگرداند. توجه داشته باشید که شروع شبیه ساز توسط خط فرمان با گزینه
-gpu swangle_indirect
ممکن است همچنان این خطا را در این نسخه ایجاد کند. اگر همچنان میخواهید شبیهساز را با استفاده از خط فرمان در ویندوز با رندر گرافیک نرمافزار با این نسخه شروع کنید، لطفاً-gpu swiftshader_indirect
استفاده کنید. - [رفع اشکال] میانبر مکان روی صفحه کلید یک نقشه غیرقابل استفاده را بارگیری می کند
- [رفع اشکال] هنگام تنظیم مکان، گفتگوی "ذخیره مسیر" وجود ندارد
تست شده با Android Studio Jellyfish Stable.
- به روز رسانی به Qt 6.5.3
- سازگاری برای بهروزرسانیهای Google Maps API مورد استفاده در ویژگیهای مکان در کنترلهای توسعهیافته شبیهساز، که در پایان ماه می انجام میشود.
- رفع خرابی با ضربه زیاد
- اصلاحات مختلف Pixel AVDs
- کتابخانه گرافیکی مورد استفاده برای رندر نرم افزار را به روز کنید
- [رفع اشکال] شماره 225541819 راهاندازی شبیهساز خرابی کروم در x86_64
- [رفع اشکال] شماره 314614435 - سوئیچ
-http-proxy
اشتباه تجزیه شده است
با Android Studio Iguana Stable تست شده است.
- [رفع اشکال] شماره 314614435 : رفع مشکلی که سوئیچ
-http-proxy
اشتباه تجزیه شده است
با Android Studio Iguana Stable تست شده است.
- [رفع اشکال] شماره 312677259 : ثابت ماندن صفحه نمایش در شبیه ساز تعبیه شده پس از تغییر اندازه پنجره.
با Android Studio Iguana Stable تست شده است.
- دستگاه هایی به شبیه ساز اضافه شدند از جمله:
- Pixel Fold
- تبلت پیکسل
- پیکسل 8
- پیکسل 8 پرو
- پیکسل 7a
- آزمایش ادغام gRPC: نقاط پایانی gRPC اکنون برای آزمایشهای ابزاری که در داخل شبیهساز اجرا میشوند در دسترس هستند و امکان تست سناریوهای واقعی را فراهم میکنند. این ویژگی به توسعه دهندگان این امکان را می دهد تا از طریق تست های ابزار دقیق اندروید با نقطه پایانی gRPC میزبانی شده توسط شبیه ساز Android به طور ایمن تعامل داشته باشند.
- رفع اشکال مختلف
تست شده با Android Studio Hedgehog Stable و Iguana Beta 1.
- مشکل وب کم شبیه ساز را که اجازه ضبط صفحه نمایش در فرمت mp4 را نمی دهد، برطرف کنید.
- رفع خرابی شبیهساز در Pixel Fold AVD هنگامی که در حین ضبط صفحه نمایش باز میشود.
- رفع مشکلی که Pixel Fold پوسته تلفن متفاوتی را با صفحهکلید جدا شده نشان میدهد و غیرقابل استفاده است (در Windows، Mac Intel و Linux رفع شد)
- رفع اشکال ظاهری در حسگرهای مجازی در حالت مستقل (در ویندوز، مک اینتل و لینوکس رفع شد)
- ارائه راه حل برای برخی از خرابی ها، به خصوص در هنگام بستن شبیه ساز، رفع شد
تست شده با Android Studio Giraffe Patch 4 و Hedgehog Stable.
- اجرای جدید تاشو برای شبیهسازی بهتر دستگاه Pixel Fold، با آخرین API 34 کار میکند
- ارتقاء پشتیبان گرافیکی: ما پروتکل gfxstream را برای باطن گرافیک خود پیاده سازی کرده ایم، این بهبود عملکرد کلی گرافیک و پایداری سیستم شما را افزایش می دهد. علاوه بر این، معرفی پشتیبانی از Vulkan 1.3 که با تصویر سیستم با API 34 آغاز می شود
- درخواست ویژگی : گزینه ای برای غیرفعال کردن ژست نزدیک به زوم یا تخصیص مجدد کلید میانبر آن
- [رفع اشکال] شماره 302562962 رفع خرابی وب کم شبیه ساز هنگام استفاده از MacOS sonoma
- [رفع اشکال] شماره 293503871 رفع مشکلی که در آن هنگام راه اندازی مجدد شبیه ساز، تنظیمات «میکروفون» ذخیره نمی شود
- [رفع اشکال] شماره 270386314 رفع خطای انیمیشن که در آن نوار کناری پس از به حداقل رساندن صفحه AVD باز می ماند
- [رفع اشکال] شماره 154896775 رفع اشکال ابزار ارسال
تست شده با Android Studio Giraffe Patch 1 و Hedgehog Canary 16.
- مطابق با الزامات GAS HW برای سنسورها در شبیه ساز AAE
- [رفع اشکال] شماره 266201208 پیامک عبری در API 33 ارسال نمیشود
- [رفع اشکال] شماره 257097404 شبیه ساز زمان صحیح را پس از بیدار شدن میزبان در API 29 و 30 نشان نمی دهد
- [رفع اشکال] شماره 228201899 نمیتوان نقشههای گوگل را در کنترلهای توسعهیافته شبیهساز Android مشاهده کرد
با Android Studio Hedgehog Canary 8، Giraffe Beta 5 و Flamingo Stable تست شده است.
- جهت گیری و اعوجاج دوربین شبیه ساز را برطرف کنید.
- [رفع اشکال] شماره 257097404 "Emulator زمان صحیح را پس از بیدار شدن میزبان نشان نمی دهد". این باگ همچنان برای API 29 و API 30 قابل تکرار است.
- [رفع اشکال] شماره 243456582 "انتشارهای اندروید پس از API 30 ممکن است به درستی در شبیه ساز در ماشین های Mac M1 شروع نشود"
با Android Studio Hedgehog Canary 2، Giraffe Beta 1 و Flamingo Stable تست شده است.
- پشتیبانی از Pixel Fold و Pixel Tablet AVDs را اضافه کنید.
- مشکل خرابی gLinux را بهبود بخشید.
- [رفع اشکال] شماره 215231636 "Emulator با API بالاتر از API 30 در پردازنده نسل دوازدهم اینتل کار نمی کند".
- [رفع اشکال] شماره 275397905 سطح بالای خرابی در شبیهساز Android M1 هنگام جابجایی مکرر فوکوس مکاننما به داخل و خارج شبیهساز.
- مشکل شناخته شده راه اندازی AVD زمانی که گزارش خرابی شبیه ساز جدیدتر وجود دارد. برای اطلاعات بیشتر به عیب یابی شبیه ساز مراجعه کنید.
تست شده با Android Studio Giraffe Canary 10، Flamingo RC و Electric Eel Patch 2.
- [رفع اشکال] شماره 267647323 شبکه در شبیه ساز کار نمی کند که از Android Studio شروع شده است
- [رفع اشکال] شماره 268498686 صفحه شبیهساز سوسو میزند
- [رفع اشکال] شماره 270034824 عملکرد شبیه ساز پس از به روز رسانی به نسخه 33.1.1 کاهش یافت
- [رفع اشکال] شماره 225541819 شروع شبیهساز خرابی کروم در x86_64
- [رفع اشکال] شماره 257097404 شبیه ساز زمان صحیح را پس از بیدار شدن میزبان نشان نمی دهد
- اضافه کردن گزارش خرابی برای دستگاه های Apple M1
تست شده با Android Studio Giraffe Canary 2، Flamingo Beta 1 و Electric Eel Patch 1.
- بهینه سازی سرعت شبکه
- پشتیبانی از ماوس در Embedded Emulator
- بهبودهای Virtio-snd
- در حین نصب شبیهساز اندروید، استفاده از سیملینکها را غیرفعال کنید
- رفع خرابی در بررسی شبیه ساز
با Android Studio Dolphin، Electric Eel RC1 و Flamingo Canary 9 تست شده است.
- [رفع اشکال] خرابی های AVD که هنگام ورود به فروشگاه Play رخ می دهد را برطرف کنید.
با Android Studio Dolphin، Electric Eel Beta 2 و Flamingo Canary 5 تست شده است.
- [رفع اشکال] شماره 249948338: پارامتر منطقه زمانی کار نمی کند
- [رفع اشکال] شماره 249366543: گزینه Emulator -dns-server بعد از API 31 کار نمی کند
تست شده با Android Studio Dolphin و Electric Eel Beta 1.
این به روز رسانی شامل بهبودها و اصلاحات زیر است:
- [رفع اشکال] شماره 247843000: خطای مدیریت مسیر نسبی AVD
- اندازه دیسک را برای API 24 و جدیدتر افزایش دهید
تست شده با Android Studio Dolphin و Electric Eel Canary 10.
این به روز رسانی شامل بهبودها و اصلاحات زیر است:
- [رفع اشکال] خرابی Embedded Emulator AVD در پنجره Extended Controls
- [رفع اشکال] شماره 183139207: مشکلات صوتی مرتبط با میکروفون فعال کننده شبیه ساز
- [رفع اشکال] شماره 229764024: اشکال لمسی چسبنده AVD که منجر به مشکلات رفتار رابط کاربری می شود
- [رفع اشکال] خطا در راه اندازی API 33 AVD در Mac M1.
- [رفع اشکال] شماره 243053479: سرعت پایین شبکه پس از بهروزرسانی شبیهساز
- [رفع اشکال] شماره 244617627: مکان Maps ناکارآمد در ویندوز و لینوکس
- [رفع اشکال] شماره 232971796: دکمه "تماس با دستگاه" غیرفعال در کنترل های توسعه یافته > صفحه تلفن
- شبیه ساز اندروید را به minigbm به روز کنید
- مهاجرت اسکریپت های ساخت به پایتون 3
تست شده با Android Studio Dolphin Beta 5 و Electric Eel Canary 9.
دانلودهای مستقل شبیه ساز اکنون در دسترس هستند. اگر در این آخرین نسخه پایدار با مشکل یا خرابی مواجه شدید، لطفاً یک اشکال را ثبت کنید و نسخهای که قبلاً کار میکرده را از بایگانی دانلود شبیهساز دانلود کنید.
این به روز رسانی شامل بهبودها و اصلاحات زیر است:
- پشتیبانی بهتر از مسیر یونیکد در ویندوز
- مدیریت بهتر خاموش شدن شبیه ساز تا راه اندازی جدید همان AVD موفق شود.
- طراحی AVD تاشو و تنظیمات پیش فرض به روز شده است
- دکمه های شبیه ساز Wear به روز شده است
- بهبود جریان صوتی gRPC
- دستور کنسول شبیه ساز قابل تغییر اندازه اضافه شد
- Chrome Fix برای API 31
- [رفع اشکال] تأیید حساب Google با GmsCore نسخه 21.42.18 انجام نشد
تست شده با Android Studio Dolphin Canary 8 و Chipmunk RC 1.
این به روز رسانی شامل بهبودها و اصلاحات زیر است:
- ابزاری را برای بارگیری توابع Vulkan با فالبک اضافه کنید
- [رفع اشکال] خطای ساخت gcc8 را برطرف کنید
تست شده با اندروید استودیو Dolphin Canary 7.
این به روز رسانی شامل اصلاح زیر است:
- [رفع اشکال] هنگام ذخیره عکس فوری در M1، فشار حافظه را نادیده بگیرید
تست شده با Android Studio Bumblebee Patch 1 و Chipmunk Canary 6.
این به روز رسانی شامل بهبودها و اصلاحات زیر است:
- [رفع اشکال] امکان ورود به برنامه ها وجود ندارد
- [رفع اشکال] شماره 215368358: «راهاندازی مجدد adb» در پلتفرم اینتل با «درخواست خاموش کردن vcpu»، avd را از کار میاندازد.
تست شده با Android Studio Bumblebee Patch 1 و Chipmunk Canary 6.
این به روز رسانی شامل اصلاح زیر است:
- [رفع اشکال] خطای حلق آویز شبیه ساز در ماشین های M1.
با Android Studio Arctic Fox، Bumblebee Beta 4 و Chipmunk Canary 6 تست شده است.
این به روز رسانی شامل بهبودها و اصلاحات زیر است:
- دکمه های سایش به شبیه ساز Wear OS اضافه شد.
- همه ویژگی های خودرو را در تب VHAL قابل ویرایش کرد.
- [رفع اشکال] تأیید حساب Google با GmsCore نسخه 21.42.18 انجام نشد.
- [رفع اشکال] Netshaper به خوبی با VirtioWifi کار نمی کند.
- [رفع اشکال] فرمان کنسول موس رویداد کار نکرد.
- بررسی KVM برای ایجاد AVD محلی اضافه شد.
این به روز رسانی شامل بهبودها و اصلاحات زیر است:
- پورت های کنسول برای Fuchsia فعال شده است.
- هنگام تغییر اندازه یک پنجره چند نمایشگر، جهت نادیده گرفته می شود.
- Wi-Fi: اضافه شدن پشتیبانی برای فیلتر کردن بسته های unicast بر اساس آدرس مک MAT.
- Wi-Fi: رفع خرابی زمانی که vmnet در حال استفاده است.
این به روز رسانی شامل بهبودها و اصلاحات زیر است:
- اضافه شدن قابلیت تغییر اندازه آسان به یک پنجره به اندازه دسکتاپ یا تبلت.
- پشتیبانی از ورودی چند لمسی از دستگاه های میزبان سازگار اضافه شده است.
- VirtioWifi: پشتیبانی از شبکه شیر اضافه شده است.
- ورودی چرخشی برای تصاویر سیستم Wear فعال شده است.
- مشکل پیکربندی صوتی gRPC برطرف شد.
- پخش شبیه ساز SensorReplay به روز شده برای پشتیبانی از سنسورهای استاندارد اندروید.
- شبیه ساز را به وسایل جانبی و دستگاه های با استفاده از USB با عبور USB متصل کرد.
این به روز رسانی شامل بهبودها و اصلاحات زیر است:
- macOS: مشکلات مربوط به اعوجاج ورودی صدا برطرف شد.
- اضافه شدن پشتیبانی از virtio-vsock در فضای کاربری.
- تصاویر سیستم آینده از کنسول virtio برای logcat و پیام های هسته استفاده خواهند کرد.
- سرعت رندر Vulkan را افزایش دهید.
- اضافه شدن پشتیبانی از اشکال زدایی فوری در صورت شکست تست.
- virtio-gpu: تعاریف به روز شده برای پشتیبانی از آخرین فهرست منابع حباب.
- اضافه شدن پشتیبانی از عکس فوری برای حمل و نقل گرافیکی نوع 'asg'.
- macOS: اضافه شدن پشتیبانی برای ساخت در برابر macOS SDK 11.1+.
- KVMclock به طور پیش فرض در تصاویر سیستم جدیدتر فعال است.
- پشتیبانی از حسگر ضربان قلب به شبیه سازهای Wear اضافه شده است.
- libportability باطن Vulkan حذف شد.
- پشتیبانی از ویژگی های بیشتر در شبیه ساز مودم اضافه شده است.
این به روز رسانی شامل چندین ویژگی جدید، بهبود ویژگی های موجود و رفع اشکال است.
پشتیبانی از سنسورهای لولا برای دستگاه های تاشو اضافه شده است. این به یک تصویر سیستم اندروید 11 و پیکربندی AVD آینده نیاز دارد. نمای سه بعدی تاشو و پارامترهای لولا اکنون با پیش تنظیمات تاشو موجود یکپارچه شده است. موارد زیر را می توان به عنوان مثال با فایل
config.ini
AVD تاشو 7.3 استفاده کرد:hw.sensor.hinge = yes hw.sensor.hinge.count = 1 hw.sensor.hinge.type = 1 hw.sensor.hinge.ranges = 180-360 hw.sensor.hinge.defaults = 180 hw.sensor.hinge.areas = 54.7-0 hw.sensor.posture_list=4, 3 hw.sensor.hinge_angles_posture_definitions=210-360, 180-210 hw.sensor.hinge.fold_to_displayRegion.0.1_at_posture=4
دستگاههای تاشو اکنون دارای یک پارامتر فرعی نیز هستند. ویژگی
config.ini
hw.sensor.hinge.sub_type = hinge/fold
اکنون در دسترس است. برای مطالعه بیشتر به وبلاگ توسعه اندروید 11 با شبیه ساز اندروید مراجعه کنید.سنسور لولا اکنون به طور پیش فرض فعال است.
اگر یک دستگاه تاشو پیکربندی شده باشد، شبیه ساز اکنون به روز رسانی حسگرهای زاویه لولا و تغییرات وضعیت بدن را برای مهمان ارسال می کند. دستگاههای تاشوی موجود اکنون با فشار دادن دکمههای تا و باز کردن نوار ابزار، زاویه و وضعیت حسگر لولا را بهروزرسانی میکنند.
کد منبع شبیه ساز لینوکس اکنون از کامپایل متقابل از میزبان های x86_64 تا arm64 پشتیبانی می کند و امکان اجرای تصاویر سیستم arm64 را با مجازی سازی KVM فراهم می کند. در حال حاضر، فقط
-gpu swiftshader_indirect
(پردازش میزبان Swiftshader arm64) پشتیبانی میشود، اما مجموعه سازگاری از کتابخانههای میزبان GPU libEGL/libGLESv2 نیز میتواند با جایگزینی lib64/gles_swiftshader با آنها و سپس راهاندازی مجدد با-gpu swiftshader_indirect
استفاده شود. عکسهای فوری نیز ممکن است کار نکنند (-no-snapshot
به خط فرمان اضافه کنید). دستورالعمل:mkdir emu cd emu repo init -u https://android.googlesource.com/platform/manifest -b emu-master-dev --depth=1 repo sync -qcj 12 cd external/qemu pip install absl-py pip install urlfetch sudo apt-get install crossbuild-essential-arm64 python android/build/python/cmake.py --noqtwebengine --noshowprefixforinfo --target linux_aarch64
پشتیبانی از Apple Silicon در حال انجام است.
- پشتیبانی از سمت میزبان برای منابع حباب منسجم میزبان virtio-gpu اضافه شده است.
- با توجه به نحوه عملکرد رندر شبیه ساز، ما اکنون virtio-gpu virtqueue را در رشته vcpu پردازش می کنیم (زیرا به هر حال رندر در رشته های دیگر بارگذاری می شود). رندر virtio-gpu در نسخه بعدی تصویر سیستم و شبیه ساز فعال خواهد شد.
- در یک تصویر سیستم آینده، شبیه ساز قادر خواهد بود تمام گرافیک ها را با یک پشته مبتنی بر virtio-gpu اجرا کند.
- عبور USB اکنون با استفاده از
-qemu -usb -device usb-host,vendorid=<usb-vendor-id>,productid=<usb-product-id>
در ویندوز در دسترس است. (این همچنین باید قبلاً روی لینوکس و macOS کار می کرد) - کتابخانه های WebRTC را به M83 به روز کرد.
- این شبیه ساز اکنون از پخش صدا در کانتینرها از طریق WebRTC پشتیبانی می کند.
- نقطه پایانی لوله داروین حذف شده است.
- رمزگشایی CUDA VPx برای ویدیو اکنون در دسترس است، اگر رمزگشایی CUDA VPx در سخت افزار موجود باشد، از طریق متغیر محیطی
ANDROID_EMU_MEDIA_DECODER_CUDA_VPX=1
. - در macOS، SSE 4.1 و 4.2 اکنون از داخل مهمان اندروید در دسترس هستند.
- در macOS، INVTSC اکنون به طور پیش فرض فعال است. این می تواند دقت اندازه گیری زمان را از مهمان بهبود بخشد.
- اکنون ما ردیابی می کنیم که کدام صفحه کنترل توسعه یافته توسط کاربر در متریک انتخاب شده است.
- شبیه ساز لینوکس اکنون از ساعت paravirtualized KVM زمانی که نسخه هسته مهمان >= 5.4 باشد (تصاویر سیستم R یا جدیدتر) استفاده می کند.
- Emulator اکنون از LZ4 برای فشرده سازی هسته های مهمان استفاده می کند و آن را با خط لوله مدرن هسته سازگار می کند.
دستورات کنسول برای به دست آوردن دایرکتوری AVD شبیه ساز، مسیر فایل کشف در مورد استفاده تعبیه شده در استودیو، و مسیر به عکس های فوری اضافه شده است:
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 فعلی در Extended Controls > Settings اضافه کردهایم. برای مخفی کردن جهانی فریمهای دستگاه برای همه AVDها، پرچم ویژگی
NoDeviceFrame
را در دسترس قرار دادهایم، که میتوان آن را از طریق راهاندازی شبیهساز از خط فرمان با قاب-feature NoDevice
فعال کرد، یا برای قفل کردن آن، اضافه کردنNoDeviceFrame = on
به~/.android/advancedFeatures.ini
(اگر از قبل این فایل را ایجاد کند) فعال شود.یک مورد کشویی در صفحه سلولی برای روشن و خاموش کردن پشتیبانی اندازهگیری اضافه شده است، این یک گزینه غیرفعال برای تصاویر سیستم قدیمیتر است که از کلید سنجش سنجش 5G پشتیبانی نمیکنند.
- همچنین دستور کنسول را برای همین منظور اضافه کرد:
gsm meter on|off
- همچنین دستور کنسول را برای همین منظور اضافه کرد:
Toolchain/build به C++17 ارتقا یافته است.
- کلیپ بورد اکنون باید کار کند.
- مشکلی که در آن کاراکترهای بزرگ به صورت حروف کوچک در شبیه ساز ارائه می شدند، برطرف شد.
- رفع توکن کنسول بارگیری از مسیر یونیکد در ویندوز.
- پیغام خطای
SO_REUSEPORT
در لینوکس رفع شد. - مشکل خرابی عکس فوری هنگام ارسال دستورات عکس فوری از طریق gRPC و همچنین هنگام فشار دادن دکمه ذخیره عکس فوری در شبیه ساز تعبیه شده اندروید استودیو برطرف شد.
هنگام استفاده از شبیهساز لینوکس تعبیهشده در استودیو، متوجه شدیم که اگر این کار از طریق دسکتاپ از راه دور Chrome انجام شود، اشکالی وجود دارد که در آن
XDG_RUNTIME_DIR
تنظیم نشده است و ممکن است به دلیل قرار دادن فایلهای کشف شبیهساز درXDG_RUNTIME_DIR
شبیهساز تعبیهشده ظاهر نشود. میتوانید وضعیت مشکل مربوطه را در ردیاب مشکل Chrome بررسی کنید.به عنوان یک راه حل، شبیه ساز اکنون به استفاده از فایل های کشف در یک فهرست احتمالاً متفاوت که بر اساس UID کاربر است باز می گردد:
/run/user/<uid>
.شبیهساز تعبیهشده: دستگاههایی که گوشهها/بریدگیهای گرد دارند اکنون بهدرستی طرحبندی خود را تغییر میدهند تا جایی برای گوشهها و بریدگیها باز شود. این نیاز به بوت سرد از آن شبیه سازها دارد.
نقطه پایانی gRPC اکنون از ارسال پیامک به دستگاه پشتیبانی می کند.
- ما شاهد مشکلات سازگاری در اجرای شبیه ساز ویندوز با فعال Riot Vanguard بوده ایم. شبیه ساز ویندوز اکنون ضد تقلب Vanguard را شناسایی می کند و در صورت شناسایی Vanguard یک پیام هشدار ظاهر می کند.
- رفع خطای
FD_SETSIZE
در ویندوز. ما اکنون ازWSAEventSelect()
به جایselect()
برای ایجاد اتصالات غیر مسدود کننده به سرورهای حلقه بک استفاده می کنیم. - اضافه شدن پشتیبانی از ویژگی F16C CPUID به شبیه ساز لینوکس با رفع مشکلات اجرای برخی از برنامه های ARM64 از طریق ترجمه NDK. macOS/Windows در حال انجام است.
- پخش مسیر gpx/kml برای دنبال کردن مُهرهای زمانی ثابت شد.
- نماد جهش ثابت در راه اندازی برای MacOs.
- اگر
hw.audioInput=no
وhw.audioOutput=no
درconfig.ini
، صدای شبیه ساز اکنون به درستی غیرفعال شده است. - مشکلی برطرف شد که در آن اگر پنجره شبیهساز در حالی که پنجره کنترلهای توسعهیافته باز بود اما فعال نبود، به حداقل برسد، پنجره کنترلهای توسعهیافته هنگام تغییر اندازه پنجره شبیهساز همچنان ظاهر میشود. ما رفتار (مورد پنجره کنترل های توسعه یافته فعال) را در یک به روز رسانی آینده به طور کامل حذف خواهیم کرد.
- رفع یک اشکال پوسته پوسته با اتصال Wi-Fi هنگام شروع شبیه ساز.
- هنگامی که شبیهساز دستورات پوسته را با وقفههای زمانی طولانی یا نامحدود صادر میکند، حالت Hang-on-Exit برطرف شد.
- pc-bios به روز شده با اصلاحاتی برای پشتیبانی بهتر از تصاویر بزرگ ارسال شده به
-initrd
. بایوس قبلی از روش بسیار ناکارآمدی استفاده می کرد. - رفع خرابی در حین خاتمه زمانی که از گزینه
-wifi-server-port
استفاده می شود. - در صورتی که گزینه های پشتیبانی نشده به
-prop
منتقل شوند، شبیه ساز اکنون یک هشدار چاپ می کند (فقط props qemu.* پشتیبانی می شود). - هنگام ساخت شبیه ساز در ویندوز، احتمال کمتری برای مشاهده شکست های پوسته پوسته برای نوشتن روی فایل ها وجود خواهد داشت. برای اطلاعات بیشتر، دستورالعملهای ساخت ویندوز را ببینید.
- دکمه زوم غیرفعال برای AVD های تاشو که باعث ایجاد مشکل می شد.
- شبیه ساز اکنون به درستی زمان بوت را از راه اندازی مجدد دستگاه گزارش می دهد.
- لینوکس: در مواردی که مجوزهای KVM کافی وجود ندارد، شبیه ساز اکنون دستورالعمل های اشکال زدایی را سریعتر چاپ می کند.
- مشکلی که شبیه ساز نمی توانست تصاویر اخیر سیستم را بدون شتاب بوت کند، برطرف شد.
- رفع خرابی یا خرابی حافظه هنگام شروع از یک آشکارساز بوت کامل.
- رفع نشت حافظه در طول جلسات ضبط طولانی صفحه.
- نمادهای شبیهساز بهروزرسانی شدند تا نشاندهنده استودیو 4.1 را نشان دهند.
- پشتیبانی بهتر برای تشخیص جلسات از راه دور در ویندوز اضافه شده است.
- مشکلی که در آن آخرین بازی Asphalt 9 با صفحه سیاه رندر شده بود برطرف شد.
- هرزنامه مربوط به شستشوی بافر نقشهبرداری شده با
NULL
حذف شد. - وضعیت مسابقه هنگام از بین بردن حالت Vulkan هنگام خروج برنامه مهمان Vulkan برطرف شد.
- سایهزنهای شبیهساز Vulkan ASTC/ETC2 اکنون در کتابخانه libOpenglRender قرار گرفتهاند. این در مقایسه با خواندن از سیستم فایل قابل اعتمادتر خواهد بود.
- مشکلی در Vulkan برطرف شد که در آن اگر با یک نمونه Vulkan 1.0 در هاست اجرا شود،
vkGetImageMemoryRequirements2KHR
به اشتباه فیلدpNext
ساختارVkMemoryRequirements2
برگشتی را پاک میکند. - رفع نشت حافظه در رندر Vulkan.
- یک رگرسیون اخیر که در آن سایهزنهای GLSL ES 1.00 با نام متغیرهایی مانند
isampler2D
نتوانستند کامپایل شوند، برطرف شد. - مترجم سایه زن ANGLE به روز شده با اصلاحات مختلف که خطای احتمالی در کامپایل سایه بان ها در لینوکس را برطرف می کند.
- اکنون در صورتی که سایهزن ساده فریمبافر نتواند کامپایل شود، شبیهساز را خراب میکنیم تا بتوانیم این پدیده را پیگیری کنیم.
- مترجم سایه زن ANGLE به روز شد تا با ANGLE بالادست همراه باشید. این یک مشکل در مورد خرابی حافظه هنگام ترجمه و تا کردن ثابت سایهزنهای OpenGL ES که از ماتریسهای غیر مربعی استفاده میکردند، برطرف کرد. مترجم سایهزن اکنون یک کتابخانه مشترک جداگانه است،
libshadertranslator.dll
. - مشکل در مقداردهی اولیه Vulkan در برخی از درایورهای GPU، که در آن برخی از عملکردهای دستگاه 1.1 یافت نشد، برطرف شد.
- Vulkan: ما دوباره به استفاده از لودر از پیش ساخته شده بازگشتهایم تا سیستمی را که لودر Vulkan مشکلاتی را در برخی تنظیمات ایجاد میکند، مورد استفاده قرار دهیم. راه حل بهتری پیدا خواهد کرد
- مشکل هنگام استفاده از حافظه خارجی Vulkan که میتوانست شاخصهای نامتناسب نوع حافظه را روی میزبان وارد کرده باشد، برطرف شد.
- مشکل در شبیه سازی
GL_ALIASED_POINT_SIZE_RANGE
که در آن enum در هاست پشتیبانی نمی شد، رفع شد. - مشکلی که در برخی از GPU های میزبان، سایه بان های Skia به دلیل خطاهای مربوط به
GL_EXT_shader_framebuffer_fetch
نمی توانستند کامپایل شوند، برطرف شد. - از آنجایی که کپی ما از رندر D3D9 ANGLE چند نسخه پیش حذف شد، اکنون کاربرانی را که در آن رندر بودند در صورتی که در تنظیمات برگزیده UI انتخاب شده بود، به صورت خودکار به d3d11 ANGLE تغییر دهیم.
- اطلاعات دیباگ بیشتر به مقداردهی اولیه WGL در ویندوز اضافه شده است تا خرابی ها را ردیابی کند.
- وقتی
hw.gltransport=virtio-gpu-pipe
، عملکرد با چرخش نکردن روی میزبان در انتقال از میزبان به مهمان بهبود مییابد. - اضافه شدن گزارش اشکال زدایی بیشتر برای زمانی که شبیه سازی OpenGLES نمی تواند مقداردهی اولیه شود.
- مشکل سوسو زدن یا عدم نمایش ویدیوهای یوتیوب در بارگذاری عکس فوری برطرف شد.
- در حال حاضر به رمزگشایی نرمافزاری برای libvpx بازگشتهایم زیرا مشکلاتی را در مورد رمزگشایی سختافزاری CUDA برای libvpx مشاهده کردهایم. اگر یک پیادهسازی رمزگشایی سختافزاری CUDA در سمت میزبان دارید، رمزگشایی سختافزار libvpx میتواند از طریق متغیر محیطی
ANDROID_EMU_MEDIA_DECODER_CUDA_VPX=1
دوباره فعال شود.
این به روز رسانی شامل پشتیبانی از اجرای شبیه ساز به طور مستقیم در اندروید استودیو و دستگاه های مجازی با حالت پنجره Freeform به طور پیش فرض فعال است.
شبیه ساز اندروید اکنون می تواند مستقیماً در Android Studio اجرا شود . از این ویژگی برای حفظ املاک و مستغلات صفحه نمایش، برای پیمایش سریع بین شبیه ساز و پنجره ویرایشگر با استفاده از کلیدهای میانبر، و سازماندهی گردش کار IDE و شبیه ساز خود در یک پنجره برنامه استفاده کنید.
اکنون میتوانید با انتخاب نمایه سختافزار تبلت 13.5 اینچی هنگام ایجاد یک دستگاه مجازی در Android Studio، یک AVD با حالت پنجره Freeform فعال کنید. این نمایه سختافزاری به یک تصویر سیستم با Android 11 Developer Preview 3 یا بالاتر نیاز دارد.
تغییر اندازه پنجره های فرم آزاد در حال حاضر به دلیل مشکلات انتقال تمرکز به مدیر پنجره شکسته شده است. این موضوع در نسخه بعدی تصویر سیستم اندروید 11 مورد بررسی قرار خواهد گرفت.
این بهروزرسانی شامل تصاویر سیستم اندروید 11 (سطح API 30) و عملکرد بهبود یافته هنگام اجرای باینریهای ARM است.
اکنون می توانید با انتخاب یکی از تصاویر سیستم سطح 30 API موجود، یک AVD ایجاد کنید که اندروید 11 را اجرا می کند:
- x86 : شامل هر دو ABI x86 و ARMv7 است.
- x86_64 : شامل x86، x86_64، ARMv7 و ARM64 ABI است.
اگر قبلاً نمی توانستید از شبیه ساز Android استفاده کنید زیرا برنامه شما به باینری های ARM وابسته بود، اکنون می توانید از تصویر سیستم Android 9 x86 یا هر تصویر سیستم Android 11 برای اجرای برنامه خود استفاده کنید – دیگر نیازی به دانلود یک تصویر سیستم خاص برای اجرای باینری های ARM نیست. این تصاویر سیستم اندروید 9 و اندروید 11 به طور پیشفرض از ARM پشتیبانی میکنند و در مقایسه با نمونههایی که شبیهسازی کامل ARM را دارند، عملکرد بسیار بهتری را ارائه میدهند.
- برخی از باینری های ARMv7 روی تصاویر سیستم اندروید 11 x86 و x86_64 اجرا نمی شوند. هنگام هدف قرار دادن اندروید 11، ساخت ARM64 را در نظر بگیرید.
این به روز رسانی شامل بهبودها و اصلاحات زیر است:
- ویندوز: شبیه ساز اکنون به جای کامپایل شدن با
libgcc
به صورت ایستا، به DLLlibgcc
که ما ارسال می کنیم متکی است. - لینوکس: پشتیبانی LogCat را به API GRPC اضافه کرد. برای اطلاعات بیشتر در مورد GRPC ، به شبیه ساز جریان GRPC (لینوکس) مراجعه کنید.
- این شبیه ساز اکنون شامل ساختاری بدون سر برای مهمانان 32 بیتی x86 (
qemu-system-i386
) است. این ویژگی تصاویر x86 32 بیتی را برای سطح API 26 و پایین تر امکان پذیر می کند تا با ساخت بدون سر اجرا شود. توجه داشته باشید که برای میهمانان 32 بیتی x86 با API 27 و بعد از آن ، شبیه ساز از موتور 64 بیتی (qemu-system-x86_64
) استفاده می کند زیرا در این تصاویر سیستم ، در حالی که فضای کاربران 32 بیتی است ، هسته 64 بیتی است. Android Studio از هسته برای انتخاب موتورهای شبیه سازی استفاده می کند. - اکنون می توانید مسیرهای کتابخانه QT سفارشی را با استفاده از متغیر محیط
ANDROID_QT_LIB_PATH
مشخص کنید. - اکنون می توانید شبیه ساز را با باینری های قبلی که از QEMU1 استفاده می کنند ، در صورتی که اجرایی QEMU1 (
emulator[64]-[x86|arm|etc]
) در فهرست شبیه ساز قرار دهید ، اجرا کنید. - ویندوز: مسئله ای را برطرف کرد که گاهی اوقات می تواند با پیام "درخواست خاموش کردن VCPU" شروع به کار کند.
- مسئله ای را با یک سد خط لوله غیر ضروری در بافت های فشرده شده تقلید شده در ولکان برطرف کرد.
- خطایی که با درخواست پروکسی HTTP در هنگام استفاده از رمزگذاری انتقال خرد شده رخ داده است. برای اطلاعات بیشتر ، به جزئیات متعهد مراجعه کنید.
این به روزرسانی شامل اصلاح زیر است:
- ویندوز: مشکلی را برطرف کرد که دوربین صحنه مجازی و وب کم روی شبیه ساز کار نمی کنند.
این به روزرسانی شامل پیشرفت ها و اصلاحات زیر است:
- پشتیبانی از چندین نمایشگر سخت افزار مجازی هنگامی که یک سرویس مهمان برای شمارش و تنظیم هر صفحه نمایش وجود دارد. چندین نمایشگر سخت افزار مجازی در بروزرسانی تصویر سیستم شبیه ساز آینده گنجانده خواهد شد.
- گزینه خط فرمان جدید اضافه شده است:
-delay-adb
. این گزینه پردازش بسته های ADB را سرکوب می کند تا زمانی که مهمان بوت شدن را به اتمام برساند (یک بوت سرد). این گزینه به حل مسائلی که می تواند در صورت استفاده از شبیه ساز در یک محیط CI که شبیه ساز را راه اندازی مجدد می کند ، کمک می کند. - خطایی که هنگام بارگذاری عکس های فوری رخ داده است ، برطرف می شود که
glIsRenderbuffer
مقدار نادرست را برمی گرداند. - هنگامی که میهمان اندرویدی دوباره راه اندازی می شود ، برخی از مشکلات را با حالت بی نظیر برطرف کرد.
- ویندوز: مشکلات ثابت که مانع از شروع شبیه ساز از زمانی که نام کاربری ویندوز دارای کاراکترها یا فضاهای غیر ASCII است ، جلوگیری می کند.
- Snapshots UI برای تصاویر سیستم خودرو غیرفعال است زیرا عکسهای فوری در حال حاضر برای این تصاویر سیستم پشتیبانی نمی شوند.
این به روزرسانی شامل چندین ویژگی جدید ، پیشرفت در ویژگی های موجود و رفع اشکال است.
برای حفظ بهتر شبیه ساز ، ما دیگر باینری های ویندوز QEMU1 و 32 بیتی حمل نمی کنیم. اگر از ویندوز 32 بیتی استفاده می کنید ، نمی توانید به نسخه 29.0.6 ارتقا دهید.
اگر می خواهید AVD را اجرا کنید که از یک تصویر سیستم Android Q استفاده می کند ، اکنون باید از نسخه 29.0.6 (این نسخه نسخه) یا بالاتر استفاده کنید.
این به روزرسانی کار ما را در مورد ابتکار عمل Marble Project که در نوامبر 2018 در اجلاس توسعه دهنده Android اعلام شده است ، ادامه می دهد. برای کسب اطلاعات بیشتر در مورد سایر پیشرفت های مرمر پروژه در نسخه های قبلی ، به Android Emulator: Project Marble Revircements مراجعه کنید.
برای این بروزرسانی ، بیشتر تلاشهای مرمر پروژه ما به کاهش مصرف منابع شبیه ساز مانند کاهش مصرف CPU شبیه ساز در هنگام بیکار بودن اختصاص داده شده است. ما همچنین تغییراتی را شامل می شویم که کار با شبیه ساز را در انواع وسیع تری از محیط ها آسانتر می کند و ما به موضوعات کیفیت کلی پرداخته ایم.
بخش های زیر پیشرفت های سنگ مرمر پروژه را که با این بروزرسانی گنجانده شده است شرح می دهد:
با شروع نسخه 28.0.3 ، شبیه ساز به طور پیش فرض ورودی صوتی را از میزبان مسدود می کند .
اگر می خواهید از داده های صوتی میزبان استفاده کنید ، می توانید با رفتن به کنترل های گسترده> میکروفون و فعال کردن میکروفون مجازی از ورودی صوتی میزبان استفاده کنید . این گزینه هر زمان که شبیه ساز دوباره راه اندازی شود ، به طور خودکار غیرفعال می شود.
اگر از خط فرمان استفاده می کنید ، می توانید با استفاده از گزینه -allow-host-audio
میزبان را نیز فعال کنید ، و می توانید به ترتیب از دستورات ADB زیر استفاده کنید تا داده های صوتی میزبان را روشن یا خاموش کنید:
-
adb emu avd hostmicon
-
adb emu avd hostmicoff
با شروع نسخه 28.0.25 ، شبیه ساز شامل گزینه ساخت بدون سر است که می تواند بدون UI اجرا شود. شما می توانید از ساختهای بدون سر استفاده کنید تا به شما در تنظیم شبیه ساز برای گردش کار داکر و ادغام مداوم (CI) کمک کند.
با استفاده از این به روزرسانی ، ما پیشرفت های بیشتری را انجام داده ایم تا به شبیه ساز اجازه دهیم با حداقل تعداد وابستگی ها اجرا شود. در لینوکس ، ساختهای بدون سر دیگر شامل کتابخانه های pulseaudio
یا libX11
نیست. کتابخانه های مشترک وابسته به سیستم که با شبیه ساز بسته بندی نشده اند به لیست زیر کاهش یافته است:
-
Linux-vdso.so.1
-
Libutil.so.1
-
Libm.so.6
-
Libdl.so.2
-
Librt.so.1
-
Libpthread.so.0
-
Libgcc_s.so.1
-
Libc.so.6
-
ld-linux-x86-64.so.2
این به روزرسانی شامل پیشرفت های زیر از نسخه QT 5.12 LTS است:
- برای جلوگیری از تصادفات در رمزگشایی
libpng
QT هنگام شروع تصاویر خاص سیستم ، شبیه ساز اکنون از نسخه خود ازlibpng
برای رمزگشایی تصاویر PNG استفاده می کند. - برای پرداختن به مسائل مربوط به برخی از نصب های لینوکس حاوی نسخه های ناسازگار برخی از کتابخانه های وابسته به QT ، اکنون با شبیه ساز بسته بندی
libfreetype
،libsoftokn
،libsqlite3
وlibxkbcommon
را بسته بندی می کنیم. - این شبیه ساز اکنون به جای استفاده از کتابخانه های QT که نتایج غیرقابل اعتماد را بازگرداند ، از کتابخانه های بومی پنجره ای برای دریافت ابعاد مانیتور استفاده می کند.
برای پرداختن به استفاده از CPU ، شبیه ساز پس از دریافت سیگنال boot complete
، دستورات ADB زیر را روی یک بوت سرد اجرا می کند:
-
adb shell settings put screen_off_timeout 214783647
- این دستور باعث افزایش زمان خاموش صفحه نمایش می شود تا از شبیه ساز بدون شارژ در حالت باتری استفاده شود. در حالت باتری ، استفاده از CPU پس زمینه بسیار کاهش می یابد.
- در حالت شارژ AC ، عملیات پس زمینه GMSCORE مانند به روزرسانی برنامه می تواند تمام هسته های CPU دستگاه را به دست بگیرد - و با استفاده از دستگاه کاربر - بدون هشدار.
-
adb shell pm revoke com.google.android.googlequicksearchbox android.permission.RECORD_AUDIO
- این دستور مجوزهای میکروفون را برای برنامه Google Search ابطال می کند ، که باعث می شود میزان استفاده از CPU پس زمینه در صفحه اصلی و در هنگام فعال بودن برنامه جستجوی Google ، میزان استفاده از CPU پس زمینه را کاهش دهد.
- این دستور علاوه بر رفتار پیش فرض شبیه ساز در غیرفعال کردن صدای میزبان برای میزبان اجرا می شود. علاوه بر این ، این به طور خودکار کاهش استفاده از CPU را که برای تشخیص کلمات داغ از نسخه 28.0.23 شرح داده شده است ، فراهم می کند.
اکنون می توانید از دو متغیر محیط جدید استفاده کنید تا بتوانید نظارت دقیق بر عملکرد و استفاده از منابع شبیه ساز را انجام دهید.
-
SHOW_PERF_STATS=1
- این متغیر محیط ، ردیابی CPU و RAM را امکان پذیر می کند. ردیابی برای استفاده از RAM بین استفاده از گرافیک و حافظه کل ساکن متمایز است.
-
ANDROID_EMU_TRACING=1
- این متغیر محیط ، چاپ را هر بار که یک عملیات ورودی یا گرافیکی مدت زمان طولانی طول می کشد (طولانی تر از 1 میلی ثانیه) انجام می دهد.
- ما همچنین از این متغیر محیط استفاده می کنیم تا به تشخیص مواردی که کاربران ویندوز با JANK بیشتری تجربه کرده اند (فریم های افتاده) را تجربه کرده اند تا کاربران در MacOS یا Linux تجربه کنند.
این به روزرسانی همچنین شامل پیشرفت های عمومی زیر است که بخشی از طرح سنگ مرمر پروژه است:
- اکنون می توانید بلافاصله تمام VCPU ها را از طریق دستورات کنسول زیر مکث کنید:
-
adb emu avd pause
-
adb emu avd resume
-
- بالای سربار نقاشی OpenGL بسیار کاهش یافته است. این بهبود باعث کاهش مصرف CPU می شود در حالی که شبیه ساز در حال بازی انیمیشن است.
- پشتیبانی ترمیم شده برای دستگاه شبکه مجازی E1000 خط اصلی QEMU. می توانید از این دستگاه برای تنظیم شبیه ساز در یک محیط شبکه پل استفاده کنید. در یک محیط شبکه پل ، شبیه ساز در شبکه میزبان نشان داده شده است و شبکه میزبان در شبیه ساز نشان داده شده است.
- از باینری های BIOS متناسب با QEMU 2.12 برای راه اندازی شبیه ساز استفاده می شود.
- نسخه
ffmpeg
را برای رمزگذاری و رمزگشایی ویدیویی به 3.4.5 ارتقا داد. - با تعویض حلقه اصلی که بر اساس
select()
با یک حلقه اصلی است که مبتنی برkqueue
است ، به شدت کاهش یافته است. - اندازه بافر Logcat به 2 مگابایت افزایش یافته است تا مشکلات مربوط به 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
در صورت پشتیبانی از میزبان. - اطلاعات تشخیصی بیشتر به UI Bugreport اضافه شده است. علاوه بر این ، می توانید با استفاده از دستورات زیر به گزارش های اشکال از کنسول دسترسی پیدا کنید:
-
telnet localhost 5554
-
avd bugreport
-
- در تصاویر سیستم Android Q ، شبیه ساز حداقل اندازه رم خود را به 2 گیگابایت افزایش می دهد.
- هر زمان که OpenGL یا Hypervisor نتوانند اولیه سازی کنند ، ورود و چاپ بیشتری را اضافه کنید.
- اگر شبیه ساز نتواند نمونه ای از
-read-only
همزمان AVD را شروع کند ، شبیه ساز اکنون سعی در راه اندازی مجدد AVD-read-only
3 بار دیگر بیش از 3 ثانیه دارد. این تغییر احتمال این را افزایش می دهد که اگر شبیه ساز بتواند نمونه های همزمان-read-only
را به صورت AVD راه اندازی کند ، در صورتی که سایر موارد قابل نوشتن از آن AVD در حال تمیز کردن پرونده های قدیمی انجام نشود. - برای تصاویر سیستم آینده ، شبیه ساز اکنون از سخت افزار Composer 2.0 پشتیبانی می کند. این تغییر باید هنگام اجرای اکثر انیمیشن ها ، راننده را پایین بیاورد.
- ساخت شبیه ساز اکنون بر اساس Cmake/Ninja ساخته شده است.
- در UI کنترل های گسترده شبیه ساز ، خطوط تقسیم کننده در جدول میانبرهای صفحه کلید ترمیم شده است.
- اکنون کاربران می توانند در یک بازه 10 ثانیه ای ، از CPU و استفاده از RAM استفاده کنند. ما از این معیارها برای غنی سازی داده های خود در مورد استفاده از منابع شبیه ساز با موارد استفاده متفاوت کاربران استفاده می کنیم ، که به ما امکان می دهد تا شبیه ساز کارآمدتر و پاسخگوتر شود.
این به روزرسانی همچنین شامل اصلاحات عمومی زیر است که بخشی از طرح سنگ مرمر پروژه است:
- مشکلات رفع شده با فریم های پیچش و نادرست که در سیستم های GPU Intel هنگام استفاده از تصاویر سیستم Q Android نمایش داده شده است.
- مشکلات رفع شده در جایی که یک صفحه سیاه هنگام استفاده از تصاویر سیستم Android Q با پوست پیکسل 2 XL (یا هر پوستی که دارای گوشه های شکاف یا گرد باشد) نمایش داده می شود.
- مسئله ای را برطرف کرد که در آن گزینه خط فرمان
-partition-size
اندازه پارتیشن داده را تنظیم نمی کند. - مسئله ای را برطرف کرد که در آن Pulseaudio روی شبیه ساز LINX می چرخد و در برخی شرایط یک هسته CPU کامل را به خود اختصاص می دهد.
- هنگام پردازش بافت های فشرده شده ، مشکلات مربوط به دسترسی به حافظه خارج از مرز را برطرف می کند.
- خطاهای GL ثابت که در میزبان در
glTexSubImage2D
هنگام به روزرسانی برخی از بافرهای Gralloc (با فرمت RGB 565 ، RGB10A2 ، RGB (A) 16F) رخ داده است. - مسئله نمایش در تصاویر سیستم Android Q با عکس های فوری که در آن هندسه سایه اعلان با یک تنظیم تقسیم کننده نمونه نادرست ارائه شده است.
- چند مورد سخت برای تولید و یخ زدگی را در مورد راه اندازی که به دلیل از دست دادن سیگنال های QT یا داشتن حالت های پوسته پوسته و متناقض در هنگام راه اندازی اتفاق افتاد ، برطرف کرد.
- بسیاری از موارد همزمانی را برطرف کرد. اکنون ما قادر به ساخت شبیه ساز لینوکس با ThreadSanitizer (TSAN) هستیم که به راحتی می تواند اشکالات را کشف کند که در غیر این صورت تولید مثل دشوار است.
- برای کاربران لینوکس: ما دریافتیم که در برخی از هسته های میزبان ، هسته اندرویدی مهمان می تواند با یک خطای سخت افزاری عمومی در KVM خطا کند و از آن خارج شود. وقتی این اتفاق می افتد به منظور افزایش اشکال زدایی (قبلاً ، شبیه ساز فقط آویزان شده بود) ، شبیه ساز اکنون
abort()
. - برای کاربران Linux: برای راحتی با تنظیمات CI ، می توانید از گزینه خط فرمان جدید
-stdouterr-file <file-name>
استفاده کنید تاstdout
وstderr
را به یک پرونده هدایت کنید. - مشکلی را برطرف کرد که در آن نادرست از
SO_REUSEADDR
استفاده شد. برای اطلاعات بیشتر ، به جزئیات متعهد مراجعه کنید. - مسئله دیرینه با شبیه ساز ویندوز را برطرف کرد که در آن فرآیندهای فرعی ، مانند دستورات ADB ، در صورتی که نام کاربری فضاهایی در آن داشته باشد ، نتوانستند شروع کنند.
- مسئله ای را با اولیه سازی از دست رفته RCU در موضوعات HAXM VCPU برطرف کرد. این رفع احتمالاً می تواند برخی از تصادفات و شرایط مسابقه را برطرف کند.
- سقوط یک تصادف که با الگوهای خاصی از صرفه جویی و بارگیری عکس های فوری از Snapshots UI با استفاده از تصاویر اخیر سیستم Q Android رخ داده است.
- مسئله ای را برطرف کرد که دوربین صحنه مجازی در صورتی که شبیه ساز از عکس فوری شروع شود ، اگر یک ماکرو AR در هنگام ذخیره آن عکس ، در حال پخش باشد ، خالی خواهد بود.
- مسئله ای را برطرف کرد که برخی از کاربران با تنظیمات دسک تاپ از راه دور هنگام راه اندازی شبیه ساز در لینوکس ، صفحه سیاه را دریافت کردند. برای جلوگیری از این امر ، شبیه ساز اکنون صریحاً
MESA_RGB_VISUAL
را پیکربندی می کند. برای اطلاعات بیشتر ، به جزئیات متعهد مراجعه کنید. - مسئله ای را برطرف کرد که دکمه های چرخش در AVD های تلویزیونی ظاهر می شوند.
- مسئله ای را برطرف کرد که اگر شبیه ساز همیشه در بالا تنظیم شود ، هر بار که شبیه ساز چرخانده می شد ، پنجره کنترل گسترده ظاهر می شد.
اکنون شبیه ساز شامل پروفایل های سخت افزاری برای دستگاه های تاشو است. برای استفاده از این پروفایل های سخت افزاری جدید ، باید از Android Studio 3.5 Canary 10 یا بالاتر استفاده کنید.
دو پروفایل سخت افزار تاشو وجود دارد که می توانید برای ایجاد AVD استفاده کنید:
- 7.3 "تاشو: 1536x2152 آشکار شد ، 4.6" 840x1960 تاشو
- 8 اینچ تاشو: 2200x2480 آشکار ، 6.6 "1480x2480 تاشو
هنگامی که شبیه ساز را با استفاده از یکی از این پروفایل های سخت افزاری اجرا می کنید ، می توانید دستگاه را با استفاده از اقدامات برابر و آشکار در نوار ابزار شبیه ساز ، دستورات کنسول یا میانبرهای صفحه کلید زیر بچسبانید و باز کنید:
- تاشو:
Ctrl + F
(Command + F
در MACOS) - باز کردن:
Ctrl + U
(Command + U
در macOS)
اکنون شبیه ساز شامل ماکروهای AR است که می تواند به شما در آزمایش اقدامات مشترک AR کمک کند. به عنوان مثال ، می توانید از یک ماکرو برای تنظیم مجدد تمام سنسورهای دستگاه در حالت پیش فرض آنها استفاده کنید.
برای اطلاعات بیشتر ، به آزمایش های مشترک AR با ماکرو مراجعه کنید.
کاربران ویندوز و لینوکس هم اکنون می توانند برنامه های Vulkan را با Android Emulator تا Vulkan 1.1 آزمایش کنند.
برای فعال کردن پشتیبانی Vulkan ، باید پرچم های ویژگی زیر را به پرونده ~/.android/advancedFeatures.ini
خود اضافه کنید (در صورت وجود پرونده را ایجاد کنید):
-
Vulkan = on
-
GLDirectMem = on
توسعه دهندگان ROM که در حال ساخت sdk_phone_x86
یا sdk_phone_x86_64
( userdebug
، انواع eng
) در شعبه master
AOSP هستند ، اکنون می توانند یک شبیه ساز با قابلیت ولکان را اجرا کنند.
این پشتیبانی هنوز هم آزمایشی است و عمدتاً برای توسعه دهندگان است که روی تصاویر سیستم ، درایورها و موتورهای بازی کار می کنند. بسیاری از پسوندها هنوز از دست رفته اند. با این حال ، حافظه HOST_COHERENT
پشتیبانی می شود ، و اکنون باید بتوانید نمونه های آموزش API Vulkan را اجرا کنید.
اگر از لینوکس استفاده می کنید ، می توانید این کار را با استفاده از دستورات زیر امتحان کنید:
mkdir aosp-master
cd aosp-master
repo init -u https://android.googlesource.com/platform/manifest -b master --depth=1
repo sync -c -j12
. build/envsetup.sh
lunch sdk_phone_x86_64-userdebug
make -j12
emulator -no-snapshot -feature Vulkan,GLDirectMem
NVIDIA و GPU های AMD که از Vulkan پشتیبانی می کنند همچنین از طریق Zero Copy Copy با OpenGL از طریق پسوند GL_EXT_memory_objects
پشتیبانی می کنند. شبیه ساز این توانایی را برای ارائه راهی کامل برای ارائه UI Android با استفاده از API های Skia Vulkan فراهم می کند.
اگر یک GPU NVIDIA یا AMD دارید که از Vulkan پشتیبانی می کند ، از دستورات زیر برای آزمایش ارائه Skia با یک تصویر سیستم سازگار (Android Q Beta 3 و بالاتر) استفاده کنید:
adb shell
su
setprop debug.hwui.renderer skiavk
stop
start
پشتیبانی MACOS هنوز هم آزمایشی است ، اما شبیه ساز در حال حاضر شامل API های SwiftShader ، MoltenVK و Libportability ( GFX-RS ) است. با تنظیم متغیرهای محیط زیر می توانید با این API ها آزمایش کنید:
- SwiftShader:
ANDROID_EMU_VK_ICD=swiftshader
- MoltenVK:
ANDROID_EMU_VK_ICD=moltenvk
- قابلیت libportability:
ANDROID_EMU_VK_ICD=portability
HAXM گاهی اوقات می تواند نتواند حافظه منسجم ولکان را به میهمان نقشه برداری کند و شبیه ساز را خاموش کند. این در یک به روزرسانی HAXM آینده مورد بررسی قرار می گیرد.
ما همیشه سعی می کنیم با اجازه دادن به ارائه GPU میزبان و تعامل در وسیع ترین زمینه های در حال اجرا ، شبیه ساز را تا حد امکان متنوع تر کنیم. کاربران دسک تاپ CI و از راه دور ما مشکلات دیرینه زیر را دارند:
- ارسال برنامه های ورودی به صورت برنامه ای به شبیه ساز شامل اجرای دستورات پوسته ADB است که می توانند سربار بالا را تجربه کنند ، یا با استفاده از کنسول Telnet ، که سریعتر است ، اما ممکن است با تنظیمات شبکه خاصی کار نکند.
- کاربران CI اغلب شبیه سازها را بدون سر اجرا می کنند ، که می تواند توجه به مواردی را که نیاز به صفحه نمایش قابل مشاهده یا تعاملی دارند ، دشوار کند.
- کاربران دسک تاپ از راه دور اغلب هنگام استفاده از ارائه دهنده GPU میزبان نمی توانند با شبیه ساز ارتباط برقرار کنند زیرا ارائه GPU اغلب با نمایشگرهای غیر مجلسی میزبان گره خورده است.
برای پرداختن به این موضوع ، هنگام کار بر روی دستگاه لینوکس ، شبیه ساز اکنون یک سرویس GRPC را ارائه می دهد. GRPC یک چارچوب کلی برای RPC است که از طریق HTTP کار می کند.
به طور پیش فرض ، سرویس GRPC شبیه ساز غیرفعال است ، اما می توانید سرویس را با استفاده از گزینه خط فرمان زیر فعال کنید ، جایی که <port>
پورت ای است که شبیه ساز باید درخواست های GRPC را ارائه دهد (معمولاً 5556
):
-grpc <port>
پس از شروع سرویس ، دستورات GRPC می توانند از مشتری ها صادر شوند. مجموعه فعلی دستورات امکان ارسال رویدادهای ورودی و دریافت تصاویر را فراهم می کند. این دستورات به موضوعات زیر کمک می کنند:
- دستورات ورودی را می توان با سربار کم بیش از HTTP به شبیه ساز ارسال کرد. HTTP همچنین باعث می شود دستورات در تنظیمات شبکه اضافی ارسال شوند.
- دستورات تصویر می توانند برای پرس و جو از صفحه فعلی ارسال شوند ، حتی اگر شبیه ساز بدون سر در حال اجرا باشد. برای تعامل ، رویدادهای ورودی نیز می توانند به شبیه ساز ارسال شوند.
- کاربران دسک تاپ از راه دور می توانند در هنگام استفاده از GRPC برای گرفتن تصاویر و ارسال رویدادهای ورودی به منظور تعامل با شبیه ساز ، شبیه ساز را بدون سر و صدا در صفحه اصلی با ارائه GPU در هنگام استفاده از GRPC اجرا کنند.
برای لیست کاملی از دستورات موجود ، به این Protobuf مراجعه کنید.
برای کمک به شما در شروع کار با GRPC ، ما برخی از مشتری های نمونه را ارائه داده ایم که می توانید به آنها مراجعه کنید.
در حال حاضر ، این شامل نمونه های زیر است:
- یک سرویس مبتنی بر GO که می تواند برای پرس و جو از دولت های شبیه ساز استفاده شود.
- یک برنامه React که تعامل از راه دور را از طریق تصویر و RPC های ورودی نشان می دهد. این نمونه به نسخه ProtoBUF 3.7.0 یا بالاتر نیاز دارد.
- یک نمونه پایتون که پیکربندی VM شبیه ساز را پرس و جو می کند و سپس یک سری دستورات را ارسال می کند.
این به روزرسانی شامل پیشرفت ها و اصلاحات زیر است:
به دلیل انتظارات ضمنی سیستم قادر به پشتیبانی از QT به همراه وابستگی های مشترک کتابخانه خود (از جمله سایر موضوعات) ، راه اندازی آن با Docker و سایر گردش های مداوم ادغام (CI) دشوار بوده است.
به عنوان اولین قدم برای پرداختن به این موضوع ، ما نوعی از پرتابگر را با اجرایی QEMU معرفی کردیم که به QT بستگی ندارد. در لینوکس ، هنوز پیوندی به libX11
وجود دارد ، اما امیدواریم که به زودی آن را حذف کنیم.
برای استفاده از شبیه ساز بدون سر ، شبیه ساز را از خط فرمان طبق معمول اجرا کنید ، اما دعوت باینری شبیه ساز را با emulator-headless
جایگزین کنید. برای اطلاعات بیشتر ، به بروزرسانی نسخه 28.1.8 قناری مراجعه کنید.
- هنگام اجرای تصاویر سیستم Android Q ، صفحه نمایش ثابت و فریم نادرست در GPU های Intel.
- مشکلات رفع شده در جایی که صفحه سیاه هنگام استفاده از تصاویر سیستم Q Android با پوست Pixel 2 XL نمایش داده می شود.
- اکنون آخرین باینری های BIOS برای راه اندازی شبیه ساز استفاده می شود. این تغییر می تواند به کاهش خطاهای "درخواست خاموش کردن VCPU" کمک کند که گاهی اوقات هنگام راه اندازی شبیه ساز روی ویندوز اتفاق می افتد.
- در هنگام از سرگیری تصاویر سیستم Android Q از یک عکس فوری "، برای نمایش" اشتباه صفحه نمایش "از صفحه نمایش اشتباه استفاده کرد.
- کاربران به دلیل تغییر ناسازگار در ADB در ابزار 28.0.2 پلتفرم ، مشکلات شبیه سازهای "غیرمجاز" را تجربه می کردند. اکنون می توانید با خیال راحت از ADB از سیستم های سکوی 28.0.2 با شبیه ساز استفاده کنید. اگر با شبیه سازهای "غیرمجاز" مشکل دارید ، مراحل عیب یابی زیر را انجام دهید:
- از همه شبیه سازها خارج شوید.
- هر دو پرونده
~/.android/adbkey
و~/.android/adbkey.pub
را حذف کنید. - دستور زیر را اجرا کنید:
adb kill-server
- دستور زیر را اجرا کنید:
adb devices
- داده های AVD را پاک کنید.
- راه اندازی مجدد شبیه ساز.
این به روزرسانی شامل پیشرفت ها و اصلاحات زیر است:
یک پست اخیر در مورد Reddit توضیح می دهد که چگونه سیستم عامل Android مهمان همیشه از صدای میکروفون میزبان استفاده می کند و از این طریق به "Ok Google" اجازه می دهد به طور غیر منتظره ای کار کند. ما از این موضوع متاسفم و با تیم Android همکاری خواهیم کرد تا مطمئن شویم که تشخیص کلمه Hot -Word در تصویر سیستم نیز غیرفعال شده است.
برای پرداختن به این موضوع ، ما تغییرات زیر را ایجاد کرده ایم:
- داده های صوتی واقعی میزبان اکنون به طور پیش فرض جمع شده است. هنگامی که میهمان از میکروفون استفاده می کند ، سکوت به جای صوتی میزبان از آن عبور می کند.
- اگر می خواهید از داده های صوتی میزبان استفاده کنید ، اکنون می توانید با رفتن به کنترل های گسترده> میکروفون و فعال کردن میکروفون مجازی ، از ورودی صوتی میزبان استفاده کنید . این گزینه هر زمان که شبیه ساز دوباره راه اندازی شود ، به طور خودکار غیرفعال می شود.
در طی تحقیقات مرمر پروژه ما ، ما متوجه شده ایم که استفاده بالای CPU در شبیه ساز به طور کلی در سه دسته زیر قرار می گیرد:
ما دریافتیم که در فواصل تصادفی ، تمام برنامه های نصب شده به روز می شوند ، حتی اگر کاربر وارد سیستم نشده باشد. در طی این فرآیند ، استفاده از پردازنده به تعداد هسته X 100 ٪ (به طور معمول 400 ٪ پوند) در GMSCORE و DEX2AT هدایت می شود. می توانید با غیرفعال کردن به روزرسانی های برنامه خودکار در برنامه Play Store ، این مسئله را کاهش دهید.
هنگامی که در صفحه اصلی و بدون هیچ برنامه ای پیش بینی شده است ، می توان مقدار زیادی از CPU (25 ٪ پوند با سنبله تا 50 ٪) وجود داشت. این امر در اثر تشخیص HotWord ایجاد می شود که دائماً میزبان را جمع می کند. شما نمی توانید این مسئله را با غیرفعال کردن ورودی صوتی میزبان کاهش دهید زیرا هزینه CPU در درجه اول ناشی از زمان لازم برای سفر به میهمان از میزبان است. با این حال ، می توانید با ابطال مجوزهای میکروفون از برنامه Google ، این مسئله را کاهش دهید.
منبع سوم استفاده از CPU بالا انیمیشن ها است. ما دریافتیم که با بهینه سازی پشته درایور گرافیکی ، می توانیم استفاده از CPU را حتی اگر شبیه ساز بیکار نباشد ، کاهش دهیم. ما بهینه سازی های درایور گرافیک را به طور تدریجی به عنوان بخشی از Project Marble می پردازیم.
این به روزرسانی شامل پیشرفت ها و اصلاحات زیر است:
- یک مسئله طولانی مدت را برطرف کرد که در برخی از تنظیمات ، شبیه ساز MAC در QuickBoot ذخیره می کند یا وحشت هسته را دوباره راه اندازی می کند. ( شماره 120951634 )
- هنگام استفاده از یک فایل نقشه برداری به عنوان عکس فوری RAM ، شبیه ساز اکنون نقشه برداری فایل را صریحاً در خروج از بین می برد.
این به روزرسانی شامل پیشرفت ها و اصلاحات زیر است:
- مسئله ای را در ویندوز ایجاد کرد که باعث شد شبیه ساز با بارش عکس با مدل های خاصی از GPU های Intel ، بار خود را بر روی بار عکس فوری کند.
- مسئله ای را برطرف کرد که باعث ایجاد حالت دستگاه ADB
unauthorized
هنگام استفاده از یک مکان غیر استانداردANDROID_SDK_HOME
شد. - مسئله ای را در ویندوز که باعث شد شبیه ساز هنگام بوت شدن تصاویر سیستم با شتاب CPU غیرفعال شود ، خراب شود.
- مسئله نمایشگر شبیه ساز پیکسل را برطرف کرد. Downsampling اکنون باید کار کند.
- مسئله ای را در MACOS 10.14+ برطرف کرد که در آن کنترل Mouselook Camera صحنه مجازی به دلیل تعامل با تنظیمات امنیتی دسترسی جدید می تواند بسیار حساس شود.
- خطایی را در محاسبه منطقه زمانی برطرف کرد که می تواند باعث تغییر ساعت شبیه ساز شود.
- خطاهای ارائه دهنده ثابت در برنامه های مختلف Cocos2D و Unreal Engine.
- پشتیبانی اضافه شده در شبیه ساز برای Wi-Fi Peer-to-Peer . در صورت استفاده از آخرین تصویر فروشگاه Pie Play ، دو شبیه ساز هم اکنون می توانند مستقیماً از طریق Wi-Fi با یکدیگر صحبت کنند. برای استفاده از Wi-Fi Peer-to-Peer ، دو AVD را با همان آرگومان های
-wifi-server-port
و--wifi-client-port
شروع کنید:-
emulator @<server-avd-name> -wifi-server-port 9999
-
emulator @<client-avd-name>-wifi-client-port 9999
-
- با استفاده از هرگونه اندازه قاب ناسازگار و تغییر اندازه گیری پویا برای متناسب با تنظیم دوربین در میهمان اندرویدی ، پشتیبانی بیشتری برای وب کم ها در ویندوز اضافه کرد.
این به روزرسانی شامل چندین ویژگی جدید ، پیشرفت در ویژگی های موجود و رفع اشکال است.