אמולטור Android כלול ב-Android Studio.
גרסאות של האמולטור שקדמו לגרסה 25.3.0 הופצו כחלק מ-Android SDK Tools.
כדי לוודא שמותקנת אצלכם הגרסה העדכנית ביותר, צריך לבדוק אם יש עדכונים בSDK Manager.
כדי להוריד גרסאות קודמות של אמולטור Android, אפשר לעיין בארכיון ההורדות של אמולטור.
נתוני הגרסה של גרסאות Emulator שקדמו לגרסה 25.3.0 זמינים בנתוני הגרסה של Android SDK Tools.
כדי לראות אילו בעיות תוקנו בגרסאות האחרונות של Android Emulator, אפשר לעיין בבעיות שנסגרו.
לבעיות מוכרות ולפתרון בעיות, אפשר לעיין במאמר פתרון בעיות באמולטור.
36.6.11 Stable (2 ביוני 2026)
החל מ-API 37, הזיכרון המינימלי (RAM) שבו נעשה שימוש במכונה הווירטואלית של AVD הוגדל ל-4GB.
כדי לתמוך בדרישות הזיכרון הגבוהות יותר של Android 17 (API 37), מכשירי Android וירטואליים (AVD) של Phone דורשים עכשיו מינימום של 4GB של זיכרון RAM. אם מכשיר ה-AVD שלכם מוגדר עם פחות זיכרון, האמולטור יחליף אוטומטית את ההגדרה כדי להקצות לפחות 4GB, וכך ימנע בעיות פוטנציאליות בזמן הריצה.
נוסף מצב מצלמה 'סביבה' לאמולטור, כדי לאפשר הגדרה של רקעים וירטואליים של סצנות. הסצנות האלה מוגדרות בקובץ environment.ini של AVD, ואפשר לטעון אותן מחדש באופן דינמי בזמן הריצה.
תוקן באג שגרם לכך שהתצוגה המקדימה של התמונה ב-emulator העצמאי לא נוקתה אחרי שהתמונה נמחקה.
[תיקון באג]בעיה מספר 506475581 האודיו באמולטור מעוות מאוד ב-macOS כשמשתמשים בממשק אודיו עם יותר מ-2 ערוצים (loopback, multi-output)
36.5.11 Patch (Apr 23, 2026)
- [Bug Fix]Issue #492228020 אמולטור Android displays black screen when using Hardware/Auto Graphics Rendering on Intel GPU
36.5.10 יציב (2 באפריל 2026)
העדכון הזה כולל את התכונה הבאה ותיקוני באגים:
בדיקת אינטראקציות בין מכשירים באמצעות אמולטור Android
ב-אמולטור Android יש עכשיו מחסנית רשת חדשה לשיפור הבדיקות בכמה מכשירים, כך שאין יותר צורך בהעברה ליציאה אחרת ידנית כדי לחבר כמה מופעי AVD באותו מארח. מכשירים וירטואליים של Android יכולים עכשיו לגלות אחד את השני באופן אוטומטי ולתקשר ביניהם כאילו הם נמצאים באותה רשת וירטואלית. כך אפשר לבדוק בצורה חלקה אינטראקציות בין עמיתים באמצעות פרוטוקולים כמו Wi-Fi ישיר וגילוי שירותי רשת.
לגישת ה-networking החדשה יש כמה יתרונות חשובים למפתחים:
- הגדרה אוטומטית: לא צריך יותר להגדיר העברה ליציאה אחרת באופן ידני או להשתמש בפקודות adb.
- Seamless Peer-to-Peer: פרוטוקולים קריטיים כמו Wi-Fi ישיר ו-Network Service Discovery פועלים מחוץ לקופסה בין אמולטורים.
- יציבות משופרת: נפתרו בעיות יציבות שהיו קיימות זמן רב, כמו אובדן נתונים (בעיה מס' 150758736) וניתוקים (בעיה מס' 449817856) שנמצאו בסטאק מדור קודם.
כדי להתחיל, צריך לעדכן לגרסה האחרונה של אמולטור Android ב-Android Studio SDK Manager. מידע נוסף זמין במאמר הזה.
תכונות נוספות ותיקוני באגים
נוספו מכשירי Pixel AVD חדשים, כולל Pixel 10, Pixel 10 Pro, Pixel 10 Pro XL ו-Pixel 10 Pro Fold
מצלמות אינטרנט מוצגות בשמות ידידותיים למשתמש, ותוקנה בעיה ב-Linux שבה האמולטור לא זיהה את כל מצלמות האינטרנט המחוברות ולא הציג אותן ברשימה
[תיקון באג]בעיה מספר 333628462 תהליך crashpad_handler צורך כמות מוגזמת של CPU ב-macOS
36.4.10 Patch (Mar 9, 2026)
- [תיקון באג]בעיה מספר 489369080 תיקון קריסה ב-TV Emulator כשמעבירים את העכבר מעל המסך אחרי עדכון ל-Panda 2
36.4.9 Stable (10 בפברואר 2026)
כדי לייעל את בחירת ה-GPU בממשק המשתמש, הפקדים המורחבים של אמולטור Android כוללים עכשיו אפשרויות ספציפיות של חומרה ותוכנה. משתמשים בשורת הפקודה יכולים עכשיו להשתמש באפשרות -gpu software כדי לבחור את העורפים (backends) הטובים ביותר של תוכנות ה-GLES ו-Vulkan שזמינים למערכת שלהם.
הפעלנו את Lavapipe כתוכנת ברירת המחדל לרינדור גרפי כדי לשפר את התאימות ל-Vulkan בכל הפלטפורמות
שיפורים ב-Vulkan:
- העדכון של טוען Vulkan מצורף לאמולטור
- תוקנו מקרים שונים של שימוש לא תקין ב-Vulkan backend
- הוספנו תמיכה בשימוש ב-SkiaVk ב-systemui עם הדמיה של תור גרפיקה בקובצי אימג' חדשים של המערכת
- נוספה תמיכה בהרכבת Vulkan כדי להשבית את השימוש ב-GL במארח. ההגדרה הזו מופעלת כברירת מחדל לתמונות XR, ואפשר להפעיל אותה באמצעות אפשרות שורת הפקודה -feature VulkanNativeSwapchain.
[תיקון באג]בעיה מספר 471008659 דליפת זיכרון בצד המארח של האמולטור כשפותחים או סוגרים פעילויות
36.4.3 Canary (8 בדצמבר 2025)
אמולטור חדש למשקפי AI
הוספנו אמולטור חדש וניסיוני של משקפי AI לפיתוח ולבדיקה של אפליקציות שנוצרו באמצעות Jetpack XR SDK for AI Glasses. אתם יכולים להריץ אמולטור של המשקפיים יחד עם אמולטור של הטלפון, לשייך אותם ולבצע אינטראקציות אופייניות שאתם מריצים במשקפיים. מידע על התקנת האמולטור של משקפי ה-AI והגדרת סביבת הפיתוח זמין במאמר יצירת מכשירים וירטואליים של משקפי AI.
האמולטור של משקפי ה-AI הוא כלי ניסיוני. צפויות בעיות, במיוחד בהתאמה מחדש של המשקפיים לאמולטורים של טלפונים ובאינטראקציות עם ממשק המשתמש של משטח המגע.
אמולטור חדש של משקפי XR
הרחבנו את האמולטור של Android XR שהשקנו בעבר עבור משקפי XR עם OST (שקיפות אופטית). אתם יכולים להשתמש באמולטור של משקפי XR כדי לראות תצוגה מקדימה של האפליקציה עם שדה הראייה והרזולוציה המשוערים של מכשיר משקפי ה-XR. במאמר יצירת מכשירי משקפי XR וירטואליים יש מידע על התקנת האמולטור של משקפי XR ועל הגדרת סביבת הפיתוח.
האמולטור של משקפי XR והאמולטור של משקפי AI הם כלים ניסיוניים. יכולות להיות בעיות, במיוחד בהגדרות מסוימות של GPU ודרייבר ב-Windows (ראו דרישות המערכת של Windows).
בעיות מוכרות
המשוב שלכם יעזור לנו לשפר את התכונה ולתת עדיפות לתכונות עתידיות. מידע על דיווח על באגים שקשורים ל-Android Studio או לאמולטור Android זמין במאמר דיווח על באג.
36.3.10 יציב (4 בדצמבר 2025)
[תיקון באג]בעיה מספר 452843321: ביצועים ירודים כשמעבירים קבצים גדולים לאמולטור ב-Android API 34 ואילך.
תיקון קריסות של Vulkan composition כשקודקים של וידאו פועלים במצב של טקסטורת GPU.
תוקן קריסת האמולטור באירוע מסך מגע כשמריצים אותו עם -debug-events.
36.2.12 Patch (13 באוקטובר 2025)
- תיקון קריסה ב-Windows שקרתה בהפעלת אפליקציית Vulkan במצב עיבוד תוכנה
גרסה יציבה 36.2.11 (9 באוקטובר 2025)
התמיכה ב-HAXM הוסרה מהאמולטור. אם תנסו ליצור מכשיר וירטואלי של Android עם HAXM, יוצג באנר עם דיווח על היפר-ויזור חסר וקישור לפעולה להתקנת AEHD.
מידע על הסרת HAXM זמין במאמר HAXM Uninstall.תיקון כדי לוודא ש-GPU של Intel משתמש ב-OpenGL ES 3.0 כדי למנוע קריסת דרייבר
[תיקון באג]בעיה מספר 340322888 אי אפשר להפעיל את AVD כשאין מקום פנוי במכשיר
[תיקון באג]בעיה מספר 150758736 אובדן נתונים לסירוגין של בייט יחיד בחיבורי TCP באמולטור
[תיקון באג]בעיה מספר 434774381 ליבת האורח קרסה אחרי הפעלה מהירה של API 36 ו-35 (יכול להיות שגם גרסאות נוספות) ב-Windows 11 באמצעות WHPX ב-i7-11850H
36.1.9 יציב (31 ביולי 2025)
[תיקון באג]בעיה מספר 419157428 תווים בקידוד UTF-8 בשם המשתמש או בנתיב AVD עלולים למנוע את הפעלת האמולטור
[תיקון באג]בעיה מספר 423670833 קריסה של אמולטור Android במערכת הקבצים btrfs
הערה: אם נתקלתם בבעיות בהפעלת האמולטור ב-X11, כדאי לנסות להשתמש בעיבוד תוכנה. במאמר הגדרת האצת עיבוד גרפי מוסבר איך להגדיר רינדור תוכנה.
גרסה יציבה 35.6.11 (24 ביוני 2025)
שיפרנו את התמיכה ב-GPU של AMD ו-Nvidia ב-Windows וב-Linux עבור הדמיית XR
אפשר להריץ את XR AVD כהטמעה בחלונות הפעילים של Android Studio
שיפור הפרטים בדוח הקריסה ב-Windows כדי לאפשר את הפריקה המלאה של ה-Emulator
[תיקון באג]בעיה מספר 410485043 קריסה של מכשיר אמולטור Android XR עם שגיאת Vulkan
[תיקון באג]בעיה מספר 388718417 libndk_translation.so מבצעת ביטול וגורמת לקריסה ב-Arm64AesEncode
35.5.10 יציב (6 במאי 2025)
נוספו בדיקות תאימות נוספות של מעבד עם הודעות שגיאה (לדוגמה: אין מספיק מקום בדיסק)
תוקנו באגים שקשורים לניהול הזיכרון של Vulkan ולתרחישי שימוש לא תקינים
התמיכה בצילום תמונת מצב של Vulkan נבדקת ודילוג מתבצע בצורה תקינה כשמריצים את התכונה בטרמינל
הוספנו תמיכה בתוסף VK_KHR_multiview ובפורמט הטקסטורה A1R5G5B5
נוסף Pixel 9a AVD
35.4.9 יציבה (25 בפברואר 2025)
נוסף תפריט נפתח באפשרויות הבקרה המתקדמות להעדפות של מנהל התקן GLES של האורח
[תיקון באג]בעיה מספר 389330750 שליחת SMS לאמולטור עם התו Ñ מפצלת את ההודעה
[תיקון באג]בעיה מספר 382180488 הפונקציה emuglConfig_get_vulkan_hardware_gpu_support_info קורסת בגלל זיהוי של אפס מכשירי Vulkan
הערה: Android XR Emulator זמין רק בגרסאות Canary של Studio
35.3.11 יציב (9 בינואר 2025)
[תיקון באג]בעיה מספר 368059211 גישה תוכנתית ל-VHAL ב-Android Auto OS לא פועלת באמצעות Car Service API
[תיקון באג]בעיה מספר 348598513 לאמולטור יש שיטה ציבורית לא בטוחה לשימוש עם שרשורים בנעילה מרובת שרשורים
[תיקון באג]בעיה מספר 356896486 השבתה מלאה של קריאות ל-Vulkan API כשמריצים עם -feature -Vulkan
35.4.4 Canary (12 בדצמבר 2024)
אמולטור חדש ל-Android XR
הוספנו אמולטור חדש וניסיוני של Android XR לפיתוח ולבדיקה של אפליקציות שנוצרו באמצעות Jetpack XR SDK למשקפי מציאות מדומה. מידע על התקנת האמולטור של Android XR והגדרת סביבת הפיתוח זמין במאמר בנושא הגדרת Jetpack XR SDK.
האמולטור של Android XR הוא כלי ניסיוני. למרות זאת, החלטנו לשתף אתכם מוקדם כדי לאפשר לכם לבצע בדיקות מוקדמות. צפויות בעיות, במיוחד בחלק מההגדרות של GPU ודרייברים ב-Windows. יכולות להיות גם בעיות שקשורות לבדיקות תאימות של אפליקציות קיימות לנייד בתלת-ממד. המשוב שלכם יעזור לנו לשפר את התכונה ולקבוע את סדר העדיפויות של התכונות שנשיק בעתיד.
עד עכשיו, האמולטור של Android XR נבדק בהגדרות החומרה הבאות:
- Mac (ARM)
- Windows 11
- nVidia GPU, 4GB של vRAM, גרסת מנהל ההתקן 553.35 ואילך
- זיכרון RAM של 16GB או יותר
- 8 ליבות או יותר
בעיות מוכרות
אמולטור – יציבות וביצועים:
- במערכות מסוימות עם Windows, יכול להיות שיהיו נעילות או קריסות קריטיות של המערכת במהלך האתחול או בזמן הפעלת האפליקציות. חשוב לוודא ש-Windows Hypervisor Platform (WHPX) מופעל. כדי להפעיל את WHPX, אפשר לעיין במדריך למפתחים של Android Studio.
- בעיות כמו AVD או רכיבים בממשק המשתמש שלא מגיבים במחשבים ניידים אחרי מחזור השהיה-הפעלה מחדש (למשל, סגירה של מחשב נייד ופתיחה שלו).
- קריסות מדי פעם כשעוברים בין אפליקציות ממצב 'מסך הבית' למצב 'מסך מלא'
- ממשקי Gemini API עדיין לא זמינים, ואפליקציית תבנית המתחילים של Gemini API תקרוס.
אמולטור – הדמיה של קלט ופלט:
- המקלדת הווירטואלית לשדות חיפוש ועריכה עשויה להיות גלויה רק באופן חלקי בשדה הראייה
אי אפשר להזיז רכיבים בכיוון z (פנימה והחוצה מהמסך) באמצעות עכבר ומקלדת
חוסר יציבות בקלט האודיו של המיקרופון במארח AVD עלול לגרום להפעלה מחדש של AVD ולקריסות.
לפעמים יש רעשי סטטי בסאונד או שהוא מעוות.
כשמזיזים את המצלמה מחוץ לסלון הווירטואלי, אפשר לראות שגיאות רינדור.
הצבעים בהגדרות של Windows כהים מהרגיל.
האודיו לא פועל יותר אחרי שהאמולטור לא פעיל ונועלים את המסך ב-macOS. (הפעלה מחדש של האמולטור תשחזר אותו).
החיבור לרשת נקטע כשמחשב המארח משנה את רשת ה-Wi-Fi.
גם אם Caps Lock מופעל, עדיין אפשר להקליד אותיות קטנות.
הגלילה באמצעות משטח המגע ב-Mac לא חלקה.
יכול להיות שגלילה באמצעות לחיצה וגרירה של רכיבים מסוימים בממשק המשתמש לא תפעל, כי זה לא מתוכנן. אם זה המצב, אפשר להשתמש בגלגל העכבר כדי לגלול.
טקסט מטושטש, ממשק משתמש מטושטש ובעיות אחרות ב-Chrome בחלק מהתצורות של מערכת Windows. פתרון אפשרי: הפעלת WHP.
אמולטור – סימולציה של מטוסים ועוגנים:
- לפעמים העוגנים לא מופיעים מחדש בקרבת אותו מיקום
- יכול להיות שחלוניות שאפשר להזיז לא יעוגנו לקירות או לתקרה
- המטוסים המדומה לא תואמים לפריסה הפיזית של החדר התלת-ממדי במצב מעבר
- באופן כללי, יש אזורים מוגבלים לעיגון אובייקטים בחדר וירטואלי
- פריט מידע קטן שנוצר בתהליך פיתוח (Artifact) ומוצג בתצוגת המעבר ב-Windows
- במקרים מסוימים, הצבת עוגנים עלולה לגרום לקריסת האפליקציה
- יכול להיות שיופיעו קווים שחורים מעל האפליקציות כשמזיזים אותן קרוב לקרקע ב-Windows
אמולטור – אחרים:
- האמולטור מופעל רק במצב 'עצמאי'. מצב 'הטמעה' (ממשק משתמש מוטמע) עדיין לא נתמך.
- התחברות באמצעות חשבונות באמולטור ב-Windows עלולה לגרום לאמולטור להפסיק להגיב
- תוכן ממשק המשתמש של חלונות עשוי להיעלם אחרי שינוי הגודל (פתרון עקיף: לחיצה על לחצן 'הדף הבית')
- באפליקציה JXRCore ActivityPanelTest, החלונית המשנית לא מוצגת בהתחלה
- יכול להיות שפריטים בהגדרות המהירות ייעלמו מהגדרות המערכת אחרי תקופה ארוכה.
- יכול להיות שממשק המשתמש של האמולטור יופיע מחוץ לאזור המסך בהתחלה. אם כן, משנים קצת את הגודל של חלון האמולטור והוא אמור לחזור למקומו.
- יכול להיות שהאמולטור לא יופעל כשמשתמשים ב-Chrome Remote Desktop ב-Windows
- בשלב הזה, אין תמיכה ב-OpenXR באמולטור, ואפליקציות OpenXR עלולות לגרום לקריסת האמולטור
- כשלים נדירים כשמנסים לשלוח דוחות על באגים באמצעות ההגדרות המורחבות של Android Studio ב-Windows
- הסמל 'חזרה לניווט' לא מוצג בצורה תקינה באפליקציית ההגדרות עד שהסמן מתקרב אליו ב-Mac
- במקרים מסוימים, יכול להיות שתהיה שגיאה בבנייה כשמשתמשים במודול פרופיל Baseline כחלק מפרויקט תבנית XR
- הנגישות של XR Talkback משולבת עד עכשיו רק באופן חלקי באמולטור
אפליקציית Scene Viewer:
- הזזת רכיבים ב-Scene Viewer עלולה לגרום לקריסה. כדי לעקוף את הבעיה הזו, צריך להזיז מעט את מיקום הראש מהמיקום ההתחלתי (למשל, באמצעות פנורמה, תנועת מצלמה, מקשי WASD וכו') לפני שמנסים להזיז את הרכיב.
- התכונה 'גודל אמיתי ביחס של 1:1' לא תפעל בצורה תקינה אם הגודל האמיתי של המודל התלת-ממדי קטן מהמגבלה המינימלית או גדול מהמגבלה המקסימלית של קנה המידה (שמוגדרות כרגע ל-20 ס"מ ו-70 מ' בהתאמה).
- יכול להיות שהמודל התלת-ממדי יקפוץ בפריים הראשון אחרי הטעינה
35.2.10 (1 באוקטובר 2024)
- נוספו מכשירי Pixel AVD חדשים, כולל Pixel 9, Pixel 9 Pro, Pixel 9 Pro XL ו-Pixel 9 Pro Fold
- נוספה תמונה חדשה של מערכת Tablet ל-Vanilla Ice Cream (API 35)
35.1.20 (29 באוגוסט 2024)
- נוסף מכשיר Pixel 8a AVD
- תיקוני באגים שונים במכשירים מתקפלים
- עדכון Qt ותיקונים לקריסות ולתקיעות שקשורות ל-Qt
- [תיקון באג] תיקון קריסות וקיפאון ב-Windows באפליקציות שמשתמשות ב-Vulkan
34.2.16 (9 ביולי 2024)
- [תיקון באג] קפיאת ממשק המשתמש שמתרחשת ב-Pixel Fold במהלך קיפול או פתיחה
- [תיקון באג] גרסת Android מוצגת באופן שגוי כ-Android Vanilla Ice Cream Preview במקום API 35 ב-Mac M1.
- [תיקון באג] בעיה מספר 296162661: הפונקציה HasSystemFeature FEATURE_SENSOR_HINGE_ANGLE מחזירה true באמולטור של טאבלט Pixel C
34.2.15 (31 במאי 2024)
- תיקנו קריסות שונות שקשורות למצב swangle ולניקוי של מפרסמים
34.2.14 (20 במאי 2024)
נבדק ב-Android Studio Jellyfish Stable Patch 1.
- [תיקון באג] לפעמים תמונת המצב נתקעת באמולטור מוטמע
- [תיקון באג] הלחצנים 'לא' ו 'ביטול' לא פועלים כראוי בתמונת מצב
- [תיקון באג] הלחצנים של לוח החצים לא פועלים
- [תיקון באג] תוקנה הבעיה שמופיעה ב-Windows ומונעת את הפעלת האמולטור בתנאים מסוימים כשמשתמשים במצבי GPU עם ANGLE, ומוצגת הודעת השגיאה 'האתחול של אמולציית GL נכשל' ביומן. שימו לב: יכול להיות שעדיין תופיע השגיאה הזו בגרסה הזו אם תפעילו את האמולטור באמצעות שורת הפקודה עם האפשרות
-gpu swangle_indirect. אם אתם עדיין רוצים להפעיל את האמולטור באמצעות שורת פקודה ב-Windows עם עיבוד גרפי של תוכנה בגרסה הזו, אתם יכולים להשתמש ב--gpu swiftshader_indirect - [תיקון באג] קיצור הדרך למיקום במקלדת טוען מפה שלא ניתן להשתמש בה
- [תיקון באג] כשמגדירים מיקום, הדו-שיח 'שמירת המסלול' לא מופיע
34.2.13 (30 באפריל 2024)
נבדק באמצעות Android Studio Jellyfish Stable.
- עדכון ל-Qt 6.5.3
- תאימות לעדכונים של Google Maps API שמשמשים בתכונות המיקום בבקרה המורחבת של האמולטור, שמתרחשים בסוף מאי.
- תיקוני קריסה משמעותיים
- תיקונים שונים ב-AVD של Pixel
- עדכון של ספריית הגרפיקה שמשמשת לעיבוד תוכנה
- [תיקון באג]בעיה מספר 225541819 הפעלת Chrome גורמת לקריסה של האמולטור ב-x86_64
- [תיקון באג]בעיה 314614435: ניתוח של המתג
-http-proxyמתבצע בצורה שגויה
34.1.20 (1 באפריל 2024)
נבדק באמצעות Android Studio Iguana Stable.
- [תיקון באג] בעיה מספר 314614435: תיקון בעיה שבה המתג
-http-proxyמנותח בצורה שגויה
34.1.19 (7 במרץ 2024)
נבדק באמצעות Android Studio Iguana Stable.
- [תיקון באג] בעיה מספר 312677259: תוקנה בעיה של קפיאת המסך באמולטור מוטמע אחרי שינוי הגודל של החלון.
34.1.18 (29 בפברואר 2024)
נבדק באמצעות Android Studio Iguana Stable.
- מכשירים נוספו לאמולטור, כולל:
- Pixel Fold
- Pixel Tablet
- Pixel 8
- Pixel 8 Pro
- Pixel 7a
- בדיקת שילוב של gRPC: עכשיו יש נקודות קצה של gRPC שזמינות לבדיקות עם מכשור שפועלות בתוך האמולטור, וכך אפשר לבדוק תרחישים ריאליסטיים. התכונה הזו מאפשרת למפתחים ליצור אינטראקציה בטוחה עם נקודת הקצה של gRPC שמארח אמולטור Android מתוך בדיקות מכשור של Android.
- תיקנו באגים שונים
- תיקון באגים: שיפורים בנוחות השימוש במכשירים מתקפלים
- תיקון באג: שינוי המיקום של האמולטור אחרי סיבוב
- תיקוני קריסות
33.1.24 (28 בדצמבר 2023)
נבדק באמצעות Android Studio Hedgehog Stable ו-Iguana Beta 1.
- תוקנה בעיה במצלמת האינטרנט של האמולטור שלא אפשרה הקלטת מסך בפורמט mp4.
- תיקון קריסה של Emulator ב-Pixel Fold AVD כשהוא נפרש במהלך הקלטת מסך.
- תוקנה בעיה שבה ב-Pixel Fold מוצג סקין שונה של הטלפון עם מקלדת מנותקת, ואי אפשר להשתמש בו (הבעיה תוקנה ב-Windows, Mac Intel ו-Linux)
- תוקנה תקלה במראה של חיישנים וירטואליים במצב עצמאי (תוקן ב-Windows, ב-Mac Intel וב-Linux)
- תיקנו כמה קריסות, במיוחד בזמן סגירת האמולטור
33.1.23 (30 בנובמבר 2023)
נבדק ב-Android Studio Giraffe Patch 4 וב-Hedgehog Stable.
- הטמעה חדשה של מכשיר מתקפל כדי לדמות טוב יותר את מכשיר Pixel Fold, פועלת עם API 34 העדכני
- שדרוג של קצה העורפי של הגרפיקה: הטמענו את פרוטוקול gfxstream בקצה העורפי של הגרפיקה. השיפור הזה מעלה את הביצועים הכוללים של הגרפיקה ואת היציבות של המערכת. בנוסף, הוספנו תמיכה ב-Vulkan 1.3 החל מקובץ אימג' של המערכת עם API 34
- בקשה לתכונה: אפשרות להשבית את תנועת הצביטה לשינוי גודל או להקצות מחדש את מקש הקיצור שלה
- [תיקון באג] בעיה מספר 302562962 תיקון קריסת מצלמת האינטרנט של האמולטור בשימוש ב-MacOS Sonoma
- [תיקון באג] בעיה מספר 293503871 תוקנה בעיה שבה ההגדרה 'מיקרופון' לא נשמרת כשמפעילים מחדש את האמולטור
- [תיקון באג] בעיה מספר 270386314 תיקון שגיאה בהנפשה שבה סרגל הצד נשאר פתוח אחרי שמקטינים את מסך ה-AVD
- [תיקון באגים] בעיה מספר 154896775 תיקון כלי לשליחת באגים
32.1.15 (29 באוגוסט 2023)
נבדק ב-Android Studio Giraffe Patch 1 וב-Hedgehog Canary 16.
- עמידה בדרישות החומרה של GAS לגבי חיישנים ב-AAE Emulator
- [Bug Fix] Issue #266201208 Hebrew SMS is not sent on API 33
- [תיקון באג] בעיה מספר 257097404: האמולטור לא מציג את השעה הנכונה אחרי שהמארח מתעורר ב-API 29 וב-API 30
- [תיקון באג] בעיה מספר #228201899 אי אפשר לראות את מפות Google בתוך אמצעי הבקרה המורחבים של אמולטור Android
32.1.14 (27 ביוני 2023)
נבדק ב-Android Studio Hedgehog Canary 8, Giraffe Beta 5 ו-Flamingo Stable.
- תיקון של כיווני מצלמה ועיוותים באמולטור.
- [תיקון באג] בעיה מספר #257097404 'האמולטור לא מציג את השעה הנכונה אחרי שהמארח מתעורר'. הבאג הזה עדיין ניתן לשחזור ב-API 29 וב-API 30.
- [תיקון באג] בעיה מספר 243456582 "יכול להיות שגרסאות Android אחרי API 30 לא יופעלו בצורה תקינה באמולטור במחשבי Mac M1"
32.1.13 (22 במאי 2023)
נבדק עם Android Studio Hedgehog Canary 2, Giraffe Beta 1 ו-Flamingo Stable.
- הוספת תמיכה במכשירי Pixel Fold וב-AVD של Pixel Tablet.
- שיפור בעיית הקריסה של gLinux.
- [תיקון באג] בעיה מספר 215231636 'האמולטור עם API מעל API 30 לא פועל במעבד Intel דור 12'.
- [תיקון באג] בעיה מספר 275397905 רמה גבוהה של קריסות ב-אמולטור Android M1 כשמעבירים את המיקוד של הסמן פנימה והחוצה מהאמולטור שוב ושוב.
- בעיה מוכרת בהפעלת AVD כשקיים דוח קריסה של אמולטור חדש יותר. מידע נוסף זמין במאמר פתרון בעיות באמולטור.
32.1.12 (21 במרץ 2023)
נבדק ב-Android Studio Giraffe Canary 10, Flamingo RC ו-Electric Eel Patch 2.
- [תיקון באג] בעיה מספר 267647323 הרשת לא פועלת באמולטור שהופעל מ-Android Studio
- [תיקון באג] בעיה מספר 268498686 המסך של האמולטור מהבהב
- [תיקון באג] בעיה מספר 270034824 הביצועים של האמולטור ירדו אחרי העדכון לגרסה 33.1.1
- [תיקון באג] בעיה מספר 225541819 הפעלה של Chrome גורמת לקריסה של האמולטור ב-x86_64
- [תיקון באג] בעיה מספר 257097404: האמולטור לא מציג את השעה הנכונה אחרי שהמארח מתעורר
- הוספת דיווח על קריסות למכשירי Apple עם מעבדי M1
32.1.11 (8 בפברואר 2023)
נבדק באמצעות Android Studio Giraffe Canary 2, Flamingo Beta 1 ו-Electric Eel Patch 1.
- אופטימיזציה של מהירות הרשת
- תמיכה בעכבר באמולטור מוטמע
- שיפורים ב-Virtio-snd
- השבתת השימוש בקישורים סמליים בזמן פתיחת הקובץ של אמולטור Android במהלך ההתקנה
- תיקון קריסה ב-emulator-check
31.3.14 (13 בדצמבר 2022)
נבדק באמצעות Android Studio Dolphin, Electric Eel RC1 ו-Flamingo Canary 9.
- [תיקון באג] תוקנו קריסות של מכשירי AVD שמתרחשות כשמתחברים לחנות Play.
31.3.13 (27 באוקטובר 2022)
נבדק באמצעות Android Studio Dolphin, Electric Eel Beta 2 ו-Flamingo Canary 5.
- [תיקון באג] בעיה מספר 249948338: פרמטר אזור הזמן לא פועל
- [תיקון באג] בעיה מספר 249366543: האפשרות Emulator -dns-server לא פועלת אחרי API 31
31.3.12 (10 באוקטובר 2022)
נבדק באמצעות Android Studio Dolphin ו-Electric Eel Beta 1.
העדכון הזה כולל את השיפורים והתיקונים הבאים:
- [Bug Fix] Issue #247843000: AVD relative path handling error
- הגדלת נפח הדיסק ב-API מגרסה 24 ואילך
31.3.11 (23 בספטמבר 2022)
נבדק באמצעות Android Studio Dolphin ו-Electric Eel Canary 10.
העדכון הזה כולל את השיפורים והתיקונים הבאים:
- [תיקון באג] קריסת אמולטור מוטמע של AVD בחלון Extended Controls
- [תיקון באג] בעיה מספר 183139207: בעיות באודיו שקשורות להפעלת המיקרופון ב-Emulator
- [תיקון באג] בעיה מספר 229764024: באג ב-AVD שגורם לבעיות בהתנהגות ממשק המשתמש
- [תיקון באג] שגיאה בהפעלת AVD של API 33 ב-Mac M1.
- [תיקון באג] בעיה מספר 243053479: מהירות רשת איטית אחרי עדכון של Emulator
- [תיקון באג] בעיה מספר 244617627: מיקום במפות לא פועל ב-Windows וב-Linux
- [תיקון באג] בעיה מספר #232971796: הלחצן 'התקשר למכשיר' לא פועל בדף 'טלפון' בקטע 'אמצעי בקרה מורחבים'
- עדכון אמולטור Android ל-minigbm
- העברה של סקריפטים לבנייה אל Python3
31.3.10 (18 באוגוסט 2022)
נבדק באמצעות Android Studio Dolphin Beta 5 ו-Electric Eel Canary 9.
הורדות עצמאיות של האמולטור זמינות עכשיו. אם נתקלתם בבעיות או בקריסות בגרסה היציבה העדכנית הזו, אתם מוזמנים לדווח על באג ולשקול להוריד גרסה שעבדה בעבר מארכיוני ההורדות של האמולטור.
העדכון הזה כולל את השיפורים והתיקונים הבאים:
- תמיכה משופרת בנתיבי Unicode ב-Windows
- שיפור הטיפול בסגירת אמולטור, כך שהפעלה חדשה של אותו AVD יכולה להצליח.
- עדכון העיצוב והגדרות ברירת המחדל של מכשירי AVD מתקפלים
- עדכון של כפתורי האמולטור של Wear
- שיפורים בסטרימינג של אודיו ב-gRPC
- נוספה פקודה להגדרה של מסוף האמולטור
- תיקון ב-Chrome ל-API 31
- [תיקון באג] אימות חשבון Google נכשל ב-GmsCore v21.42.18
31.2.10 (20 באפריל 2022)
נבדק באמצעות Android Studio Dolphin Canary 8 ו-Chipmunk RC 1.
העדכון הזה כולל את השיפורים והתיקונים הבאים:
- הוספת כלי לטעינת פונקציות Vulkan עם חלופות
- [תיקון באגים] תיקון שגיאת בנייה ב-gcc8
31.2.9 (23 במרץ 2022)
נבדק באמצעות Android Studio Dolphin Canary 7.
העדכון הזה כולל את התיקון הבא:
- [תיקון באג] התעלמות מלחץ הזיכרון כששומרים תמונת מצב ב-M1
31.2.8 (7 בפברואר 2022)
נבדק באמצעות Android Studio Bumblebee Patch 1 ו-Chipmunk Canary 6.
העדכון הזה כולל את השיפורים והתיקונים הבאים:
- [תיקון באג] אי אפשר להיכנס לאפליקציות
- [תיקון באג] בעיה מספר 215368358: הפעלה מחדש של adb בפלטפורמת Intel תגרום לקריסת ה-AVD עם הודעת השגיאה vcpu shutdown request (בקשה להשבתת מעבד וירטואלי)
31.2.7 (1 בפברואר 2022)
נבדק באמצעות Android Studio Bumblebee Patch 1 ו-Chipmunk Canary 6.
העדכון הזה כולל את התיקון הבא:
- [תיקון באג] שגיאת תקיעה של האמולטור במכונות M1.
31.2.6 (20 בינואר 2022)
נבדק באמצעות Android Studio Arctic Fox, Bumblebee Beta 4 ו-Chipmunk Canary 6.
העדכון הזה כולל את השיפורים והתיקונים הבאים:
- נוספו לחצני Wear לאמולטור Wear OS.
- הוספנו אפשרות לערוך את כל מאפייני הרכב בכרטיסייה VHAL.
- [תיקון באג] אימות חשבון Google נכשל ב-GmsCore גרסה 21.42.18.
- [תיקון באג] Netshaper לא פעל בצורה תקינה עם VirtioWifi.
- [תיקון באג] פקודת המסוף של העכבר לא פעלה.
- נוסף אימות KVM ליצירת AVD מקומי.
31.1.3 (18 בינואר 2022)
העדכון הזה כולל את השיפורים והתיקונים הבאים:
- הפעלנו יציאות של מסוף ל-Fuchsia.
- כשמשנים את הגודל של חלון שמוצג בכמה מסכים, המערכת מתעלמת מהכיוון.
- Wi-Fi: נוספה תמיכה בסינון מנות unicast על סמך כתובת MAT mac.
- Wi-Fi: תוקנה קריסה שמתרחשת כשמשתמשים ב-vmnet.
30.9.5 (15 בדצמבר 2021)
העדכון הזה כולל את השיפורים והתיקונים הבאים:
- נוספה אפשרות לשנות בקלות את הגודל לחלון בגודל של מחשב או טאבלט.
- הוספנו תמיכה בקלט מריבוי נקודות מגע ממכשירים מארחים תואמים.
- VirtioWifi: נוספה תמיכה ברשת tap.
- הפעלת קלט סיבובי לתמונות מערכת של Wear.
- תוקנה הבעיה בהגדרת האודיו של gRPC.
- עדכנו את ההפעלה של SensorReplay Emulator כדי לתמוך בחיישני Android רגילים.
- חיבור האמולטור לציוד היקפי ולמכשירים באמצעות USB עם העברת נתונים דרך USB.
30.4.5 (23 בפברואר 2021)
העדכון הזה כולל את השיפורים והתיקונים הבאים:
- macOS: תוקנו בעיות בעיוות של קלט אודיו.
- הוספנו תמיכה ב-virtio-vsock במרחב המשתמש.
- תמונות מערכת עתידיות ישתמשו ב-virtio-console עבור logcat והודעות ליבה.
- האצת הרינדור של Vulkan.
- נוספה תמיכה בניפוי באגים של תמונת מצב במקרה של שגיאת בדיקה.
- virtio-gpu: עודכנו ההגדרות כדי לתמוך ב-enums העדכניים של משאבי blob.
- הוספנו תמיכה בצילום תמונת מצב להעברות גרפיקה מסוג asg.
- macOS: נוספה תמיכה בבנייה מול macOS SDK 11.1 ואילך.
- התכונה KVMclock מופעלת כברירת מחדל בקובצי אימג' חדשים יותר של המערכת.
- הוספנו תמיכה בחיישן דופק לאמולטורים של Wear.
- הוסר קצה העורף (backend) של libportability Vulkan.
- הוספנו תמיכה בתכונות נוספות בסימולטור המודם.
30.0.26 (16 באוגוסט 2020)
העדכון הזה כולל כמה תכונות חדשות, שיפורים בתכונות קיימות ותיקוני באגים.
תמיכה במכשירים מתקפלים עם חיישן ציר וירטואלי ותצוגה תלת-ממדית
נוספה תמיכה בחיישני ציר למכשירים מתקפלים. לשם כך נדרשים קובץ אימג' של המערכת של Android 11 והגדרת AVD עתידית. תצוגה תלת-ממדית של מכשיר מתקפל ופרמטרים של ציר משולבים עכשיו עם הגדרות קבועות מראש קיימות של מכשירים מתקפלים. אפשר להשתמש בהגדרות הבאות, למשל, עם קובץ
config.iniשל AVD מתקפל בגרסה 7.3:hw.sensor.hinge = yes hw.sensor.hinge.count = 1 hw.sensor.hinge.type = 1 hw.sensor.hinge.ranges = 180-360 hw.sensor.hinge.defaults = 180 hw.sensor.hinge.areas = 54.7-0 hw.sensor.posture_list=4, 3 hw.sensor.hinge_angles_posture_definitions=210-360, 180-210 hw.sensor.hinge.fold_to_displayRegion.0.1_at_posture=4במכשירים מתקפלים יש עכשיו גם פרמטר של סוג משנה. המאפיין
config.inihw.sensor.hinge.sub_type = hinge/foldזמין עכשיו. מידע נוסף זמין בפוסט בבלוג בנושא פיתוח ל-Android 11 באמצעות Android Emulator.חיישן הציר מופעל עכשיו כברירת מחדל.
אם מוגדר מכשיר מתקפל, האמולטור שולח עכשיו עדכונים של חיישני זווית הציר ושינויים בתנוחה לאורח. במכשירים מתקפלים קיימים, עכשיו מתעדכנים זווית החיישן של הציר והמצב כשלוחצים על הלחצנים של סרגל הכלים לקיפול או לפתיחה.

אמולטור למארחי ARM64
קוד המקור של אמולטור Linux תומך עכשיו בהידור צולב ממארחי x86_64 למארחי arm64, ומאפשר הפעלה של קובצי אימג' של מערכת arm64 עם וירטואליזציה של KVM. בשלב הזה, רק
-gpu swiftshader_indirect(Swiftshader arm64 host rendering) נתמך, אבל אפשר גם להשתמש בקבוצה תואמת של ספריות 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 שיושקו בקרוב.
- בגלל האופן שבו רינדור האמולטור פועל, אנחנו מעבדים עכשיו את virtio-gpu virtqueue בשרשור vcpu (כי הרינדור מועבר לשרשורים אחרים בכל מקרה). הרינדור של virtio-gpu יופעל בקובץ אימג' של המערכת ובגרסת אמולטור עתידיות.
- בתמונת מערכת עתידית, האמולטור יוכל להריץ את כל הגרפיקה באמצעות מחסנית מבוססת-virtio-gpu.
תכונות חדשות ושיפורים נוספים
- מעכשיו אפשר להשתמש ב-USB passthrough ב-Windows באמצעות
-qemu -usb -device usb-host,vendorid=<usb-vendor-id>,productid=<usb-product-id>. (האפשרות הזו אמורה לפעול גם ב-Linux וב-macOS) - ספריות WebRTC עודכנו לגרסה M83.
- האמולטור תומך עכשיו בהזרמת אודיו במאגרי תגים באמצעות WebRTC.
- נקודת הקצה של צינור darwinn הוסרה.
- עכשיו אפשר להשתמש ב-CUDA VPx decode לסרטונים, אם CUDA VPx decode זמין בחומרה, באמצעות משתנה הסביבה
ANDROID_EMU_MEDIA_DECODER_CUDA_VPX=1. - ב-macOS, SSE 4.1 ו-4.2 זמינים עכשיו מתוך מערכת ההפעלה האורחת של Android.
- ב-macOS, INVTSC מופעל עכשיו כברירת מחדל. כך אפשר לשפר את הדיוק של מדידות הזמן מהמכונה האורחת.
- אנחנו עוקבים עכשיו במדדים אחרי החלונית המורחבת של אמצעי הבקרה שנבחרה על ידי המשתמש.
- האמולטור של Linux משתמש עכשיו בשעון KVM paravirtualized כשגרסת ליבת האורח היא >= 5.4 (תמונות מערכת R ואילך).
- האמולטור משתמש עכשיו ב-LZ4 כדי לבטל את הדחיסה של ליבות האורח, ולכן הוא תואם לצינור הנתונים המודרני של הליבה.
הוספנו פקודות במסוף כדי לקבל את ספריית ה-AVD של האמולטור, את נתיב הקובץ של הגילוי בתרחיש השימוש שמוטמע ב-Studio ואת הנתיב לצילום המסך:
adb emu avd path # Obtains path to AVD directory adb emu avd discoverypath # Obtains path to discovery file adb emu avd snapshotspath # Obtains path to snapshots folder adb emu avd snapshotpath <snapshotName> # Obtains path to the folder that stores the snapshot for the snapshot with name <snapshotName>
כדי לחסוך במקום במסך, הוספנו אפשרות להסתיר את מסגרת המכשיר עבור ה-AVD הנוכחי בExtended Controls > Settings (אמצעי בקרה מתקדמים > הגדרות). כדי להסתיר את מסגרות המכשירים באופן גלובלי בכל ה-AVD, הוספנו את ה-feature flag
NoDeviceFrame, שאפשר להפעיל אותו באמצעות הפעלת האמולטור משורת הפקודה עם-feature NoDeviceframe, או כדי לנעול אותו, מוסיפיםNoDeviceFrame = onל-~/.android/advancedFeatures.ini(צריך ליצור את הקובץ הזה אם הוא עדיין לא קיים).הוספנו פריט לתפריט הנפתח בדף הסלולר כדי להפעיל ולהשבית את התמיכה בחיוב לפי נפח נתונים. הפעולה הזו לא מתבצעת בקובצי אימג' ישנים של המערכת שלא תומכים בהחלפה בין חיוב לפי נפח נתונים לבין חיוב לפי זמן שימוש ב-5G.
- נוספה גם פקודה במסוף לאותה מטרה:
gsm meter on|off
- נוספה גם פקודה במסוף לאותה מטרה:
שודרגו שרשרת הכלים וה-build ל-C++17.
תיקונים: אמולטור מוטמע
- עכשיו הלוח אמור לפעול.
- תוקנה בעיה שבה תווים באותיות רישיות הועברו כתווים באותיות קטנות באמולטור.
- תוקנה טעינה של אסימון מסוף מנתיב Unicode ב-Windows.
- תוקנה הודעת השגיאה
SO_REUSEPORTב-Linux. - תוקנה בעיה של קובץ snapshot פגום כששולחים פקודות של קובץ snapshot דרך gRPC, וגם כשלוחצים על לחצן השמירה של קובץ ה-snapshot באמולטור המוטמע ב-Android Studio.
כשמשתמשים באמולטור Linux שמוטמע ב-Studio, גילינו שאם הפעולה הזו מתבצעת דרך Chrome Remote Desktop, יש באג שגורם לכך ש-
XDG_RUNTIME_DIRלא מוגדר, ויכול להיות שהאמולטור המוטמע לא יופיע כי קבצי הגילוי של האמולטור ממוקמים ב-XDG_RUNTIME_DIR. אפשר לבדוק את הסטטוס של הבעיה הרלוונטית במעקב אחר בעיות ב-Chrome.כפתרון עקיף, האמולטור חוזר עכשיו לשימוש בקובצי גילוי בספרייה שאולי שונה ומבוססת על מזהה המשתמש:
/run/user/<uid>.אמולטור מוטמע: במכשירים עם פינות מעוגלות או חריצים, הפריסה משתנה עכשיו בצורה תקינה כדי לפנות מקום לפינות ולחריץ. לשם כך צריך לבצע אתחול קר של הסימולטורים האלה.
נקודת הקצה gRPC תומכת עכשיו בשליחת SMS למכשיר.
תיקונים כלליים
- נתקלנו בבעיות תאימות בהפעלת אמולטור Windows עם Riot Vanguard פעיל. האמולטור של Windows מזהה עכשיו את מערכת Vanguard למניעת רמאות, ואם הוא מזהה אותה הוא מציג הודעת אזהרה.
- תוקנה שגיאת
FD_SETSIZEב-Windows. אנחנו משתמשים עכשיו ב-WSAEventSelect()במקום ב-select()כדי ליצור חיבורים לא חוסמים לשרתי loopback. - נוספה תמיכה בתכונת CPUID F16C לאמולטור 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.*). - כשמבצעים build של האמולטור ב-Windows, הסיכוי לראות כשלים לא עקביים בכתיבה לקבצים קטן יותר. מידע נוסף זמין בהוראות ל-build ב-Windows.
- השבתנו את לחצן הזום במכשירי AVD מתקפלים, כי הוא גרם לבעיות.
- האמולטור מדווח עכשיו בצורה נכונה על זמן האתחול שמגיע מהפעלה מחדש של המכשיר.
- Linux: במקרה שאין מספיק הרשאות KVM, האמולטור מדפיס עכשיו הוראות לניפוי באגים באופן מהיר יותר.
- תוקנה בעיה שבה האמולטור לא הצליח לאתחל תמונות מערכת עדכניות ללא האצה.
- תוקן באג שגרם להשחתת זיכרון או לקריסה בהפעלה מגלאי של אתחול שהושלם.
- תוקנה דליפת זיכרון במהלך סשנים ארוכים של הקלטת מסך.
- הסמלים של האמולטור עודכנו כדי לשקף את המיתוג של Studio 4.1.
- הוספנו תמיכה משופרת בזיהוי סשנים מרוחקים ב-Windows.
תיקונים: גרפיקה ופענוח וידאו
- תוקנה בעיה שבה המשחק האחרון Asphalt 9 עבר רינדור עם מסך שחור.
- הוסר ספאם לגבי ניקוי מאגר זמני ממופה באמצעות
NULL. - תוקנה בעיה של מרוץ תהליכים (race condition) בהסרת מצב Vulkan כשיוצאים מאפליקציית Vulkan לאורחים.
- תוכנות הצללה (shader) של אמולציית Vulkan ASTC/ETC2 מוטמעות עכשיו בספריית libOpenglRender. השיטה הזו אמינה יותר בהשוואה לקריאה ממערכת הקבצים.
- תוקנה בעיה ב-Vulkan שבה אם מריצים עם מכונת Vulkan 1.0 במארח, הפונקציה
vkGetImageMemoryRequirements2KHRמנקה באופן שגוי את השדהpNextשל המבנהVkMemoryRequirements2שמוחזר. - תוקנה דליפת זיכרון במעבד התצוגה (renderer) של Vulkan.
- תוקנה רגרסיה שהתרחשה לאחרונה, שבה קומפילציה של הצללות GLSL ES 1.00 עם שמות משתנים כמו
isampler2Dנכשלה. - עדכון של כלי התרגום של ANGLE shader עם תיקונים שונים לבעיות אפשריות בהידור של shaders ב-Linux.
- אם קומפילציית shader בסיסית של framebuffer blit נכשלת, האמולטור קורס כדי לעקוב אחרי התופעה.
- העדכון של מתרגם ה-shader של ANGLE מאפשר להתעדכן ב-ANGLE upstream. הבעיה הזו תוקנה. היא הייתה קשורה להשחתת זיכרון בזמן תרגום וקיפול קבוע של הצללות OpenGL ES שהשתמשו במטריצות לא ריבועיות. מתרגם ה-Shader הוא עכשיו ספרייה משותפת נפרדת,
libshadertranslator.dll. - תוקנה בעיה בהפעלת Vulkan בחלק מהדרייברים של GPU, שבה לא נמצאו פונקציות מסוימות של מכשיר 1.1.
- Vulkan: חזרנו לשימוש ברכיב הטעינה שנוצר מראש, כי העדפת רכיב הטעינה של Vulkan במערכת גרמה לבעיות בחלק מההגדרות. אנחנו ננסה למצוא פתרון טוב יותר.
- תוקנה הבעיה שבה נעשה שימוש בזיכרון חיצוני של Vulkan, שיכול היה להיות מיובא עם אינדקסים לא תואמים של סוגי זיכרון במארח.
- תוקנה בעיה באמולציה של
GL_ALIASED_POINT_SIZE_RANGEשבה ה-enum לא נתמך במארח. - תוקנה בעיה שבה בחלק מה-GPU של המארח, לא הייתה אפשרות לקמפל את Skia shaders בגלל שגיאות שקשורות ל-
GL_EXT_shader_framebuffer_fetch. - העותק שלנו של רכיב ה-renderer של D3D9 ANGLE הוסר לפני כמה גרסאות, ולכן אנחנו גם מעבירים אוטומטית משתמשים שהשתמשו ברכיב ה-renderer הזה ל-d3d11 ANGLE אם הוא נבחר בהעדפות ממשק המשתמש.
- נוסף מידע נוסף על ניפוי הבאגים להפעלת WGL ב-Windows כדי לאתר כשלים.
- כשמשתמשים ב-
hw.gltransport=virtio-gpu-pipe, הביצועים משתפרים כי לא מתבצעת פעולת ספין על המארח בהעברות מהמארח לאורח. - הוספנו עוד רישום ביומן ניפוי הבאגים למקרים שבהם האתחול של האמולציה של OpenGLES נכשל.
- פתרנו בעיה שגרמה להבהוב של סרטונים ב-YouTube או לכך שהם לא הופיעו בטעינת תמונת מצב.
- חזרנו לשימוש בפענוח תוכנה עבור libvpx לעת עתה, כי נתקלנו בבעיות בפענוח חומרה של libvpx באמצעות CUDA. אם יש לכם הטמעה נתמכת של פענוח חומרה של CUDA בצד המארח, אפשר להפעיל מחדש את פענוח החומרה של libvpx באמצעות משתנה הסביבה
ANDROID_EMU_MEDIA_DECODER_CUDA_VPX=1.
30.0.10 (30 באפריל 2020)
העדכון הזה כולל תמיכה בהפעלת האמולטור ישירות ב-Android Studio ובמכשירים וירטואליים עם מצב חלון חופשי שמופעל כברירת מחדל.
הרצת האמולטור ב-Android Studio
מעכשיו אפשר להריץ את אמולטור Android ישירות ב-Android Studio. אפשר להשתמש בתכונה הזו כדי לחסוך במקום במסך, כדי לנווט במהירות בין האמולטור לחלון העריכה באמצעות מקשי קיצור, וכדי לארגן את תהליך העבודה של סביבת הפיתוח המשולבת (IDE) והאמולטור בחלון אפליקציה אחד.
מצב חלון חופשי
עכשיו אפשר ליצור מכשיר וירטואלי של Android (AVD) עם מצב חלונות חופשיים מופעל. לשם כך, בוחרים את פרופיל החומרה של טאבלט בגודל 13.5 אינץ' עם חלונות חופשיים כשיוצרים מכשיר וירטואלי ב-Android Studio. פרופיל החומרה הזה דורש קובץ אימג' של המערכת עם Android 11 תצוגה מקדימה למפתחים 3 ואילך.
בעיות מוכרות
בגלל בעיות בהעברת המיקוד למנהל החלונות, כרגע יש תקלה בשינוי הגודל של חלונות במצב חופשי. הבעיה הזו תטופל בגרסה עתידית של קובץ האימג' של מערכת Android 11.
30.0.0 (19 בפברואר 2020)
העדכון הזה כולל תמונות מערכת של Android 11 (רמת API 30) ושיפור ביצועים בהרצת קבצים בינאריים של ARM.
תמונות מערכת של Android 11
עכשיו אפשר ליצור מכשיר וירטואלי של Android (AVD) שמריץ Android 11. לשם כך, בוחרים באחת מתמונות המערכת הזמינות של רמת API 30:
- x86: כולל גם x86 וגם ARMv7 ABI.
- x86_64: כולל ABI x86, x86_64, ARMv7 ו-ARM64.
תמיכה בקבצים בינאריים של ARM בתמונות מערכת של Android 9 ו-Android 11
אם בעבר לא יכולתם להשתמש באמולטור Android כי האפליקציה שלכם הסתמכה על קבצים בינאריים של ARM, עכשיו אתם יכולים להשתמש בקובץ אימג' של מערכת Android 9 x86 או בכל קובץ אימג' של מערכת Android 11 כדי להריץ את האפליקציה שלכם – כבר לא צריך להוריד קובץ אימג' ספציפי של מערכת כדי להריץ קבצים בינאריים של ARM. תמונות המערכת של Android 9 ו-Android 11 תומכות ב-ARM כברירת מחדל, ומספקות ביצועים משופרים משמעותית בהשוואה לתמונות עם אמולציית ARM מלאה.
בעיות מוכרות
- חלק מקבצים בינאריים של ARMv7 לא פועלים בתמונות מערכת של Android 11 x86 ו-x86_64. מומלץ לבצע בנייה עבור ARM64 כשמטרגטים את Android 11.
29.0.11 (29 במאי 2019)
העדכון הזה כולל את השיפורים והתיקונים הבאים:
- Windows: האמולטור מסתמך עכשיו על קובץ ה-DLL
libgccשאנחנו שולחים, במקום על קובץ ה-DLLlibgccשעובר קומפילציה באופן סטטי. - Linux: נוספה תמיכה ב-logcat ל-gRPC API. מידע נוסף על gRPC זמין במאמר בנושא אמולטור של סטרימינג ב-gRPC (Linux).
- האמולטור כולל עכשיו גרסה ללא ממשק משתמש עבור מערכות הפעלה אורחות של 32 ביט x86
(
qemu-system-i386). התכונה הזו מאפשרת להריץ תמונות של 32 ביט x86 לרמות API 26 ומטה באמצעות הגרסה ללא ממשק משתמש. שימו לב: במכונות וירטואליות (VM) מסוג x86 ב-32 ביט עם API מגרסה 27 ואילך, האמולטור משתמש במנוע 64 ביט (qemu-system-x86_64) כי בתמונות המערכת האלה, מרחב המשתמש הוא 32 ביט, אבל הליבה היא 64 ביט. Android Studio משתמש בקרנל כדי לבחור מנועי אמולציה. - מעכשיו אפשר לציין נתיבים מותאמים אישית לספריית Qt באמצעות משתנה הסביבה
ANDROID_QT_LIB_PATH. - עכשיו אפשר להריץ את האמולטור עם קבצים בינאריים קודמים שמשתמשים ב-QEMU1 אם קובצי ההפעלה של QEMU1 (
emulator[64]-[x86|arm|etc]) ממוקמים בספריית האמולטור. - Windows: תוקנה בעיה שיכולה לגרום לפעמים לאמולטור להיכשל בהפעלה עם ההודעה 'בקשת השבתה של vCPU'.
- תוקנה בעיה שקשורה למחסום מיותר בצינור העברת הנתונים בטקסטורות דחוסות מדומה ב-Vulkan.
- תוקנה שגיאה שקרתה בבקשות של שרת proxy מסוג http כשנעשה שימוש בקידוד העברה במקטעים. מידע נוסף זמין במאמר בנושא פרטי ההתחייבות.
29.0.9 (7 במאי 2019)
העדכון הזה כולל את התיקון הבא:
- Windows: תוקנה בעיה שבה מצלמת הסצנה הווירטואלית ומצלמת האינטרנט לא פעלו באמולטור.
29.0.8 (6 במאי 2019)
העדכון הזה כולל את השיפורים והתיקונים הבאים:
- הוספנו תמיכה במספר מסכים של חומרה וירטואלית כשיש שירות אורח שמבצע ספירה ומגדיר כל מסך. בעדכון עתידי של קובץ אימג' של המערכת של האמולטור ייכללו כמה מסכים וירטואליים של חומרה.
- נוספה אפשרות חדשה לשורת הפקודה:
-delay-adb. האפשרות הזו משביתה את העיבוד של חבילות ADB עד שהפעלת האורח תושלם (לאחר הפעלה קרה). האפשרות הזו עוזרת לפתור בעיות שיכולות להתרחש אם משתמשים באמולטור בסביבת CI שמפעילה מחדש את האמולטור ומשתמשת ב-DDMS בו-זמנית. - תוקנה שגיאה שהתרחשה כשמטעינים תמונות מצב, שבה הפונקציה
glIsRenderbufferהחזירה ערך שגוי. - תוקנו כמה בעיות שקשורות למצב לא עדכני כשמבצעים הפעלה מחדש של האורח ב-Android.
- Windows: תוקנו בעיות שמנעו את הפעלת האמולטור כששם המשתמש ב-Windows הכיל תווים שהם לא תווי ASCII או רווחים.
בעיות מוכרות
- ממשק המשתמש של התמונות המיידיות מושבת בתמונות מערכת של Automotive כי נכון לעכשיו אין תמיכה בתמונות מיידיות בתמונות המערכת האלה.
29.0.6 (1 במאי 2019)
העדכון הזה כולל כמה תכונות חדשות, שיפורים בתכונות קיימות ותיקוני באגים.
הסרת התמיכה ב-QEMU1 וב-Windows בגרסת 32 ביט
כדי לשפר את התחזוקה של האמולטור, אנחנו כבר לא שולחים קובצי QEMU1 וקובצי Windows בינאריים של 32 ביט. אם אתם משתמשים ב-Windows 32-bit, לא תוכלו לשדרג לגרסה 29.0.6.
דרישות לתמונות מערכת של Android Q
אם רוצים להריץ מכשיר וירטואלי של Android (AVD) שמשתמש בקובץ אימג' של המערכת של Android Q, צריך להשתמש עכשיו בגרסה 29.0.6 (גרסת ההפצה הזו) ואילך.
שיפורים ב-Project Marble
העדכון הזה הוא המשך של העבודה שלנו על יוזמת Project Marble שהוכרזה ב-מפגש של מפתחי Android בנובמבר 2018. מידע נוסף על שיפורים אחרים ב-Project Marble בגרסאות קודמות זמין במאמר אמולטור Android: Project Marble Improvements.
במסגרת העדכון הזה, רוב המאמצים שלנו בפרויקט Marble הוקדשו לצמצום השימוש במשאבים של האמולטור, למשל צמצום השימוש במעבד של האמולטור בזמן שהוא לא פעיל. הוספנו גם שינויים שמקלים על העבודה עם האמולטור במגוון רחב יותר של סביבות, וטיפלנו בבעיות כלליות באיכות.
בקטעים הבאים מתוארים השיפורים בפרויקט Marble שנכללים בעדכון הזה:
שיפורים בהתנהגות האודיו של המארח
החל מגרסה 28.0.3, האמולטור חוסם את קלט האודיו מהמארח כברירת מחדל.
אם רוצים להשתמש בנתוני האודיו של המארח, אפשר להפעיל את האפשרות הזו דרך אמצעי בקרה מתקדמים > מיקרופון ואז להפעיל את האפשרות המיקרופון הווירטואלי משתמש בקלט אודיו של המארח. האפשרות הזו מושבתת אוטומטית בכל פעם שמפעילים מחדש את האמולטור.
אם אתם משתמשים בשורת הפקודה, אתם יכולים גם להפעיל את האודיו של המארח באמצעות האפשרות -allow-host-audio, ואתם יכולים להשתמש בפקודות ADB הבאות כדי להפעיל או להשבית את נתוני האודיו של המארח:
adb emu avd hostmiconadb emu avd hostmicoff
שיפורים בגרסאות של אמולטורים ללא ממשק משתמש
החל מגרסה 28.0.25, האמולטור כולל אפשרות ליצירת build ללא ממשק משתמש שאפשר להריץ בלי ממשק המשתמש. אפשר להשתמש ב-builds ללא ממשק משתמש כדי להגדיר את האמולטור ל-Docker ולתהליכי עבודה של שילוב רציף (CI).
העדכון הזה כולל שיפורים נוספים שמאפשרים להפעיל את האמולטור עם מספר מינימלי של תלות. ב-Linux, גרסאות build ללא ממשק משתמש לא כוללות יותר את הספריות 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
שודרגו ספריות ה-UI של Qt לגרסה 5.12 LTS
העדכון הזה כולל את השיפורים הבאים מגרסת Qt 5.12 LTS:
- כדי למנוע קריסות ב-
libpngdecoding של Qt כשמפעילים תמונות מערכת מסוימות, האמולטור משתמש עכשיו בעותק משלו שלlibpngכדי לפענח תמונות PNG. - כדי לפתור בעיות שקשורות להתקנות מסוימות של Linux שמכילות גרסאות לא תואמות של ספריות מסוימות שתלויות ב-Qt, אנחנו אורזים עכשיו את
libfreetype,libsoftokn,libsqlite3ו-libxkbcommonעם האמולטור. - האמולטור משתמש עכשיו בספריות Native של הפלטפורמה כדי לקבל את המידות של המסך, במקום להשתמש בספריות Qt שהחזירו תוצאות לא אמינות.
אופטימיזציות אוטומטיות של מעבד אחרי אתחול קר
כדי לטפל בשימוש במעבד, האמולטור מריץ עכשיו את פקודות ה-ADB הבאות באתחול קר אחרי שהוא מקבל אות boot complete:
adb shell settings put screen_off_timeout 214783647- הפקודה הזו מגדילה את הזמן הקצוב לתפוגה של המסך כשהוא כבוי, כדי שאפשר יהיה להשתמש באמולטור במצב סוללה בלי לטעון אותו. במצב סוללה, השימוש במעבד ברקע מצטמצם באופן משמעותי.
- במצב טעינה באמצעות AC, פעולות ברקע של GMSCore, כמו עדכוני אפליקציות, יכולות להשתלט על כל ליבות המעבד של המכשיר – וכתוצאה מכך גם על המחשב של המשתמש – בלי אזהרה.
adb shell pm revoke com.google.android.googlequicksearchbox android.permission.RECORD_AUDIO- הפקודה הזו מבטלת את הרשאות המיקרופון לאפליקציית חיפוש Google, וכך מצמצמת באופן משמעותי את השימוש במעבד ברקע במסך הבית ובמרכז האפליקציות כשאפליקציית חיפוש Google פעילה.
- הפקודה הזו מופעלת בנוסף להתנהגות ברירת המחדל של האמולטור, שכוללת השבתה של האודיו במחשב המארח. בנוסף, הוא מספק באופן אוטומטי את הפתרון לשימוש במעבד שמתואר בגרסה 28.0.23 עבור זיהוי מילות הפעלה.
משתני סביבה חדשים למעקב אחרי ביצועים
עכשיו אפשר להשתמש בשני משתני סביבה חדשים כדי להפעיל מעקב מפורט אחרי הביצועים של האמולטור והשימוש במשאבים.
SHOW_PERF_STATS=1- משתנה הסביבה הזה מאפשר מעקב אחרי השימוש במעבד ובזיכרון ה-RAM. מעקב לגבי השימוש ב-RAM מבחין בין שימוש בגרפיקה לבין סך הזיכרון התושב.
ANDROID_EMU_TRACING=1- משתנה הסביבה הזה מאפשר הדפסה בכל פעם שפעולת קלט או גרפיקה נמשכת זמן רב (יותר מ-1 אלפית השנייה).
- אנחנו משתמשים במשתנה הסביבה הזה גם כדי לאבחן בעיות שמשתמשי Windows נתקלו בהן, שקשורות לבעיות בביצועים (ירידה בקצב הפריימים) בהשוואה למשתמשים ב-macOS או ב-Linux.
שיפורים כלליים ב-Project Marble
העדכון הזה כולל גם את השיפורים הכלליים הבאים, שהם חלק מיוזמת Project Marble:
- עכשיו אפשר להשהות מיידית את כל מעבדי ה-vCPU באמולטור באמצעות פקודות המסוף הבאות:
adb emu avd pauseadb emu avd resume
- הפחתה משמעותית של התקורה של ציור OpenGL. השיפור הזה מפחית את השימוש ביחידת העיבוד המרכזית (CPU) בזמן שהאמולטור מציג אנימציות.
- שוחזרה התמיכה במכשיר רשת וירטואלי e1000 של QEMU. אפשר להשתמש במכשיר הזה כדי להגדיר את האמולטור בסביבת רשת מגשרת. בסביבת רשת מגשרת, האמולטור מוצג ברשת המארחת והרשת המארחת מוצגת באמולטור.
- מעכשיו נעשה שימוש בקבצים בינאריים של BIOS שמתאימים ל-QEMU 2.12 כדי להפעיל את האמולטור.
- שודרגה גרסת
ffmpegל-3.4.5 לקידוד ופענוח של סרטונים. - הפחתנו באופן משמעותי את התקורה של קלט/פלט של לולאה ראשית של QEMU ב-macOS על ידי החלפת הלולאה הראשית שהתבססה על
select()בלולאה ראשית שמבוססת עלkqueue. - הגדלנו את שטח האחסון הזמני של Logcat ל-2MB כדי לפתור בעיות שקשורות ל-EOF לא צפוי ולא יציב כשמריצים את Logcat באמצעות האמולטור.
- האמולטור מייצא עכשיו את משתנה הסביבה
LC_ALL=Cכברירת מחדל. השינוי הזה פותר קריסות ובעיות תאימות שקשורות להפעלת האמולטור באזורים שונים. - עכשיו אפשר לעקוב אחרי השימוש במעבד ובזיכרון ה-RAM של האמולטור באמצעות נתוני הביצועים שאפשר לגשת אליהם דרך אמצעי בקרה מתקדמים > הגדרות > מתקדם > נתוני ביצועים. אפשר להשתמש בנתונים הסטטיסטיים האלה כדי לאבחן בעיות במהירות אם נראה שהאמולטור משתמש ביותר מדי מעבד או זיכרון 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, האמולטור מגדיל את גודל ה-RAM המינימלי ל-2GB.
- הוספנו עוד רישום ביומן והדפסה בכל פעם ש-OpenGL או ה-Hypervisor לא מצליחים לבצע אתחול.
- אם האמולטור לא מצליח להפעיל בו-זמנית מופע של
-read-onlyAVD, האמולטור מנסה להפעיל מחדש את-read-onlyAVD עוד 3 פעמים במשך 3 שניות. השינוי הזה מגדיל את הסיכוי שהאמולטור יוכל להפעיל מכונות וירטואליות מקבילות של-read-onlyאם מכונות וירטואליות אחרות של אותו AVD לא סיימו לנקות קבצים ישנים. - האמולטור תומך עכשיו ב-Hardware Composer 2.0 עבור תמונות מערכת עתידיות. השינוי הזה אמור להפחית את התקורה של מנהל ההתקן כשמריצים את רוב האנימציות.
- גרסת ה-build של האמולטור מבוססת עכשיו על CMake/Ninja.
- בממשק המשתמש של אמצעי הבקרה המורחבים של האמולטור, שוחזרו קווי ההפרדה בטבלה של מקשי הקיצור.
- המשתמשים יכולים עכשיו להביע הסכמה לשיתוף מדדים של השימוש במעבד ובזיכרון ה-RAM עם הצוות שלנו, במרווחים של 10 שניות. אנחנו משתמשים במדדים האלה כדי להעשיר את הנתונים שלנו לגבי השימוש במשאבי האמולטור בתרחישי שימוש שונים של המשתמשים שלנו. כך אנחנו יכולים לשפר את היעילות והתגובה של האמולטור.
תיקונים כלליים ב-Project Marble
העדכון הזה כולל גם את התיקונים הכלליים הבאים, שהם חלק מהיוזמה Project Marble:
- תוקנו בעיות שקשורות לריצוד ולמסגרות שגויות שהוצגו במערכות עם כרטיסי מסך של Intel כשמשתמשים בתמונות מערכת של Android Q.
- תוקנו בעיות שגרמו להצגת מסך שחור כשמשתמשים בתמונות של מערכת Android Q עם סקינים של Pixel 2 XL (או כל סקין עם חריץ או פינות מעוגלות).
- תוקנה בעיה שבה אפשרות שורת הפקודה
-partition-sizeלא הגדירה את גודל מחיצת הנתונים. - תוקנה בעיה שבה pulseaudio באמולטור Linx היה מסתובב ומשתלט על ליבת מעבד שלמה במצבים מסוימים.
- תוקנו בעיות בגישה לזיכרון מחוץ לגבולות בזמן עיבוד של טקסטורות דחוסות.
- תוקנו שגיאות GL שהתרחשו במארח ב-
glTexSubImage2Dבמהלך עדכון של מאגרי gralloc מסוימים (עם פורמט RGB 565, RGB10A2, RGB(A)16F). - תוקנה בעיה בתצוגה בתמונות מערכת של Android Q עם תמונות מצב, שבה הגיאומטריה של חלונית ההתראות עברה עיבוד עם הגדרה לא תקינה של מחלק מופעים.
- תוקנו כמה בעיות קריסה והקפאה שקשה לשחזר אותן בהפעלה, שקרו בגלל ש-Qt איבד אותות או שהיו לו מצבים לא יציבים ולא עקביים בהפעלה.
- תוקנו בעיות רבות שקשורות להרצה מקבילית. עכשיו יש לנו אפשרות ליצור את אמולטור Linux באמצעות ThreadSanitizer (TSAN), שיכול לחשוף בקלות באגים שקשה לשחזר בדרך אחרת.
- למשתמשי Linux: גילינו שבליבות מסוימות של מארחים, ליבת Android של האורח עלולה להחזיר שגיאה ולצאת ב-KVM עם שגיאת חומרה כללית. עכשיו האמולטור
abort()כשזה קורה, כדי לשפר את יכולת ניפוי הבאגים (בעבר, האמולטור פשוט נתקע). - משתמשי Linux יכולים להשתמש באפשרות החדשה
-stdouterr-file <file-name>בשורת הפקודה כדי להפנות אתstdoutואתstderrלקובץ, וכך להקל על הגדרות CI. - תוקנה בעיה שבה נעשה שימוש שגוי ב-
SO_REUSEADDR. מידע נוסף זמין במאמר בנושא פרטי ההתחייבות. - תוקנה בעיה שהייתה קיימת זמן רב באמולטור של Windows, שבה תהליכי משנה, כמו פקודות ADB, לא הצליחו להתחיל אם שם המשתמש הכיל רווחים.
- תוקנה בעיה שקשורה לאתחול חסר של RCU בשרשורי vCPU של HAXM. יכול להיות שהתיקון הזה יפתור חלק מהקריסות וממצבי המירוץ.
- תוקנה קריסה שקרתה בדפוסים מסוימים של שמירה וטעינה של תמונות מצב מממשק המשתמש של תמונות המצב באמצעות תמונות מערכת עדכניות של Android Q.
- תוקנה בעיה שבה המצלמה של הסצנה הווירטואלית הייתה ריקה כשהאמולטור אותחל מתמונת מצב, אם פקודת מאקרו של AR פעלה כשצילום המסך נשמר.
- תוקנה בעיה שבה חלק מהמשתמשים עם הגדרות של שולחן עבודה מרוחק קיבלו מסך שחור כשפתחו את האמולטור ב-Linux. כדי למנוע את זה, האמולטור מגדיר עכשיו באופן מפורש את
MESA_RGB_VISUAL. מידע נוסף זמין בפרטי השליחה. - תוקנה בעיה שבה לחצני הסיבוב הופיעו ב-AVD של טלוויזיות.
- תוקנה בעיה שבה אם האפשרות 'האמולטור תמיד בחזית' הייתה מופעלת, חלון הבקרה המורחבת הופיע בכל פעם שהאמולטור הסתובב.
פרופילי חומרה למכשירים מתקפלים
האמולטור כולל עכשיו פרופילי חומרה למכשירים מתקפלים. כדי להשתמש בפרופילי החומרה החדשים האלה, צריך להשתמש ב-Android Studio 3.5 Canary 10 ומעלה.
יש שני פרופילים של חומרה למכשירים מתקפלים שבהם אפשר להשתמש כדי ליצור מכשיר AVD:
- 7.3" Foldable: 1536x2152 unfolded, 4.6" 840x1960 folded
- מכשיר מתקפל בגודל 8 אינץ': 2200x2480 במצב פתוח, 6.6 אינץ' 1480x2480 במצב מקופל
כשמריצים את האמולטור באמצעות אחד מפרופילי החומרה האלה, אפשר לקפל ולפתוח את המכשיר באמצעות פעולות הקיפול והפתיחה בסרגל הכלים של האמולטור, פקודות המסוף או מקשי הקיצור הבאים:
- קיפול:
Ctrl + F(Command + Fב-macOS) - הרחבה:
Ctrl + U(Command + Uב-macOS)
פקודות מאקרו של AR
האמולטור כולל עכשיו פקודות מאקרו של AR שיכולות לעזור לכם לבדוק פעולות נפוצות של AR. לדוגמה, אפשר להשתמש בפקודת מאקרו כדי לאפס את כל החיישנים במכשיר למצב ברירת המחדל שלהם.
מידע נוסף זמין במאמר בנושא בדיקת פעולות נפוצות של AR באמצעות פקודות מאקרו.
תמיכה ב-Vulkan (Windows, Linux)
משתמשי Windows ו-Linux יכולים עכשיו לבדוק אפליקציות של Vulkan באמצעות אמולטור Android עד Vulkan 1.1, אם הם משתמשים בקובץ אימג' של המערכת תואם (Android Q Beta 3 ואילך ל-Vulkan 1.1, Android Q Beta 2 ל-Vulkan 1.0) ובמעבד גרפי (GPU) תואם במחשב המארח (כולל רוב המעבדים הגרפיים של Intel, NVIDIA ו-AMD משנת 2014 ואילך).
כדי להפעיל את התמיכה ב-Vulkan, צריך להוסיף את דגלי התכונות הבאים לקובץ ~/.android/advancedFeatures.ini (אם הקובץ לא קיים, צריך ליצור אותו):
Vulkan = onGLDirectMem = on
תמיכה ראשונית במפתחי ROM
מפתחי ROM שיוצרים יעדים של sdk_phone_x86 או sdk_phone_x86_64 (וריאציות של userdebug, eng) בענף master של AOSP יכולים עכשיו להריץ אמולטור עם Vulkan.
התמיכה הזו עדיין ניסיונית ומיועדת בעיקר למפתחים שעובדים על תמונות מערכת, מנהלי התקנים ומנועי משחקים. עדיין חסרים הרבה תוספים.
עם זאת, יש תמיכה בזיכרון של HOST_COHERENT, ועכשיו אמורה להיות לכם אפשרות להריץ את דוגמאות ההדרכה של Vulkan API.
אם אתם משתמשים ב-Linux, אתם יכולים לנסות את הפקודות הבאות:
mkdir aosp-mastercd aosp-masterrepo init -u https://android.googlesource.com/platform/manifest -b master --depth=1repo sync -c -j12. build/envsetup.shlunch sdk_phone_x86_64-userdebugmake -j12emulator -no-snapshot -feature Vulkan,GLDirectMem
רינדור Skia עם Vulkan
מעבדי GPU של NVIDIA ו-AMD שתומכים ב-Vulkan תומכים גם ב-zero-copy interop עם OpenGL באמצעות התוסף GL_EXT_memory_objects. האמולטור משתמש ביכולת הזו כדי לספק דרך מלאה לעיבוד ממשק המשתמש של Android באמצעות ממשקי ה-API של Skia Vulkan.
אם יש לכם כרטיס מסך של NVIDIA או AMD שתומך ב-Vulkan, אתם יכולים להשתמש בפקודות הבאות כדי לבדוק את הרינדור של Skia באמצעות קובץ אימג' של המערכת תואם (Android Q Beta 3 ואילך):
adb shellsusetprop debug.hwui.renderer skiavkstopstart
תמיכה ב-Vulkan ב-macOS
התמיכה ב-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
בעיות מוכרות
לפעמים, מיפוי הזיכרון העקבי של Vulkan לאורח נכשל ב-HAXM, והאמולטור נסגר. הבעיה הזו תטופל בעדכון הקרוב של HAXM.
אמולטור סטרימינג של gRPC (Linux)
אנחנו תמיד מנסים להפוך את האמולטור למגוון ככל האפשר, על ידי מתן אפשרות לעיבוד GPU במחשב המארח ולאינטראקטיביות במגוון הרחב ביותר של הקשרים שבהם הוא פועל. למשתמשים שלנו ב-CI ובשולחן עבודה מרוחק יש את הבעיות הבאות, שקיימות כבר זמן רב:
- שליחת פקודות קלט לאמולטור באופן פרוגרמטי כוללת הפעלה של פקודות adb shell, שעלולות להיות בעלות תקורה גבוהה, או שימוש במסוף telnet, שהוא מהיר יותר, אבל יכול להיות שלא יפעל עם הגדרות רשת מסוימות.
- משתמשי CI מריצים לעיתים קרובות אמולטורים ללא ממשק משתמש, ולכן קשה להם לשים לב לבעיות שדורשות שהמסך יהיה גלוי או אינטראקטיבי.
- למה? כי משתמשים בשולחן עבודה מרוחק לרוב לא יכולים ליצור אינטראקציה עם האמולטור כשהם משתמשים בעיבוד GPU של המארח, כי עיבוד GPU לרוב קשור לתצוגות הלא וירטואליות של המארח.
כדי לפתור את הבעיה הזו, כשמריצים את האמולטור במכונת Linux, הוא מפעיל שירות gRPC. gRPC הוא framework כללי ל-RPC שפועל באמצעות HTTP.
כברירת מחדל, שירות gRPC של האמולטור מושבת, אבל אפשר להפעיל את השירות באמצעות אפשרות שורת הפקודה הבאה, כאשר <port> הוא היציאה שדרכה האמולטור צריך להעביר בקשות gRPC (בדרך כלל 5556):
-grpc <port>
אחרי שהשירות מופעל, הלקוחות יכולים להנפיק פקודות gRPC. קבוצת הפקודות הנוכחית מאפשרת גם לשלוח אירועי קלט וגם לקבל צילומי מסך. הפקודות האלה עוזרות לפתור את הבעיות הבאות:
- אפשר לשלוח פקודות קלט לאמולטור עם תקורה נמוכה דרך HTTP. פרוטוקול HTTP מאפשר גם לשלוח פקודות בהגדרות רשת נוספות.
- אפשר לשלוח פקודות של צילום מסך כדי לשאול על המסך הנוכחי, גם אם האמולטור פועל ללא ממשק משתמש. כדי ליצור אינטראקטיביות, אפשר גם לשלוח אירועי קלט בחזרה לאמולטור.
- משתמשים בשולחן עבודה מרוחק יכולים להריץ את האמולטור ללא ממשק משתמש במסך הראשי עם עיבוד מואץ של GPU, תוך שימוש ב-gRPC כדי לקבל צילומי מסך ולשלוח אירועי קלט כדי ליצור אינטראקציה עם האמולטור.
רשימה מלאה של הפקודות הזמינות מופיעה ב-protobuf הזה.
כדי לעזור לכם להתחיל להשתמש ב-gRPC, סיפקנו כמה לקוחות לדוגמה שתוכלו להיעזר בהם.
נכון לעכשיו, הדוגמאות האלה כלולות:
- שירות מבוסס Go שאפשר להשתמש בו כדי לשלוח שאילתות לגבי מצבי אמולטור.
- אפליקציית React שמדגימה אינטראקטיביות מרחוק באמצעות צילומי מסך ו-RPC של קלט. בדוגמה הזו נדרשת גרסה 3.7.0 ואילך של protobuf.
- דוגמה ל-Python ששולחת סדרה של פקודות אחרי שהיא שולחת שאילתה לגבי הגדרת מכונת ה-VM של האמולטור.
28.0.25 (29 במרץ 2019)
העדכון הזה כולל את השיפורים והתיקונים הבאים:
גרסת build של אמולטור ללא ממשק משתמש
היה קשה להגדיר את האמולטור עם Docker ועם תהליכי עבודה אחרים של שילוב רציף (CI) בגלל הציפיות המרומזות של המערכת לתמיכה ב-Qt יחד עם יחסי התלות שלה בספרייה משותפת (בין היתר).
כצעד ראשון לפתרון הבעיה, השקנו גרסה של כלי ההפעלה של האמולטור עם קובצי הפעלה של QEMU שלא תלויה ב-Qt. ב-Linux, עדיין יש קישור ל-libX11, אבל אנחנו מקווים להסיר אותו בקרוב.
כדי להשתמש באמולטור ללא ממשק משתמש, מריצים את האמולטור משורת הפקודה כרגיל, אבל מחליפים את הפעלת קובץ האמולטור הבינארי ב-emulator-headless. מידע נוסף זמין בעדכון הגרסה 28.1.8 Canary.
- תוקנו בעיות של תנודות ותצוגת פריימים שגויה ביחידות GPU של 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 (29 בינואר 2019)
העדכון הזה כולל את השיפורים והתיקונים הבאים:
קלט האודיו של המארח מושבת כברירת מחדל
בפוסט שפורסם לאחרונה ב-Reddit פורטט איך מערכת ההפעלה האורחת של Android תמיד משתמשת באודיו של המיקרופון של המארח, וכך מאפשרת ל-Ok Google לפעול באופן לא צפוי. אנחנו מצטערים על כך ונעבוד עם צוות Android כדי לוודא שזיהוי מילות הפעלה מושבת גם בקובץ אימג' של המערכת.
כדי לתת מענה לבעיה הזו, ביצענו את השינויים הבאים:
- נתוני האודיו של המארח מושתקים עכשיו כברירת מחדל. כשהאורח משתמש במיקרופון, במקום האודיו של המארח, עובר שקט.
- אם רוצים להשתמש בנתוני האודיו של המארח, אפשר להפעיל את האפשרות הזו עכשיו דרך אמצעי בקרה מתקדמים > מיקרופון, ואז להפעיל את האפשרות המיקרופון הווירטואלי משתמש בקלט אודיו מהמארח. האפשרות הזו מושבתת אוטומטית בכל פעם שמפעילים מחדש את האמולטור.
עדכונים בנושא בדיקות של השימוש במעבד
במהלך החקירות שלנו במסגרת Project Marble, שמנו לב ששימוש גבוה ב-CPU באמולטור בדרך כלל נחלק לשלוש קטגוריות:
במצב לא פעיל: עדכונים אוטומטיים של אפליקציות בתמונות של חנות Play
מצאנו שבמרווחי זמן אקראיים, כל האפליקציות המותקנות מתעדכנות, גם כשהמשתמש לא מחובר. במהלך התהליך, השימוש במעבד מגיע למספר הליבות כפול 100% (בדרך כלל כ-400%) ב-GMSCore וב-dex2oat. כדי לפתור את הבעיה, אפשר להשבית את העדכונים האוטומטיים של האפליקציות באפליקציית חנות Play.
במצב לא פעיל: זיהוי מילת הפעלה
כשנמצאים במסך הבית ולא מפעילים אף אפליקציה, יכול להיות שימוש גבוה במעבד (בערך 25% עם עליות ל-50%). הסיבה לכך היא זיהוי מילת הפעלה, ששולח פינגים כל הזמן למארח. אי אפשר לפתור את הבעיה הזו על ידי השבתת קלט האודיו של המארח, כי העלות של השימוש במעבד נובעת בעיקר מהזמן שלוקח להעביר את האודיו מהמארח לאורח. עם זאת, אפשר לצמצם את הבעיה על ידי ביטול הרשאות המיקרופון באפליקציית Google.
בזמן פעילות, לפעמים במצב לא פעיל: אנימציות
המקור השלישי לשימוש גבוה במעבד הוא אנימציות. גילינו שעל ידי אופטימיזציה של מחסנית מנהלי ההתקנים של הגרפיקה, אפשר גם לצמצם את השימוש במעבד, גם כשהאמולטור לא במצב המתנה. אנחנו נשיק בהדרגה אופטימיזציות של מנהלי התקנים של כרטיסים גרפיים כחלק מ-Project Marble.
28.0.22 (21 בדצמבר 2018)
העדכון הזה כולל את השיפורים והתיקונים הבאים:
- תוקנה בעיה שהייתה קיימת זמן רב, שבה בהגדרות מסוימות, האמולטור של Mac היה מבצע הפעלה מחדש או תגובה לשגיאת ליבה קריטית בשמירת Quickboot. (בעיה מספר 120951634)
- כשמשתמשים בקובץ ממופה כ-snapshot של ה-RAM, האמולטור מבטל עכשיו את המיפוי של הקובץ באופן מפורש ביציאה.
28.0.20 (11 בדצמבר 2018)
העדכון הזה כולל את השיפורים והתיקונים הבאים:
- תוקנה בעיה ב-Windows שגרמה לאמולטור לקפוא בטעינת תמונת מצב עם דגמים מסוימים של כרטיסי מסך של Intel.
- תוקנה בעיה שגרמה למצב מכשיר
unauthorizedADB כשמשתמשים במיקוםANDROID_SDK_HOMEלא סטנדרטי. - תוקנה בעיה ב-Windows שגרמה לקריסת האמולטור בזמן אתחול של תמונות מערכת עם השבתה של האצת המעבד.
- תוקנה הבעיה של תצוגת האמולטור עם פיקסלים מטושטשים. מעכשיו, דגימת יתר אמורה לפעול.
- תוקנה בעיה ב-macOS 10.14 ואילך, שבה השליטה במצלמת הסצנה הווירטואלית באמצעות העכבר הייתה רגישה מדי בגלל אינטראקציה עם הגדרות אבטחה חדשות של נגישות.
- תוקנה שגיאה בחישוב אזור הזמן שיכולה לגרום לשעון האמולטור להשתנות באופן לא סדיר.
- תוקנו שגיאות רינדור באפליקציות שונות של cocos2d ו-Unreal Engine.
- נוסף תמיכה באמולטור בWi-Fi peer-to-peer.
שני אמולטורים יכולים עכשיו לתקשר ישירות דרך Wi-Fi אם משתמשים בתמונה העדכנית של Pie חנות Play. כדי להשתמש ב-Wi-Fi peer-to-peer, מפעילים שני מכשירי AVD עם אותם ארגומנטים
-wifi-server-portו--wifi-client-port:emulator @<server-avd-name> -wifi-server-port 9999emulator @<client-avd-name>-wifi-client-port 9999
- הוספנו תמיכה במצלמות אינטרנט נוספות ב-Windows. כדי לעשות את זה, אנחנו לוקחים גדלי מסגרות לא תואמים ומשנים את הגודל שלהם באופן דינמי כך שיתאימו להגדרת המצלמה ב-Android guest.
28.0.16 (נובמבר 2018)
העדכון הזה כולל כמה תכונות חדשות, שיפורים בתכונות קיימות ותיקוני באגים.
שימוש במשאבים
האמולטור משתמש עכשיו בפחות זיכרון RAM באופן כללי, במיוחד כשמשתמשים בקובצי אימג' של המערכת עם רמת API ברמה 28 ומעלה. קובצי האימג' של המערכת האלה כוללים שימוש משופר בזיכרון עבור מנהלי התקנים של גרפיקה בצד האורח.
בנוסף, שיפרנו את השימוש במשאבים בתחומים הבאים:
- צמצמנו את השימוש בזיכרון של האמולטור במהלך בדיקות ארוכות. אם עדיין נתקלתם בבעיות בשימוש בזיכרון במהלך בדיקות ארוכות, אתם יכולים ליצור בעיה שמתארת את תרחיש השימוש שלכם בIssue Tracker.
- צריכת המעבד (CPU) פחותה כשמפעילים אפליקציות עם אנימציות.
- תוקנה בעיה שבה הקשר של QEMU AIO עלול לדלוף ב-Windows.
הפעלה של כמה מופעים של אותו AVD בו-זמנית
עכשיו אפשר להפעיל כמה מופעים של אותו AVD ולהריץ אותם במקביל. מופעים שמופעלים אחרי המופע הראשון הם לקריאה בלבד, והשינויים שלהם בדיסק הווירטואלי של האורח נמחקים ביציאה.
כדי להריץ כמה מופעים של אותו AVD בו-זמנית, מפעילים את המופעים אחרי המופע הראשון משורת הפקודה באמצעות הדגל -read-only.
התכונה הזו מתאפשרת על ידי העתקת קובצי QCOW2 שמשויכים לחלקים הניתנים לכתיבה של תמונת Android. כדי לעזור לכם לנהל את נפח האחסון בדיסק, צירפנו גם את כלי שורת הפקודה qemu-img כדי לאפשר לכם לבצע קומיט מראש של קובצי QCOW2 לפני הפעלת כמה מופעים.
בנוסף, כשמשתמשים בתכונה תמונות מצב של זיכרון RAM של אורח שמגובות בקובץ , כמה מופעים של AVD משתפים את תמונת המצב הראשית של AVD Quickboot כמקור משותף של זיכרון RAM של אורח מסוג copy-on-write. המשמעות היא שהמופעים חולקים חלק גדול מזיכרון ה-RAM שלהם. אפשר להשתמש בתכונה הזו כדי להריץ בדיקות שדורשות הפעלה מקבילה של כמה מכשירים.
נשמח לקבל משוב על תרחישי שימוש אפשריים שקשורים לתהליך העבודה האינטראקטיבי או לתהליך ה-CI הרגיל שלכם. אפשר ליצור בעיות או להצביע בעד בעיות בכלי למעקב אחרי בעיות.
תמונות מצב של זיכרון RAM של מכונות אורחות שגובו בקובץ
על ידי הקצאה מראש של זיכרון RAM לאורח ומיפוי שלו כקובץ, האמולטור יכול עכשיו לשמור תמונות מצב של Quickboot במהלך זמן הריצה, במקום לבצע את כל העבודה ביציאה. אם אתם חווים כרגע זמני שמירה ארוכים כשאתם סוגרים את האמולטורים, כדאי להפעיל את התכונה הזו כדי לשפר את הביצועים של Quickboot. כברירת מחדל, תמונת מצב של Quickboot נשמרת כשיוצאים מהמכשיר הווירטואלי ונטענת מחדש בכל פעם, כמו השהיה והפעלה של מכשיר אמיתי.
מכיוון שזיכרון ה-RAM של האורח ב-Android נשמר אוטומטית כברירת מחדל, אם רוצים להגדיר מצב מכשיר ולטעון ממנו שוב ושוב, צריך להגדיר לאמולטור לבטל את השינויים אחרי כל סשן. אפשר לעשות את זה בדרכים הבאות:
- משתמשים בדגלים
-no-snapshot-saveאו-read-onlyכשמפעילים את האמולטור משורת הפקודה. - עוברים אל אמצעי בקרה מתקדמים > תמונות מצב > הגדרות ומעבירים את האפשרות שמירה אוטומטית של המצב הנוכחי להפעלה מהירה? למצב לא.
- אחרי שבוחרים באפשרות הזו, צריך להפעיל מחדש את האמולטור. אם האמולטור מוגדר לשמירה אוטומטית, אפשר להריץ את הפקודה הבאה כדי להגדיר נקודת ביקורת:
אחרי שמריצים את הפקודה הזו, תמונת המצב של Quickboot באמולטור תישאר בנקודת הבדיקה הזו. מריצים שוב את אותה פקודה כדי לטעון את האמולטור מנקודת הבדיקה.adb emu avd snapshot remap 0
תמונות המצב שנוצרו ונטענו דרך ממשק המשתמש של תמונות המצב פועלות כמו קודם, בלי מיפוי קבצים.
מדובר בשינוי משמעותי באופן הפעולה של Quickboot, ולכן נשמח לקבל מכם משוב על השיפורים בביצועים של Quickboot ועל הבעיות שנתקלתם בהן במהלך השימוש בו. אם נתקלים בבעיות, אפשר להשבית את התכונה הזו על ידי הוספת השורה הבאה לקובץ ~/.android/advancedFeatures.ini:
QuickbootFileBacked = off
כשמפעילים את האמולטור מתמונת מצב (באמצעות האפשרות -snapshot
בשורת הפקודה או הפעלה מתמונת מצב במנהל ה-AVD), האמולטור משבית את השמירה האוטומטית של תמונות מצב של Quickboot ואת השמירה של תמונות מצב של Quickboot ביציאה. כך מצמצמים את הסיכוי שהתמונה של Quickboot תידחס בטעות, ונמנעים מנתיבי חזרה איטיים שלא משתמשים בתמונות של Quickboot שמגובות בקבצים.
QEMU 2.12
התבססנו מחדש על הווריאציה שלנו של QEMU מ-QEMU 2.9 ל-QEMU 2.12. העדכון הזה כולל את השינויים הבאים ב-QEMU:
- https://wiki.qemu.org/ChangeLog/2.10
- https://wiki.qemu.org/ChangeLog/2.11
- https://wiki.qemu.org/ChangeLog/2.12
אלה כמה מהשינויים הבולטים שמשפיעים על Android Emulator:
- x86:
gdbstubמספקת עכשיו גישה לרישום SSE. - תמונות דיסק: נעילת תמונות מתווספת ומופעלת כברירת מחדל. כמה תהליכי QEMU לא יכולים לכתוב לאותה תמונה כל עוד המארח תומך ב-OFD או בנעילת posix, אלא אם צוינו אפשרויות אחרות.
-
qemu-img: qemu-img resizeתומך בהקצאה מראש של החלקים החדשים בתמונה. - יש עכשיו תמיכה בהקטנת QCOW2 ב-
qemuוב-qemu-img.
נגישות
- תוקנו בעיות שקשורות לקוראי מסך, והוספנו תמיכה משופרת בכלים האלה בממשק המשתמש של צילום המסך ושל צילום התמונה.
- הפכנו את סמלי ההתראות של אתחול מהיר לנגישים יותר למשתמשים עיוורי צבעים.
גרפיקה
- תוקנה בעיה של גישה לזיכרון מחוץ לגבולות שיכולה להתרחש עבור מצביעים של מערך קודקודים של OpenGL ES.
- חלק מהמעבדים הגרפיים הישנים לא תמכו ב-OpenGL 2.1 ומעלה (שנדרש), או שהיו להם בעיות אמינות אחרות. הבעיות האלה עלולות לגרום לקריסת האמולטור בהפעלה, לקפיאה או לחוסר שימושיות בהגדרת ברירת המחדל של המעבד הגרפי. האמולטור עובר עכשיו אוטומטית ל-Swiftshader renderer אם הוא מזהה שהמעבדים הגרפיים האלה נמצאים בשימוש.
- תוקנה בעיה שגרמה לכך שהאמולטור לא פרסם את ה-framebuffer הנכון אם
FBO != 0היה מאוגד בזמןeglSwapBuffers. - תוקנה בעיה שבה התצוגה הווירטואלית של Android הופיעה רק בפינה הימנית העליונה. לדעתנו, הסיבה לכך היא משתני סביבה של Qt שהוגדרו בצורה שגויה. האמולטור מחליף עכשיו את כל משתני הסביבה שקשורים לשינוי גודל ב-Qt.
- תוקנה בעיה שבה האמולטור קרס במצבים מסוימים כשנטענו אפליקציות GLES1 מתמונת מצב.
- תוקנו בעיות של פעולות מקבילות ב-OpenGL ובהפעלת שרשורים של עיבוד שיכולות לגרום לשחרור כפול או לנתונים פגומים.
- אמולטור Android תומך עכשיו בדחיסת טקסטורה בפורמט ASTC LDR (
GL_KHR_texture_compression_astc_ldr) עבור קובצי אימג' של המערכת שמשתמשים ברמת API 28 ומעלה. - ברוב ה-GPU המודרניים אפשר להפעיל את האמולטור עם OpenGL ES 3.x מופעל כברירת מחדל, בלי להשתמש ב-feature flag
GLESDynamicVersion. -
-gpu guest(rendering תוכנה במכונה האורחת) הוצא משימוש. תמונות מערכת ברמת API 28 ומעלה עוברות עכשיו אוטומטית לשימוש ב-Swiftshader (-gpu swiftshader_indirect). - אם האמולטור מופעל משורת הפקודה באמצעות הדגל
-no-window, ברירת המחדל של רכיב הרינדור היא עכשיו Swiftshader.
מיקום
- האמולטור יכול עכשיו לעדכן את הכיוון יחד עם מיקום קו הרוחב וקו האורך. החיישן הווירטואלי של המגנטומטר מתאים את עצמו באופן דינמי לצפון המגנטי על ידי הסקת תנועה בזמן הפעלה של קובץ GPX או KML.
- עכשיו אפשר להגדיר את מהירות המכשיר בדף המיקום.
- כשמפעילים קובץ GPX או KML, המהירות מוגדרת באופן אוטומטי, וכשההפעלה מסתיימת היא מוגדרת לאפס.
- הגובה כבר לא מוגבל לטווח שבין -1,000 ל-+10,000 מטרים.
- תוקנה בעיה שבה המיקום הווירטואלי ב-GPS לא התעדכן מעת לעת, אלא אם חלון ההגדרות המתקדמות נפתח לפחות פעם אחת.
מצלמה
ב-Windows, יש עכשיו תמיכה ביותר מצלמות רשת כי האמולטור משנה את הגודל של פריימים של המצלמה שמועברים ממצלמת הרשת באופן דינמי. התכונה הזו גם מונעת מצב שבו שגיאות בהעברת פריימים גורמות לאמולטור להיתקע.
חנות Play
כדי לפתור בעיות שקשורות למצב שבו נגמר נפח האחסון בתמונות של חנות Play, האמולטור משנה את הגודל של מחיצת נתוני המשתמש ל-6GB באופן אוטומטי כשמפעילים אותו עם מכשיר וירטואלי חדש של חנות Play.
שיפורים ותיקונים כלליים באיכות
- חלק מהמשתמשים דיווחו שהאמולטור פועל לאט. זיהינו סיבה אפשרית אחת לכך שספריית הקבצים הזמניים של האמולטור מכילה יותר מדי קבצים לא עדכניים. כפתרון עקיף, האמולטור כבר לא מאחסן קבצים של בדיקת הפעילות של ADB בספרייה הזו. אבל יכול להיות שגם מחיקת התוכן של התיקייה תעזור. התיקייה נמצאת באחד מהמיקומים הבאים, בהתאם למערכת ההפעלה:
- ב-Windows:
C:\Users\<username>\AppData\Local\Temp\AndroidEmulator\* - macOS או Linux:
/tmp/android-<username>/*
- ב-Windows:
- אם האמולטור לא מצליח להתחיל לפעול בגלל שאין מספיק זיכרון RAM פנוי, תוצג הודעת שגיאה. אם אתם משתמשים ב-Windows ורואים שיש זיכרון RAM פנוי, אבל עדיין לא מצליחים להפעיל את האמולטור, יכול להיות שהגעתם למגבלת הזיכרון שהוקצה. כדי לקבל עזרה בפתרון הבעיה, אפשר לעיין בדף פתרון הבעיות של האמולטור.
- האפשרות
-sysdirבשורת הפקודה מבטלת עכשיו כמו שצריך את ספריית תמונות המערכת שהמערכת הסיקה. - מודם וירטואלי תומך עכשיו בשאילתת
+MAImodel activity info. - תוקנו בעיות שונות שקשורות לדליפות זיכרון, להשחתת זיכרון ולשימוש במעבד. אם אתם נתקלים בקריסות, בדליפות זיכרון או בשימוש גבוה במשאבים אחרים, אתם מוזמנים ליצור בעיה בIssue Tracker.
- תוקנה בעיה שהופיעה מחדש ב-macOS 10.14, שבה שימוש באוזניות Bluetooth עם האמולטור פוגע באיכות האודיו באופן כללי. כדי למנוע את זה, האמולטור לא משתמש יותר באודיו ב-Bluetooth כשהוא פועל ב-macOS. (בעיה מספר 37070892)
- תוקנה בעיה ב-Windows שגרמה לכך שהשעון של האמולטור לא היה באזור הזמן הנכון.
- תוקנו בעיות של איטיות והיתקעות של אמולטור במערכות Linux עם כוננים קשיחים מסתובבים (HDD).
- תוקנו כמה אזהרות קומפילציה שיכלו לגרום להשחתת מחסנית ב-macOS.
- תוקנו בעיות שיכלו לגרום לדיווח מטעה על מצב תקיעה.
- תוקנה בעיה בהשמדה של מאגרי שרשורים שיכולה לגרום לקריסה אם אחד מהשרשורים לא נוצר בהצלחה.
- תוקנה בעיה ב-macOS שגרמה לכך שהטיימרים לא היו אמינים, מה שהוביל לתקיעות ולהתנהגות מוזרה אחרת. אם האמולטור נתקע ב-macOS, אפשר ליצור בעיה ב-Issue Tracker.
- תוקנה בעיה שבה סגירת האמולטור השביתה את ממשק המשתמש, אבל לא סגרה את האמולטור בפועל.
- תוקנו בעיות שקשורות לקריסות ספורדיות, כולל ביטול בגלל פתיחה של יותר מדי מופעים של
/dev/urandom. - תוקנה בעיה שגרמה לכך שהאמולטור לא הופעל אחרי הפעם הראשונה אם ADB הופסק בכוח.
- הגרסה של MIPS הוסרה. אם עדיין דרוש לך MIPS, אפשר ליצור בעיה ב-Issue Tracker.
- תוקנה בעיה שגרמה לכך שחיבורי ADB נפגמו בטעינת תמונת מצב.
- תוקנה בעיה שבה חלון האמולטור הציג תמונת לוואי או נעלם מהמסך כשממשיכים תמונת מצב שבה אוריינטציית המכשיר הייתה שונה מאוריינטציית ברירת המחדל של ה-AVD.
- תוקנו בעיות שקשורות לקריסות בזמן שמירת תמונות מצב.
- ב-Linux, מערכות קבצים מסוג btrfs עלולות לגרום להאטה קיצונית כי האמולטור שומר באופן אוטומטי תמונות מצב ומשתמש בשיטת העתקה בעת כתיבה (copy-on-write) עבור מכשירי הדיסק הווירטואלי שלו. מומלץ לנקות את הספרייה
~/.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 בגרסת 32 ביט
בגלל שימוש נמוך ועלויות תחזוקה גבוהות, אנחנו מתכננים להוציא משימוש את הגרסה של אמולטור Android ל-32 ביט שפועלת ב-Windows. לפני ההסרה וסוף חיי המוצר של הגרסה של אמולטור Android ל-32 ביט, נפרסם תוכנית ביניים. עם זאת, אנחנו רוצים לקבל משוב או לטפל בבעיות שקשורות לשינוי הזה בעתיד.
אם אתם מסתמכים כרגע על גרסת 32 ביט של אמולטור Android שפועלת ב-Windows, נשמח לקבל מכם מידע בIssue Tracker על האופן שבו נוכל לעבוד איתכם בצורה הטובה ביותר בעתיד.
27.3.10 (אוגוסט 2018)
העדכון הזה כולל את תיקון הבאג הבא:
תיקון הגדרת גודל ה-RAM
חלק מהמשתמשים דיווחו שהאמולטור פועל לאט. זיהינו גורם אפשרי אחד: גודל ה-RAM של ה-AVD בקובץ config.ini של ה-AVD הוגדר בצורה שגויה.
כדי לפתור את הבעיה, האמולטור מגדיל את רמת ה-RAM המינימלית לתמונות שמשתמשות ברמת API 26 ומעלה לרמת ברירת המחדל של Android Studio, שהיא 1,536MB. אם בקובץ config.ini של ה-AVD לא מופיע hw.ramSize במגה-בייט, צריך ליצור בעיה בIssue Tracker.
קובץ config.ini נמצא במיקום הבא:
~/.android/avd/<avdname>.avd/config.ini
27.3.9 (יולי 2018)
העדכון הזה כולל את השיפורים ותיקוני הבאגים הבאים:
שיפרנו את הודעות השגיאה עבור Windows Hypervisor Platform
חלק מהמשתמשים התקשו להבין למה פלטפורמת ה-Windows Hypervisor (WHPX) לא אותחלה כשהם הפעילו אמולטור WHPX. כדי לעזור לכם לאבחן את הבעיות האלה, הוספנו הודעות שגיאה עם יותר מידע. כדי להציג את הודעות השגיאה האלה, מריצים את האמולטור משורת הפקודה באמצעות הדגל -verbose.
תיקונים כלליים
- תוקנו שגיאות ב-OpenGL שמתרחשות כשמטעינים תמונה בצילום מהיר באפליקציית המצלמה.
27.3.8 (יולי 2018)
העדכון הזה כולל כמה תכונות חדשות, שיפורים בתכונות קיימות ותיקוני באגים.
תמונות מצב
מעכשיו אפשר לשמור כמה תמונות מצב של AVD להגדרת מכשיר מסוימת ולבחור איזו מהתמונות השמורות לטעון כשמפעילים את האמולטור.
החל מ-Android Studio 3.2 Canary 13, כל הגדרת מכשיר כוללת אמצעי בקרה בהגדרות המתקדמות בתיבת הדו-שיח Virtual Device Configuration (הגדרת מכשיר וירטואלי), שבאמצעותו אפשר לציין איזו תמונת מצב של AVD לטעון כשמפעילים את ה-AVD.
כדי להתאים את עצמנו להרחבה הזו של תכונות תמונת המצב, הוספנו קטגוריה של תמונות מצב לתיבת הדו-שיח אמצעי בקרה מתקדמים. בחלונית החדשה הזו יש אמצעי בקרה לשמירה ולטעינה של תמונות מצב של AVD, כולל אמצעי הבקרה לשמירה ולטעינה של תמונת המצב של האתחול המהיר, שהיו בעבר בחלונית הגדרות.
אפשר לערוך את השם והתיאור של כל תמונה ששמרתם.
פרטים נוספים זמינים במאמר בנושא תמונות מצב.
HAXM 7.2.0
HAXM 7.2.0 זמין עכשיו בכל הערוצים.
העדכון הזה כולל תיקוני באגים ותמיכה משופרת בכמויות גדולות של RAM. בנוסף, בעדכון הזה של HAXM וב-Emulator 27.3 ואילך, התוכן של התמונות המהירות נטען ל-RAM לפי דרישה, במקום לטעון את כל התמונה המהירה כשהמכשיר הווירטואלי מופעל. השינוי הזה אמור לקצר משמעותית את הזמן שנדרש לטעינת תמונה מהירה.
פרטים נוספים זמינים במאמר בנושא הגדרת האצת מכונות וירטואליות.
27.2.9 (מאי 2018)
העדכון הזה כולל כמה תכונות חדשות, שיפורים בתכונות קיימות ותיקוני באגים.
הקלטת מסך
עכשיו אפשר להקליט וידאו ואודיו מ-אמולטור Android ולשמור את ההקלטה כקובץ WebM או כקובץ GIF מונפש.
אמצעי הבקרה של הקלטת המסך נמצאים בכרטיסייה הקלטת מסך בחלון אמצעי בקרה מתקדמים.
כדאי לדעת: אפשר גם לפתוח את אמצעי הבקרה של הקלטת המסך על ידי הקשה על Control + Shift + R (או על Command + Shift + R ב-Mac).
כדי להתחיל בהקלטת המסך, לוחצים על הלחצן התחלת ההקלטה בכרטיסייה הקלטת מסך. כדי להפסיק את ההקלטה, לוחצים על הפסקת ההקלטה.
האפשרויות להפעלה ולשמירה של הסרטון המוקלט נמצאות בתחתית הכרטיסייה מקליט המסך. כדי לשמור את הסרטון, בוחרים באפשרות WebM או GIF מהתפריט שבתחתית הכרטיסייה ולוחצים על שמירה.
אפשר גם להקליט ולשמור הקלטת מסך מהאמולטור באמצעות הפקודה הבאה בשורת הפקודה:
adb emu screenrecord start --time-limit 10 [path to save video]/sample_video.webm
צילומי מסך
אפשר לצלם את המסך משורת הפקודה באמצעות אחת מהפקודות הבאות:
screenrecord screenshot [destination-directory]adb emu screenrecord screenshot [destination-directory]
צילומי המסך נשמרים בפורמט PNG.
מצלמה וירטואלית של סצנה ו-ARCore
פיתוח ובדיקה של אפליקציות מציאות רבודה (AR) באמצעות ARCore קלים עוד יותר עכשיו, בזכות המצלמה החדשה של סצנה וירטואלית. המצלמה הזו מאפשרת לכם להתנסות בחוויית ה-AR שלכם בסביבה וירטואלית.
למידע על שימוש במצלמת הסצנה הווירטואלית באמולטור, אפשר לעיין במאמר בנושא הפעלת אפליקציות AR באמולטור Android.
תמונות של חנות Google Play במכשיר Pixel
חנות Google Play מופעלת עכשיו בקובצי אימג' של מכשירי Pixel ו-Pixel 2. הדבר מצוין בAVD Manager ב-Android Studio מגרסה 3.2 ואילך באמצעות הלוגו של Google Play בעמודה חנות Play. ב-AVD שמופעלת בו חנות Google Play יש כרטיסייה Google Play בתיבת הדו-שיח Extended controls (אמצעי בקרה מתקדמים), שכוללת לחצן נוח לעדכון Google Play Services במכשיר.
תמונות מצב
עכשיו אפשר לטעון תמונת מצב של הפעלה מהירה בלי להפעיל מחדש את האמולטור. כדי לטעון תמונת מצב, פותחים את החלון Extended Controls (אמצעי בקרה מתקדמים), עוברים לדף Settings (הגדרות) ולוחצים על הלחצן Load Now (טעינה מיידית).
ביצענו שיפורים רבים בטעינה ובשמירה של תמונות מצב כדי לשפר את היעילות של השימוש במשאבים ולצמצם את הזמן שכל פעולה אורכת. אם עדיין נתקלתם בשמירה ארוכה באופן חריג, אתם יכולים לדווח על בעיה ולספק פרטים על המעבד, ה-RAM וההגדרות של כל תוכנת אנטי-וירוס, חומת אש או אבטחה שפועלת.
רינדור באמצעות Skia
כשמשתמשים בתמונות ל-API 27 ואילך, האמולטור יכול לבצע רינדור של ממשק המשתמש של Android באמצעות Skia, שיכול לבצע רינדור בצורה חלקה ויעילה יותר.
בשלב הזה, כדי להשתמש ב-Skia צריך להפעיל אותו באופן מפורש.
כדי להפעיל את העיבוד של Skia, משתמשים בפקודות הבאות ב-adb shell:
su setprop debug.hwui.renderer skiagl stop start
מצלמה
ב-Windows, אמולטור Android משתמש עכשיו ב-Media Foundation כקצה העורפי של מצלמת האינטרנט, מה שמשפר מאוד את הביצועים ואת קצב הפריימים של צילום ממצלמת האינטרנט, עד 720p ו-30 FPS.
ב-Mac, עכשיו אפשר להשתמש ב-webcam0 וב-webcam1 ביחד.
שונות
האפשרות -phone-number-prefix בשורת הפקודה השתנתה ל--phone-number [number], שמאפשרת להגדיר את מספר הטלפון המלא.
עכשיו אפשר להשתמש בכתובות SMS אלפאנומריות.
תיקונים
- גרסת ה-Linux של אמולטור Android מבוססת עכשיו על ערכת כלים מודרנית של Clang C++. השינוי הזה פותר את הבעיה שגורמת לאמולטור להיכשל בהפעלה בגלל שגיאות libGL ו-libstdc++.
- תוקנו כמה סיבות לקריסות ולתקיעות.
- כדי למנוע קריסות ותקיעות שנגרמות בגלל חוסר מקום פנוי בדיסק, האמולטור בודק עכשיו אם יש מספיק מקום פנוי בדיסק בזמן ההפעלה, והוא לא יופעל אם אין לפחות 2GB פנויים.
- תוקנה בעיה שגרמה לכך שחלק מהמשחקים ב-Unity לא עברו רינדור.
- תוקנה בעיית DNS שגרמה לכך שהאמולטור לא הצליח להתחבר לרשת.
- תוקנה הבעיה שגרמה לכך ששינויים בזיכרון הפנימי שהוקצה ל-AVD דרך תיבת הדו-שיח של הגדרת המכשיר הווירטואלי לא פעלו.
- תוקנה בעיה שבה נוצרים הרבה תהליכי adb שלא נסגרים כמו שצריך.
- תוקנה בעיה שגרמה לכך שהלחצנים לסיבוב וחלקים אחרים בממשק המשתמש לא הגיבו, אלא אם חלון הפקדים המורחבים היה פתוח.
- תוקנה בעיה שגרמה לכך שהעתקה והדבקה מהמארח לא פעלו אלא אם תיבת הדו-שיח 'אמצעי בקרה מתקדמים' נפתחה לפחות פעם אחת.
- העדפנו את המלבן לשינוי הגודל של האמולטור ללא מסגרת כדי שיתאים יותר לעיצוב החזותי של האמולטור.
- עכשיו הטלפון וה-SMS מושבתים כמו שצריך כשמצב טיסה מופעל.
- תוקנה בעיה שגרמה להשבתה של הפונקציונליות של SMS ושל הרשת הסלולרית אחרי טעינה של קובץ snapshot.
- לא תקבלו יותר הודעות אזהרה כוזבות עם הכיתוב
“Unable to open... \pstore.bin. Permission denied.” - תוקנה בעיה שמנעה את שינוי המיקום של ה-AVD בחלק ממסכי Mac.
- תוקנו בעיות שקשורות להבהוב ולמסכים ריקים במחשבי MacBook Pro חדשים יותר כשמריצים מכשירי AVD עם סקינים של Pixel 2 XL.
- תוקנו בעיות של מסכים ריקים כשעוברים למצב זום בזמן שאמולטור ללא מסגרת פעיל.
- תוקנה בעיה שגרמה לגלילה לא מסונכרנת של סקין המכשיר ותוכן האמולטור בהגדלה.
אם אתם עדיין נתקלים בבעיות של קריסות או חוסר יציבות אחר, אתם יכולים לדווח על בעיה.
27.1.12 (מרץ 2018)
העדכון הזה כולל תיקונים לבעיות הבאות:
- איכות האודיו ב-Bluetooth ירדה אחרי הפעלת האמולטור. (בעיה 37095756)
- מיקומים שנשלחו לאמולטור אחד נשלחו לכולם. (בעיה מספר 73450633)
- המיקום ב-GPS שהוגדר באמצעות המסוף בוטל על ידי ערכים שהוגדרו באמצעות אמצעי בקרה מתקדמים > מיקום בממשק המשתמש הגרפי. (בעיה מספר 73471760)
אם אתם עדיין נתקלים בבעיות של קריסות או חוסר יציבות אחר, אתם יכולים לדווח על בעיה.
בעזרת העדכון הזה, קובץ אימג' של המערכת עדכני וגרסת טרום-השקה של Android Studio, תוכלו להשתמש באמולטור Android כדי להריץ אפליקציות של מציאות רבודה שמבוססות על ARCore. דרישות והוראות מפורטות זמינות במאמר בנושא הרצת אפליקציות AR ב-אמולטור Android.
27.1.10 (פברואר 2018)
רזולוציית הצילום במצלמה
עכשיו אפשר לצלם פריימים באיכות 720p ממצלמת אינטרנט שמחוברת למחשב.
כדי לעבוד עם קובצי אימג' של המערכת של Android 8.1 (רמת API 27) ומעלה, מצלמת אינטרנט שמחוברת למכשיר צריכה להיות מסוגלת לצלם פריימים באיכות 720p.
תיקונים
- תוקנה בעיה שגרמה לכך שצילום ממצלמת אינטרנט הפיק לפעמים תמונה מעוותת או תמונה ירוקה לגמרי.
- תוקנה בעיה שגרמה להודעה הבאה להופיע גם כשלא היה בפועל מצב של תקיעת תהליך: "emulator: ERROR: detected a hanging thread 'Qt event loop'. לא התקבלה תגובה במשך 15,000 אלפיות השנייה".
אם אתם עדיין נתקלים בבעיות של קריסות או חוסר יציבות אחר, אתם יכולים לדווח על בעיה.
27.1.7 (פברואר 2018)
חלון אמולטור ללא מסגרת:
כברירת מחדל, אמולטורים עם קובצי סקין של מכשירים מוצגים עכשיו ללא מסגרת חלון מסביב. כדי להציג את המסגרת של החלון שמסביב, מפעילים את האפשרות הצגת מסגרת החלון מסביב למכשיר בחלונית ההגדרות של החלון Extended Controls (אמצעי בקרה מתקדמים).
שיפורים ב<b>אתחול מהיר</b> כדי לעבוד בצורה יעילה יותר עם תמונות מצב של AVD:
- אפשר לשמור תמונת מצב של AVD בכל שלב באמצעות הלחצן שמירה עכשיו בחלונית ההגדרות של תיבת הדו-שיח אמצעי בקרה מתקדמים.
- במקרים רבים, האמולטור מקצר את הזמן שנדרש לשמירת תמונת מצב, כי הוא שומר רק את ההבדל בין המצב הנוכחי לבין תמונת המצב שנשמרה קודם.
פרטים נוספים זמינים במאמרי העזרה בנושא אתחול מהיר.
האמולטור עודכן לשימוש ב-QEMU 2.9.
אלה כמה מהשיפורים הבולטים:
- שיפורים בקלט/פלט (I/O) ונעילת שרשור קלט/פלט (I/O) ברמת גרנולריות גבוהה יותר לשיפור הביצועים.
- תוקנו באגים מאז QEMU 2.8 (26.1.4).
- הטמעה חדשה של קצה העורף (back end) של HAXM.
הרשימה המלאה של השינויים מופיעה ביומן השינויים של QEMU 2.9.
הטמעה של Swiftshader שתואמת ל-OpenGL ES 3.0:
המעבד של Swiftshader במדמה תואם עכשיו באופן מלא ל-OpenGL ES 3.0. פרטים על המעבד של Swiftshader מופיעים בקטע הגדרות > מתקדם של אמצעי בקרה מתקדמים.
תיקונים
- תוקנה בעיה שבה שיתוף הלוח לא פעל אלא אם האפשרות הפעלת שיתוף הלוח הושבתה והופעלה מחדש.
- תוקנה בעיה שגרמה להשהיה כשמשתמשים ב-Swiftshader rendering back end עם AVD ברזולוציה נמוכה.
27.0.5 (ינואר 2018)
האפשרות ANGLE להצגה ב-Windows מושבתת עכשיו כברירת מחדל.
אם ANGLE מתאים לכם יותר, אתם יכולים להפעיל אותו מחדש באמצעות האפשרות
-gpu angle_indirectבשורת הפקודה. אפשרות נוספת היא לפתוח את חלון ההגדרות המתקדמות, לעבור אל הגדרות > מתקדם ולבחור באפשרות ANGLE D3D11 להגדרת רכיב ה-renderer של OpenGL ES.תוקנה הבעיה שבה הקשה על Shift+B לא הפיקה את האות B גדולה.
27.0.2 (דצמבר 2017)
תכונת אתחול מהיר החדשה מספקת זמני הפעלה מהירים יותר של אמולטורים, על סמך תמונת מצב של מופע ה-AVD.
ההגדרה 'אתחול מהיר' מופעלת כברירת מחדל בכל מכשירי ה-AVD. למרות שבפעם הראשונה שמפעילים AVD צריך לבצע אתחול קר (בדיוק כמו הפעלה של מכשיר), כל ההפעלות הבאות מהירות והמערכת משוחזרת למצב שבו היא הייתה כשסגרתם את האמולטור (בדומה להעברה של מכשיר ממצב שינה למצב פעיל).
אם רוצים לשלוט מתי האמולטור שומר תמונת מצב, פותחים את חלון ההגדרות המתקדמות של האמולטור ולוחצים על הגדרות. כאן אפשר לבחור אחת מההגדרות הבאות של שמירת מצב האתחול המהיר ביציאה:
- כן: תמונת המצב של האתחול המהיר נשמרת תמיד כשסוגרים את האמולטור. זוהי אפשרות ברירת המחדל.
- לא: לעולם לא לשמור תמונת מצב של אתחול מהיר; תמיד לבצע אתחול קר.
- Ask: תוצג הנחיה לשמירת תמונת המצב של האתחול המהיר כשסוגרים את האמולטור.
הבחירה חלה רק על ה-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.-
תיקנו באגים נוספים.
26.1.4 (אוגוסט 2017)
זוהי גרסה משנית עם תיקוני באגים והשיפורים הבאים בהגדרת ה-GPU:
- הפעלת אנימציית אתחול כשמריצים במעבד ANGLE
- השבתה של GLES3 כשמריצים במנוע לרינדור ANGLE
26.1.3 (אוגוסט 2017)
זוהי גרסה משנית עם תיקוני באגים, שיפורי ביצועים ושינויים קלים בתכונות.
- הגרסה הזו נדרשת עכשיו כדי להשתמש בתמונות המערכת העדכניות של Android 8.0.
הם תואמים ל-Treble, עם מחיצות נפרדות של
vendor.img. - גרסה חדשה של HAXM (6.2.0) זמינה עכשיו (אפשר לבדוק ב-SDK Manager) והיא כוללת את העדכונים הבאים:
- שיפור השימוש בזיכרון. הזיכרון המקסימלי שמוצמד על ידי HAXM כבר לא שווה לגודל ה-RAM של ה-AVD, אלא הזיכרון מוקצה לפי דרישה. השינוי הזה אמור לעזור לאמולטור לפעול בצורה מהימנה יותר במחשבים עם נפח RAM נמוך יותר.
- האמולטור עם HAXM 6.2.0 יכול עכשיו לבצע אתחול מהר יותר ב-macOS, בלי שלב ארוך של אתחול.
- שיפורים בהגדרת ה-GPU
- תוקנו בעיות שקשורות למסך שחור במהלך האתחול כשמבצעים רינדור תוכנה בצד האורח על ידי חזרה לרינדור תוכנה בצד המארח באמצעות Swiftshader. בגרסאות האחרונות של תמונות המערכת לרמות API 19 עד 25 עם Google APIs, הרינדור בצד האורח אמור לפעול.
- תוקנה הבעיה שבה האמולטור עבר לתוכנת עיבוד (rendering) בגלל זיהוי של יחידות GPU ישנות יותר של Intel, אבל האמולטור פעל בפועל על יחידת GPU נפרדת. ההחלטה אילו יחידות GPU יעברו לשימוש ב-ANGLE או בעיבוד Swiftshader מתקבלת באופן הבא:
- לכרטיסי iGPU ישנים של Intel יש בעיות בדרייברים של OpenGL ו-ANGLE D3D. משתמשים עם כרטיסי Intel HD Graphics 3xxx ומטה ישתמשו ב-Swiftshader.
- חלק מהמשתמשים דיווחו על חוסר אפשרות להשתמש בתמונות ברמת API 25 בגלל באג שגורם להודעה 'Pixel Launcher ממשיך להיעצר'. נראה שמדובר בבעיה במנהל ההתקן בחלק מדגמי Intel HD 4xxx. לכן הם יועברו לשימוש ב-ANGLE באופן אוטומטי.
- כדי לקבל את התוצאות הטובות ביותר עם אמולציית GPU, מומלץ להשתמש ב-GPU נפרד של NVIDIA או AMD, או ב-GPU חדש יותר של Intel (Iris, HD 5xxx, HD 5xx/6xx).
- תוקנה הבעיה שבה האמולטור לא מופעל (ההפעלה של OpenGL נכשלה) אם ה-AVD הוגדר עם
hw.gpu.mode=hostוהאמולטור הופעל בלקוח של שולחן עבודה מרוחק. - הוספנו הבהרות להגדרות של 'רמת API של OpenGL ES (נדרשת הפעלה מחדש)'. הוספנו אפשרות לשנמוג מ-OpenGL ES 3 ל-OpenGL ES 2 אם נתקלים בבעיות או אם צריך לבצע בדיקות ברמות API נמוכות יותר של OpenGL ES.
- הרינדור של Mesa יצא משימוש. מעכשיו,
hw.gpu.mode=mesaיעבור אוטומטית לשימוש ב-Swiftshader במארח.
- שיפורים ב-macOS:
- האמולטור תואם עכשיו באופן מלא ל-macOS 10.13 High Sierra באמצעות Hypervisor.Framework או HAXM 6.2.0.
- Hypervisor.framework מופעל עכשיו כברירת מחדל ב-macOS לתמונות x86 של 32 ביט כדי לשפר את הביצועים ואת התאימות ל-macOS. אם נתקלתם בבעיות ספציפיות, אתם מוזמנים לשלוח דוח באגים ולצרף את
HVF = offל-~/.android/advancedFeatures.ini(צריך ליצור את הקובץ הזה אם הוא לא קיים). - תוקנו בעיות שקשורות לאינטרנט או לחיבור מאתר הבאגים בזמן השימוש ב-Hypervisor.framework.
- כדי לשפר את התאימות והביצועים של צילום ממצלמת אינטרנט, צילום המצלמה שמבוסס על QTKit הוחלף בצילום מבוסס-מאגר שמבוסס על AVFoundation.
- נוספה תמיכה ב-Wi-Fi בחלק מתמונות המערכת (נכון לעכשיו רק ברמת API 25).
נקודת גישה בשם AndroidWifi זמינה, ו-Android מתחבר אליה באופן אוטומטי. אפשר להשבית את התמיכה ב-Wi-Fi על ידי הפעלת האמולטור עם פרמטר שורת הפקודה
-feature -Wifi. - חלק מהמשתמשים הביעו דאגה לגבי נפח האחסון של תמונות המערכת של חנות Play בגודל קבוע, כי הוא לא מספיק. לכן, הגדלנו את הגודל ל-2GB כברירת מחדל (לעומת 800MB).
- נוסף מקש קיצור (Ctrl+Shift+U) לפתיחת דף ממשק המשתמש של דיווח על באגים ישירות מדף ההגדרות.
- תוקנה הבעיה שבה אם נעשה שימוש ביחידת עיבוד מרכזית (CPU) ישנה יותר עם Intel x86 EPT אבל בלי UG, האמולטור לא יופעל אם הוגדרה יותר מליבה אחת.
- תוקנה בעיה שבה מערכת HyperV זוהתה בצורה לא תקינה אם האמולטור פעל בעצמו ב-Xen hypervisor.
- תוקנה בעיה שגרמה לקריסת האמולטור בהפעלה בחלק מההגדרות של Linux.
26.1.2 (יולי 2017)
הגרסה הזו כוללת תכונות חדשות ושיפורי ביצועים.
נוספה האפשרות להגדיר תצורה מותאמת אישית של HTTP proxy בפקדים המתקדמים (לוחצים על עוד
, ואז על הגדרות ועל Proxy). כברירת מחדל, האמולטור משתמש בהגדרות ה-HTTP proxy של Android Studio, אבל במסך הזה אפשר להגדיר תצורה ידנית של proxy.
נוספה תמיכה ב-VNC עבור GPU במצב אורח, כך שאפשר לצפות באמולטור מרחוק ולשלוט בו. לדוגמה, אפשר להפעיל את האמולטור ולאפשר ל-VNC להאזין ליציאה 5901 באופן הבא:
- ביצוע:
emulator -gpu guest -avd avd_name -no-window -qemu -vnc :1 פותחים כלי לצפייה ב-VNC, כמו tightvnc viewer, כדי להתחבר ליציאה 5901.
כדי להשתמש בלקוח המובנה לשיתוף מסך ב-Mac, צריך סיסמת VNC כשמפעילים את האמולטור. כדי להגדיר סיסמה, משתמשים בפקודה הבאה:
emulator -gpu guest -avd avd_name -no-window -qemu -vnc :1,password -monitor stdioואז מזינים
change vnc passwordבמסוף ומזינים סיסמה.
בשלב הזה, אין תמיכה ב-Android O במצב VNC.
- ביצוע:
הוספנו לחצן דיווח על באג במסך העזרה של הפקדים המורחבים (לוחצים על סמל האפשרויות הנוספות
,
ואז על עזרה ועל עזרה בנושא אמולטור). כשלוחצים על File a bug (דיווח על באג) נפתח חלון דו-שיח שבו אפשר לראות את פרטי דוח הבאגים, כמו צילום המסך, פרטי ההגדרה של AVD ויומן דוח הבאגים. אחרי כן תוכלו לשמור את הדוח לעצמכם או לדווח על בעיות באמולטור הדוחות.נוסף חיישן גירוסקופ לאמולטור ולחלונית של חיישנים וירטואליים. כדי שהתכונה הזו תפעל, צריך קובץ אימג' של המערכת עם תמיכה בגירוסקופ (נכון לעכשיו, רמת API 24 ו-25).
נוספה רשימת DNS מועדפת למארח ל-Qemu DNS ב-Windows, כשממשקי רשת וירטואליים מרובים במארח יוצרים כתובות DNS מרובות שלא פועלות באמולטור.
נוספה תמיכה ניסיונית ב-Hypervisor.Framework של macOS לתמונות x86 32 ביט ב-macOS 10.10 ואילך באמצעות דגלים של שרתים, מה שאמור לשפר את זמן האתחול והביצועים.
- אם נתקלים בבעיות, מוסיפים את השורה
HVF = offב-~/.android/advancedFeatures.ini.
- אם נתקלים בבעיות, מוסיפים את השורה
OpenGL ES 3.x מופעל עכשיו כברירת מחדל עבור קובצי אימג' של המערכת ומעבדים גרפיים (GPU) של המארח שתומכים ב-OpenGL ES 3. בשלב הזה, רק מארחי Android O (רמת API 26) ו-Windows/Linux תומכים ב-OpenGL ES 3.
- אם נתקלים בבעיות ב-OpenGL ES 3, מוסיפים את השורה
GLESDynamicVersion = offב-~/.android/advancedFeatures.ini.
- אם נתקלים בבעיות ב-OpenGL ES 3, מוסיפים את השורה
האמולטור משתמש עכשיו ב-OpenGL FBOs מחוץ למסך לכל העיבוד, מלבד פרסום תמונת התצוגה הסופית. זה אמור לעזור בבעיות של עקביות הצבעים בפלטפורמות שונות.
אחרי שצברנו נתונים על בעיות של האטה פתאומית באמולטור, הגענו למסקנה שהבעיה קשורה לאינטראקציה מסוימת בין דרייברים ישנים של Intel OpenGL לבין עדכוני Windows. לכן, משתמשים עם כרטיסי מסך מסוג Intel HD 4000, 3000, 2000 (ומעבדים גרפיים קשורים) יקבלו עכשיו כברירת מחדל רנדרינג שמוגדר כ-D3D renderer (ANGLE) או Swiftshader (רנדר תוכנה).
26.0.0 (מרץ 2017)
הגרסה הזו תואמת לרמת API 26. הגרסה כוללת גם מספר שיפורים בביצועים ותיקוני באגים.
גרסת משנה 26.0.3 (מאי 2017)
- נוספו דגלים של תכונות שאפשר לעדכן באינטרנט כדי לטפל במהירות בבעיות שנובעות מהגדרות חומרה בעייתיות. כך Google יכולה להשיק תיקונים ותכונות שתלויים בהגדרות המשתמשים, על ידי עדכון דגלים בצד השרת. אם אתם מבחינים בבעיות בחומרה ספציפית, אתם מוזמנים לדווח על באג כדי שנוכל לבדוק את הבעיה.
- תמיכה חדשה בקלט סיבובי לתמונות מערכת ברמת API 25 של Android Wear. כדי לדמות את חוגה להזנת נתונים במכשיר Wear, לוחצים על הכרטיסייה Rotary Input בחלון המורחב.
- תיבת הדו-שיח של דיווח על קריסות ניתנת לשינוי גודל, ולא מתאפסת יותר מתי לשלוח דוחות על קריסות לשאלת משתמש ללא קלט.
- כדי למנוע מצב שבו לא יישאר מקום לאמולטור בנפח הזיכרון הווירטואלי של 2GB, באמולטור 32-bit צריך להגדיר את גודל ה-RAM המקסימלי של ה-AVD ל-512MB או פחות.
- נוספה תמיכה בנתיבים מוחלטים בתמונות של אמולטורים.
- נוספת כרטיסייה חדשה בחלון המורחב לתמונות של חנות Google Play, שמוצגת בה גרסת Play Services ולחצן לבדיקת עדכונים ל-Play Services.
- נוסף תפריט נפתח לבחירת רכיב ה-OpenGL Renderer בדף ההגדרות של האמולטור. אם נתקלתם בבעיות בדרייבר OpenGL במחשב Windows, נסו להשתמש באפשרויות ANGLE (D3D11) או ANGLE (D3D9) (נדרשת הפעלה מחדש). אם נתקלתם בבעיות בדרייבר OpenGL במחשב שאינו Windows, נסו להשתמש בתוכנת Swiftshader Renderer (נדרשת הפעלה מחדש).
- תוקנה קריסה נדירה ביציאה כשהאמולטור מקבל את הפקודות
exitו-minimize. - תוקנה בעיה שקשורה לשינוי גודל כשמחליפים צגים במחשב Mac. (בעיה 268296)
- תוקנה בעיה שבה האמולטור תופס 300% מה-CPU ומחזיק אותו אחרי שהמחשב המארח יוצא ממצב שינה או כשהאמולטור פועל במשך זמן רב.
- תוקנה קריסה שמתרחשת כשמכבים את האמולטור.
עדכונים בגרסה HAXM v6.1.1 (מרץ 2017)
הערה: החל מ-30 במרץ, גרסה 6.1.1 של HAXM זמינה למשתמשי Mac דרך SDK Manager, ותהיה זמינה למשתמשי Windows בקרוב.
גרסה 26.0.0 של אמולטור Android תומכת ב-HAXM v6.1.1, שכוללת את העדכונים הבאים:
- הפעלת אמולציה של יחידות למעקב אחרי ביצועים (PMU). (בעיה 223377)
- תיקונים לדו-קיום עם VirtualBox ו-Docker במחשבי Mac. (בעיה מספר 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 מגרסה 25.0.4 ואילך.
- Android SDK Tools מגרסה 26.0.0 ואילך.
תכונות חדשות ותיקוני באגים
- תואם לרמת API 26.
- תאימות מלאה ל-GLES 2.0. בהינתן GPU של מארח עם מנהלי התקנים תואמים של OpenGL למחשב, האמולטור עובר עכשיו 100% מהבדיקות ברשימה
mustpassשל Android CTS dEQP-GLES2. העדכון הזה פורסם לתמונות x86 ברמת API 24 (גרסה 11 ואילך), ובקרוב הוא ייכלל בכל תמונות המערכת. - שיפור בביצועי הפעלת סרטונים. האמולטור מאחסן עכשיו את כל מאגרי הצבעים של הסרטונים בזיכרון המשותף של המארח/האורח, ומבצע את ההמרה הסופית הנדרשת מ-YUV ל-RGB ב-GPU. רוב המערכות יכולות להגיע ל-1080p30. העדכון הזה פורסם עבור תמונות x86 ברמת API 24 (גרסה 11 ואילך), ובקרוב הוא ייכלל בכל תמונות המערכת.
- האמולטור מבטל עכשיו את הרישום שלו בצורה נכונה מהרשימה
adb devicesביציאה, וסוגר יציאות TCP פתוחות במכונות Linux. - חיבורי adb אמינים יותר עכשיו. אמולטור שפועל מזוהה מהר יותר, ולא עובר יותר למצב 'אופליין' או 'לא מורשה'.
25.3.0 (מרץ 2017)
החל מהגרסה הזו, אמולטור Android יפורסם בנפרד מ-SDK Tools. הגרסה הזו כוללת מגוון שיפורים בביצועים, תכונות חדשות ותיקוני באגים.
גרסת משנה 25.3.1 (מרץ 2017)
- תוקנה קריסה שמתרחשת בהגדרות מסוימות של GPU על ידי השבתת GLAsyncSwap כברירת מחדל.
הוספנו את התכונה הזו בגרסה 25.3.0 כדי לשפר את התזמון של הפריימים ואת מספר הפריימים לשנייה במשחקים ובסרטונים, אבל היא גורמת לאמולטור להיכשל בחלק מהגדרות המכונה הלא ידועות. אפשר להפעיל אותו ידנית על ידי פתיחת הקובץ
android_sdk/emulator/lib/advancedFeatures.iniוהגדרתGLAsyncSwap = on.
פניות קשורות
- Android SDK Platform-Tools מגרסה 24 ואילך.
- Android SDK Tools revision 25.3.0.
תכונות חדשות ותיקוני באגים
- מנוע האמולציה עודכן ל-QEMU 2.7, כולל כל תיקוני הבאגים האחרונים, שיפורי הביצועים ותכונות חדשות.
- תמיכה חדשה ב-IPv6.
- האמולטור משתמש עכשיו ב-SwiftShader ככלי לרינדור תוכנה טהור במחשב המארח.
- שיפורים בביצועים של Android Pipe: Android Pipe, ערוץ התקשורת הראשי בין האמולטור לבין Android OS, מהיר עכשיו פי כמה, יש לו השהיה נמוכה יותר והוא מציע ביצועים טובים יותר בריבוי תהליכים. השיפורים האלה מובילים לשיפורים בביצועים של האמולטור, כולל:
- שיפור המהירות של פעולות push/pull ב-ADB.
- תמיכה משופרת בהאצת תלת-ממד.
- שיפור התגובה הכוללת של האמולטור.
- שיפור בביצועי הגרפיקה.
- האמולטור משתמש עכשיו בבאפרים בצד ה-GPU (glBindBuffers / glBufferData) כשהמערכת האורחת מבקשת אותם, וכך מצטמצם העומס על המעבד בחלק מהאפליקציות.
- שיפור התמיכה באודיו.
- קלט/פלט (I/O) מהיר יותר בדיסק: האמולטור משתמש עכשיו בשרשורים נפרדים כדי לשלוח קלט/פלט מהדיסק, וכתוצאה מכך זמן האחזור קצר יותר והתפוקה טובה יותר (מהירות קלט/פלט רציפה גבוהה פי 1.5 בערך, מהירות קלט/פלט של גישה אקראית גבוהה פי 5 בערך). הפעולה הזו גם מפחיתה את מספר הפעמים שבהן הנתונים נשמרים בדיסק, וכך העומס על המכשיר הפיזי נמוך בהרבה.
- האמולטור משתמש עכשיו בקבצים דלילים לאתחול דיסקים במכונות Windows, וכך מקצר את זמן האתחול הראשון ואת זמן האתחול של 'מחיקת נתונים'. כשיוצרים או מאפסים AVD, האמולטור כותב עכשיו 100-200MB של נתונים לדיסק, במקום 2GB או יותר.
- שיפורים שונים בממשק המשתמש:
- האמולטור משתמש עכשיו ב-Qt 5.7.0, שכולל תיקוני באגים ושיפורי ביצועים.
- האתחול של ממשק המשתמש כבר לא מנסה לטעון את כל קובצי ההפעלה של האמולטור כתוספי Qt, ולכן הוא קצר משמעותית, במיוחד בכונני HDD.
- האינטראקציות בממשק המשתמש מהירות וחלקות יותר עכשיו, כולל סיבוב, שינוי גודל החלון וטעינה וסגירה של חלון הבקרה המורחב.
OpenXR™ והלוגו של OpenXR הם סימנים מסחריים בבעלות The Khronos Group Inc. והם רשומים כסימן מסחרי בסין, באיחוד האירופי, ביפן ובבריטניה.