Der Android-Emulator ist in Android Studio enthalten.
Emulatorversionen vor 25.3.0 wurden im Rahmen der Android SDK-Tools bereitgestellt.
Prüfen Sie im SDK-Manager, ob Updates verfügbar sind, um sicherzustellen, dass Sie die aktuelle Version haben.
Informationen zum Herunterladen früherer Versionen von Android Emulator finden Sie im Emulator-Downloadarchiv.
Versionshinweise für Emulator-Versionen vor 25.3.0 finden Sie in den Versionshinweisen zu den Android SDK-Tools.
Informationen zu den Problemen, die in den neuesten Versionen des Android-Emulators behoben wurden, finden Sie unter Geschlossene Probleme.
Informationen zu bekannten Problemen und zur Fehlerbehebung finden Sie unter Fehlerbehebung für den Emulator.
Android Emulator der nächsten Generation (Vorabversion)
Ab Android Studio Rabbit 3 Canary 1 ist eine Vorabversion unseres Android Emulators der nächsten Generation verfügbar, die standardmäßig für berechtigte virtuelle Geräte verwendet wird.
Durch das Upgrade von unserem alten QEMU 2-Fork auf das moderne Upstream-QEMU (v11+) bietet die neue Engine eine Trennung von Engine- und UI-Prozessen, die für eine höhere Qualität und Leistung sorgt.
Entwickler profitieren von:
- Schnellere Bootzeiten und geringerer CPU-/Arbeitsspeicheraufwand
- Verbesserte Sitzungsstabilität durch isolierte Engine- und UI-Prozesse
- Moderne Virtualisierung mit aktualisierten virtio-Hardwaremodellen und Vulkan-Grafik
Erstelle zuerst ein AVD für Smartphones mit API-Level 37.0 oder höher und starte es über Android Studio Canary. Vorhandene AVDs werden vorerst weiterhin nahtlos auf der klassischen Emulator-Engine ausgeführt.
37.2.12 Stable (1. Oktober 2026)
[Fehlerkorrektur]Problem 537802959 macOS (Apple Silicon): gRPC-streamScreenshot mit ImageTransport MMAP führt zum Absturz der Emulator-Engine / Frames werden ohne Fehlermeldung nicht geschrieben
[Fehlerkorrektur]Problem 507078580: Emulator verhindert, dass macOS in den Ruhemodus wechselt
[Fehlerkorrektur]Problem Nr. 506475581 Die verbleibenden Audioverzerrungen und das Knistern beim Start unter macOS bei Verwendung einer Audioschnittstelle mit mehr als zwei Kanälen (Loopback, Multi-Output) wurden behoben.
37.1.11 Stable (30. Juli 2026)
Der Android Emulator Hypervisor Driver (AEHD) wird am 31. Dezember 2026 eingestellt. Um den Übergang zu erleichtern, unterstützt Android Studio Windows-Nutzer jetzt bei der Umstellung von AEHD auf die Windows-Hypervisor-Plattform (WHPX). Informationen zum Konfigurieren der VM-Beschleunigung mit WHPX finden Sie unter VM-Beschleunigung mit WHPX konfigurieren.

Pixel 10a-AVD hinzugefügt
Unterstützung für neue Vulkan-Erweiterungen hinzugefügt, die zum Ausführen von API 37-System-Images erforderlich sind
[Fehlerkorrektur]Problem 324465986: Keine Fehlermeldung, dass der Speicherplatz nicht ausreicht, wenn ein Snapshot auf einem Emulator ohne Speicherplatz erstellt wird
[Fehlerkorrektur]Problem 526671872 Unterstützung von Einheitensuffixen (z.B. „6G“, „32M“) für AVD-RAM- und VM-Heap-Größenkonfigurationen in config.ini
[Fehlerkorrektur]Problem 325814592 In macOS 14 wurde ein Problem eingeführt, bei dem der Emulator nach dem Starten der Kamera einfriert und sehr langsam arbeitet.
36.6.11 Stable (2. Juni 2026)
Ab API 37 wurde der von der VM des AVD verwendete Mindestarbeitsspeicher (RAM) auf 4 GB erhöht.
Um die höheren Speicheranforderungen von Android 17 (API 37) zu erfüllen, benötigen virtuelle Android-Geräte (AVDs) für Smartphones jetzt mindestens 4 GB RAM. Wenn Ihr AVD mit weniger Arbeitsspeicher konfiguriert ist, überschreibt der Emulator die Einstellung automatisch, um mindestens 4 GB zuzuweisen. So werden potenzielle Laufzeitprobleme vermieden.
Der Kameramodus „Umgebung“ wurde dem Emulator für konfigurierbare Hintergründe für virtuelle Szenen hinzugefügt. Diese Szenen sind in der Datei „environment.ini“ des AVD definiert und können zur Laufzeit dynamisch neu geladen werden.
Ein Fehler wurde behoben, bei dem die Snapshot-Vorschau im eigenständigen Emulator nach dem Löschen des Snapshots nicht gelöscht wurde.
[Fehlerkorrektur]Problem 506475581: Emulator-Audio unter macOS stark verzerrt, wenn ein Audio-Interface mit mehr als 2 Kanälen (Loopback, Multi-Output) verwendet wird
[Fehlerkorrektur]Problem 516455370 Es wurde ein erhebliches Speicherleck unter macOS 26.3 behoben, das beim Schließen des Emulators auftrat und mit der Bereinigung von Ressourcen zusammenhing, die von Hypervisor.framework-APIs verwendet wurden.
Patch 36.5.11 (23. April 2026)
- [Fehlerkorrektur]Problem 492228020: Der Android-Emulator zeigt einen schwarzen Bildschirm an, wenn Hardware-/Auto-Grafikrendering auf einer Intel-GPU verwendet wird.
36.5.10 Stable (2. April 2026)
Dieses Update enthält die folgenden Funktionen und Fehlerkorrekturen:
Interaktionen zwischen mehreren Geräten mit dem Android-Emulator testen
Der Android Emulator verfügt jetzt über einen neuen Netzwerkstack, der das Testen auf mehreren Geräten verbessert. Dadurch ist keine manuelle Portweiterleitung mehr erforderlich, um mehrere AVD-Instanzen auf demselben Host zu verbinden. AVDs können sich jetzt automatisch erkennen und miteinander kommunizieren, als wären sie im selben virtuellen Netzwerk. So können Peer-to-Peer-Interaktionen mit Protokollen wie Wi-Fi Direct und Network Service Discovery nahtlos getestet werden.
Dieser neue Netzwerkstack bietet Entwicklern mehrere wichtige Vorteile:
- Keine Konfiguration erforderlich: Keine manuelle Portweiterleitung oder Skripterstellung für adb-Befehle mehr nötig.
- Nahtlose Peer-to-Peer-Verbindung: Wichtige Protokolle wie Wi-Fi Direct und Network Service Discovery funktionieren zwischen Emulatoren sofort.
- Verbesserte Stabilität: Behebt langjährige Stabilitätsprobleme wie Datenverlust (Problem 150758736) und Verbindungsabbrüche (Problem 449817856), die im Legacy-Stack aufgetreten sind.
Aktualisieren Sie zuerst im SDK-Manager von Android Studio auf die neueste Version des Android-Emulators. Weitere Informationen finden Sie hier in der Dokumentation.
Zusätzliche Funktionen und Fehlerkorrekturen
Neue Pixel-AVDs hinzugefügt, darunter Pixel 10, Pixel 10 Pro, Pixel 10 Pro XL und Pixel 10 Pro Fold
Webcams werden mit nutzerfreundlichen Namen aufgeführt. Ein Problem unter Linux wurde behoben, bei dem der Emulator nicht alle verbundenen Webcams erkannt und aufgelistet hat.
[Fehlerkorrektur]Problem 333628462: Der crashpad_handler-Prozess verbraucht unter macOS zu viel CPU.
Patch 36.4.10 (9. März 2026)
- [Fehlerkorrektur]Problem #489369080: Absturz im TV-Emulator beim Bewegen des Mauszeigers nach dem Update auf Panda 2 behoben
36.4.9 Stable (10. Februar 2026)
Um die GPU-Auswahl in der Benutzeroberfläche zu vereinfachen, enthalten die erweiterten Einstellungen des Android-Emulators jetzt bestimmte Hardware- und Softwareoptionen. Nutzer der Befehlszeile können jetzt die Option „-gpu software“ verwenden, um die besten verfügbaren GLES- und Vulkan-Software-Rendering-Backends für ihr System auszuwählen.
Lavapipe wurde als Standard-Grafiksoftware-Renderer aktiviert, um die Vulkan-Kompatibilität auf allen Plattformen zu verbessern.
Vulkan-Verbesserungen:
- Der im Emulator enthaltene Vulkan-Loader wurde aktualisiert.
- Verschiedene ungültige Anwendungsfälle im Vulkan-Backend wurden behoben.
- Unterstützung für die Verwendung von SkiaVk auf systemui mit Emulation der Grafikwarteschlange auf neuen System-Images hinzugefügt
- Unterstützung für Vulkan-Komposition hinzugefügt, um GL-Nutzungen auf dem Host zu deaktivieren. Diese Option ist für XR-Images standardmäßig aktiviert und kann mit der Befehlszeilenoption „-feature VulkanNativeSwapchain“ aktiviert werden.
[Fehlerkorrektur]Problem 471008659: Speicherleck auf der Hostseite des Emulators beim Öffnen/Schließen von Aktivitäten
36.4.3 Canary (8. Dezember 2025)
Neuer Emulator für KI-Brillen
Wir haben einen neuen, experimentellen KI-Brillen-Emulator für die Entwicklung und das Testen von Apps hinzugefügt, die mit dem Jetpack XR SDK für KI-Brillen erstellt wurden. Du kannst einen Emulator für die Datenbrille zusammen mit einem Emulator für das Smartphone ausführen, sie koppeln und typische Interaktionen ausführen, die du auf der Datenbrille ausführen würdest. Informationen zum Installieren des KI-Brillen-Emulators und zum Einrichten Ihrer Entwicklungsumgebung finden Sie unter Virtuelle KI-Brillen-Geräte erstellen.
Der Emulator für KI-Brillen ist ein experimentelles Tool. Es kann zu Problemen kommen, insbesondere beim erneuten Koppeln der Datenbrille mit Smartphone-Emulatoren und bei Touchpad-UI-Interaktionen.
Neuer XR-Brillen-Emulator
Wir haben den zuvor eingeführten Android XR-Emulator für OST-XR-Datenbrillen (Optical See-Through) erweitert. Mit dem XR-Datenbrillen-Emulator können Sie sich eine Vorschau Ihrer App mit dem ungefähren Sichtfeld und der Auflösung des XR-Datenbrillengeräts ansehen. Informationen zum Installieren des XR-Datenbrillen-Emulators und zum Einrichten Ihrer Entwicklungsumgebung finden Sie unter Virtuelle XR-Datenbrillen erstellen.
Der XR-Datenbrillen-Emulator und der KI-Brillen-Emulator sind experimentelle Tools. Es kann zu Problemen kommen, insbesondere bei einigen Windows-GPU- und ‑Treiberkonfigurationen (siehe Windows-Systemanforderungen).
Bekannte Probleme
Ihr Feedback hilft uns, die Funktion zu verbessern und zukünftige Funktionen zu priorisieren. Informationen zum Melden von Fehlern im Zusammenhang mit Android Studio oder dem Android-Emulator finden Sie unter Fehler melden.
36.3.10 (stabile Version, 4. Dezember 2025)
[Fehlerkorrektur]Problem 452843321: Leistungseinbußen beim Übertragen großer Dateien in den Emulator unter Android API 34 und höher.
Abstürze bei der Vulkan-Komposition wurden behoben, wenn Videocodecs im GPU-Texturmodus ausgeführt werden.
Fehler behoben, bei dem der Emulator bei einem Touchscreen-Ereignis abstürzt, wenn er mit „-debug-events“ ausgeführt wird.
Patch 36.2.12 (13. Oktober 2025)
- Absturz unter Windows behoben, der beim Starten einer Vulkan-App im Software-Rendering-Modus auftrat
36.2.11 Stable (9. Oktober 2025)
Die HAXM-Unterstützung wurde aus dem Emulator entfernt. Wenn Sie versuchen, ein AVD mit HAXM zu erstellen, wird ein Banner angezeigt, das auf einen fehlenden Hypervisor hinweist, und ein Aktionslink zum Installieren von AEHD.

Informationen zum Deinstallieren von HAXM finden Sie unter HAXM Uninstall.
Fehler behoben, um sicherzustellen, dass die Intel-GPU OpenGL ES 3.0 verwendet, um einen Treiberabsturz zu vermeiden
[Fehlerkorrektur]Problem #340322888: AVD kann nicht gestartet werden, wenn auf dem Gerät kein Speicherplatz mehr vorhanden ist
[Fehlerkorrektur]Problem 150758736: Sporadischer Verlust von Einzelbyte-Daten bei TCP-Verbindungen im Emulator
[Fehlerkorrektur]Problem 434774381: Der Gastkernel ist nach dem Schnellstart für API 36 und 35 (möglicherweise mehr) unter Windows 11 mit WHPX auf i7-11850H abgestürzt.
36.1.9 Stable (31. Juli 2025)
[Fehlerkorrektur]Problem 419157428: UTF-8-Zeichen im Nutzernamen oder im AVD-Pfad konnten den Start des Emulators verhindern.
[Fehlerkorrektur]Problem 423670833: Android Emulator stürzt im btrfs-Dateisystem ab
Hinweis: Wenn beim Starten des Emulators auf X11 Probleme auftreten, sollten Sie das Softwarerendering verwenden. Informationen zum Konfigurieren des Software-Renderings finden Sie unter Grafikbeschleunigung konfigurieren.
35.6.11 Stable (24. Juni 2025)
Die Unterstützung von AMD- und Nvidia-GPUs unter Windows und Linux für die XR-Emulation wurde verbessert.
XR-AVDs können eingebettet in den laufenden Android Studio-Fenstern ausgeführt werden.
Verbesserung der Details zu Absturzberichten unter Windows, um einen vollständigen Dump des Emulators zu ermöglichen
[Fehlerkorrektur]Problem #410485043: Android Emulator XR-Gerät stürzt mit Vulkan-Fehler ab
[Fehlerkorrektur]Problem #388718417: libndk_translation.so bricht ab und verursacht einen Absturz in Arm64AesEncode
35.5.10 Stable (6. Mai 2025)
Zusätzliche CPU-Kompatibilitätsprüfungen mit Fehlermeldungen (z. B. unzureichender Speicherplatz) hinzugefügt
Fehler im Zusammenhang mit der Vulkan-Speicherverwaltung und ungültigen Anwendungsfällen wurden behoben.
Die Vulkan-Snapshot-Unterstützung wird beim Ausführen über ein Terminal korrekt geprüft und übersprungen.
Unterstützung für die Erweiterung VK_KHR_multiview und das Texturformat A1R5G5B5 hinzugefügt
Pixel 9a-AVD hinzugefügt
35.4.9 Stable (25. Februar 2025)
In den erweiterten Einstellungen wurde ein Drop-down-Menü für die GLES-Treiber-Einstellungen des Gastes hinzugefügt.
[Fehlerkorrektur]Problem 389330750: Beim Senden von SMS mit dem Zeichen „Ñ“ an den Emulator wird die Nachricht aufgeteilt.
[Fehlerkorrektur]Problem #382180488: Die Funktion „emuglConfig_get_vulkan_hardware_gpu_support_info“ stürzt ab, weil keine Vulkan-Geräte erkannt werden.
Hinweis:Der Android XR-Emulator ist nur in Canary-Versionen von Android Studio verfügbar.
35.3.11 Stable (9. Januar 2025)
[Fehlerkorrektur]Problem 368059211: Der programmatische Zugriff von Android Auto OS auf die VHAL über die Car Service API funktioniert nicht.
[Fehlerkorrektur]Problem 348598513: Der Emulator hat eine unnötige, nicht threadsichere öffentliche Methode in einer Multithread-Sperre.
[Fehlerkorrektur]Problem 356896486: Vulkan API-Aufrufe werden jetzt tatsächlich deaktiviert, wenn „-feature -Vulkan“ verwendet wird.
35.4.4 Canary (12. Dezember 2024)
Neuer Android XR-Emulator
Wir haben einen neuen, experimentellen Android XR-Emulator für die Entwicklung und das Testen von Apps hinzugefügt, die mit dem Jetpack XR SDK für Headsets erstellt wurden. Informationen zum Installieren des Android XR-Emulators und zum Einrichten Ihrer Entwicklungsumgebung finden Sie unter Jetpack XR SDK einrichten.
Der Android XR-Emulator ist ein experimentelles Tool. Wir haben uns jedoch entschieden, die Funktion frühzeitig mit Ihnen zu teilen, damit Sie sie schon jetzt testen können. Es kann zu Problemen kommen, insbesondere bei einigen Windows-GPU- und ‑Treiberkonfigurationen. Es können auch Probleme bei Kompatibilitätstests für vorhandene 2D-Apps für Mobilgeräte auftreten. Ihr Feedback hilft uns, die Funktion zu verbessern und zukünftige Funktionen zu priorisieren.
Bisher wurde der Android XR-Emulator mit den folgenden Hardwarekonfigurationen getestet:
- Mac (ARM)
- Windows 11
- nVidia-GPU, 4 GB vRAM, Treiberversion 553.35 oder höher
- Mindestens 16 GB RAM
- 8 Kerne oder mehr
Bekannte Probleme
Emulator – Stabilität und Leistung:
- Bei einigen Windows-Konfigurationen kann es zu kritischen Systemsperren oder Abstürzen während des Startvorgangs oder beim Ausführen von Anwendungen kommen. Achten Sie darauf, dass die Windows Hypervisor Platform (WHPX) aktiviert ist. Folgen Sie dazu der Anleitung zum Aktivieren von WHPX im Android Studio-Entwicklerhandbuch.
- Probleme wie nicht reagierende AVD- oder UI-Elemente auf Laptops nach einem Suspend-Resume-Zyklus (z. B. Schließen und Öffnen eines Laptops).
- Gelegentliche Abstürze beim Wechseln von Apps vom Startbildschirmmodus in den Vollbildmodus
- Gemini APIs sind noch nicht verfügbar. Die Gemini API-Startervorlagen-App stürzt ab.
Emulator – Eingabe und Ausgabe simulieren:
- Die virtuelle Tastatur für Such- und Bearbeitungsfelder ist im Sichtfeld möglicherweise nur teilweise sichtbar.
Elemente können nicht mit Maus und Tastatur in Z-Richtung (in den Bildschirm hinein und aus dem Bildschirm heraus) bewegt werden.
Instabilitäten bei der Audioeingabe über das AVD-Mikrofon können zu Neustarts und Abstürzen des AVD führen.
Der Ton ist manchmal verrauscht oder verzerrt.
Wenn die Kamera aus dem virtuellen Wohnzimmer bewegt wird, sind Renderingfehler sichtbar.
Windows-Konfigurationen werden dunkler als sonst angezeigt.
Die Audioausgabe funktioniert nicht mehr, nachdem der Emulator inaktiv war und der Bildschirm unter macOS gesperrt wurde. (Durch einen Neustart des Emulators wird er wiederhergestellt.)
Die Netzwerkverbindung wird unterbrochen, wenn der Hostcomputer das WLAN wechselt.
Wenn die Feststelltaste aktiviert ist, werden weiterhin Kleinbuchstaben eingegeben.
Das Scrollen mit dem Trackpad auf einem Mac ist nicht flüssig.
Das Scrollen durch Klicken und Ziehen funktioniert bei einigen UI-Elementen möglicherweise nicht. Falls nicht, scrollen Sie stattdessen mit dem Mausrad.
Unscharfer Text, unscharfe Benutzeroberfläche und andere Fehler in Chrome bei einigen Windows-Systemkonfigurationen. Mögliche Problemumgehung: WHP aktivieren.
Emulator – Ebenen und Anker simulieren:
- Anker werden manchmal nicht in der Nähe desselben Standorts neu generiert
- Bewegliche Bereiche dürfen nicht an Wänden oder der Decke verankert werden.
- Simulierte Ebenen stimmen im Passthrough-Modus nicht mit dem physischen Layout des 3D-Raums überein
- Insgesamt begrenzte Bereiche zum Verankern von Objekten im virtuellen Raum
- Kleines sichtbares Artefakt in der Passthrough-Ansicht unter Windows
- In einigen Fällen kann das Platzieren von Ankern zum Absturz der App führen.
- Unter Windows können schwarze Linien über Apps angezeigt werden, wenn Apps in die Nähe des Bodens verschoben werden.
Emulator – Sonstige:
- Der Emulator startet nur im eigenständigen Modus. Der eingebettete Modus (eingebettete UI) wird noch nicht unterstützt.
- Wenn Sie sich mit Konten im Emulator unter Windows anmelden, reagiert der Emulator möglicherweise nicht mehr.
- UI-Inhalte von Fenstern können nach dem Ändern der Größe verschwinden (Problemumgehung: Drücken der Startbildschirmtaste)
- In der JXRCore ActivityPanelTest App wird das sekundäre Steuerfeld anfangs nicht angezeigt.
- Elemente der Schnelleinstellungen können nach längerer Zeit aus den Systemeinstellungen verschwinden.
- Die Emulator-Benutzeroberfläche wird möglicherweise zuerst außerhalb des Bildschirmbereichs angezeigt. Passen Sie in diesem Fall die Größe des Emulatorfensters leicht an. Es sollte dann wieder an die richtige Stelle springen.
- Emulator startet möglicherweise nicht, wenn Chrome Remote Desktop unter Windows verwendet wird
- OpenXR wird im Emulator bisher nicht unterstützt und OpenXR-Apps können zum Absturz des Emulators führen
- Seltene Fehler beim Senden von Fehlerberichten über die erweiterten Einstellungen von Android Studio unter Windows
- Das Symbol „Zurück“ ist in den Einstellungen auf dem Mac erst sichtbar, wenn der Mauszeiger in die Nähe bewegt wird.
- In einigen Fällen kann es beim Erstellen zu Fehlern kommen, wenn das Modul „Baseline Profile“ als Teil eines XR-Vorlagenprojekts verwendet wird.
- Die Bedienungshilfe „XR TalkBack“ ist bisher nur teilweise in den Emulator integriert.
Scene Viewer-App:
- Das Verschieben von Elementen im Scene Viewer kann zu einem Absturz führen. Um dieses Problem zu umgehen, bewegen Sie die Kopfposition leicht von ihrer ursprünglichen Position weg (z.B. mit Schwenken, Dolly, WASD usw.), bevor Sie versuchen, das Element zu bewegen.
- Die Funktion „Originalgröße (1:1)“ funktioniert nicht richtig, wenn die tatsächliche Größe des 3D-Modells kleiner oder größer als die Mindest- und Höchstgrenzen für die Skalierung ist (derzeit auf 20 cm bzw. 70 m festgelegt).
- Das 3D-Modell könnte nach dem Laden zum ersten Frame springen.
35.2.10 (1. Oktober 2024)
- Neue Pixel-AVDs hinzugefügt, darunter Pixel 9, Pixel 9 Pro, Pixel 9 Pro XL und Pixel 9 Pro Fold
- Neues Tablet-System-Image für Vanilla Ice Cream (API 35) hinzugefügt
35.1.20 (29. August 2024)
- Pixel 8a-AVD hinzugefügt
- Verschiedene Fehlerkorrekturen für faltbare Geräte
- Qt-Update und Korrekturen von Abstürzen und Hängern im Zusammenhang mit Qt
- [Fehlerkorrektur] Behebung von Abstürzen und Einfrieren unter Windows bei Anwendungen, die Vulkan verwenden
34.2.16 (9. Juli 2024)
- [Fehlerkorrektur] Die Benutzeroberfläche friert beim Auf- und Zuklappen des Pixel Fold ein.
- [Fehlerkorrektur] Falsche Anzeige der Android-Version als Android Vanilla Ice Cream Preview anstelle von API 35 auf Mac M1.
- [Fehlerkorrektur] Problem #296162661: HasSystemFeature FEATURE_SENSOR_HINGE_ANGLE gibt auf dem Pixel C-Tablet-Emulator „true“ zurück
34.2.15 (31. Mai 2024)
- Verschiedene Absturzkorrekturen im Zusammenhang mit dem Swangle-Modus und der Bereinigung von Werbetreibenden
34.2.14 (20. Mai 2024)
Getestet mit Android Studio Jellyfish Stable Patch 1.
- [Fehlerkorrektur] Snapshot hängt manchmal im eingebetteten Emulator
- [Fehlerkorrektur] Die Schaltflächen „Nein“ und „Abbrechen“ funktionieren im Snapshot nicht richtig.
- [Fehlerkorrektur] Die Tasten des Steuerkreuzes funktionieren nicht
- [Fehlerkorrektur] Es wurde ein Problem unter Windows behoben, das unter bestimmten Bedingungen verhinderte, dass der Emulator gestartet wurde, wenn GPU-Modi mit ANGLE verwendet wurden. Im Protokoll wurde die Fehlermeldung „Failed to initialize GL emulation“ (GL-Emulation konnte nicht initialisiert werden) zurückgegeben. Wenn Sie den Emulator über die Befehlszeile mit der Option
-gpu swangle_indirectstarten, kann dieser Fehler bei dieser Version weiterhin auftreten. Wenn Sie den Emulator mit dieser Version trotzdem über eine Befehlszeile unter Windows mit Software-Grafikrendering starten möchten, verwenden Sie-gpu swiftshader_indirect. - [Fehlerkorrektur] Über die Tastenkombination für den Standort auf der Tastatur wird eine unbrauchbare Karte geladen.
- [Fehlerkorrektur] Beim Festlegen des Standorts fehlt das Dialogfeld „Route speichern“
34.2.13 (30. April 2024)
Getestet mit Android Studio Jellyfish Stable.
- Aktualisierung auf Qt 6.5.3
- Kompatibilität für die Updates der Google Maps API, die in den Standortfunktionen in den erweiterten Einstellungen des Emulators verwendet werden (Ende Mai).
- Korrekturen für Abstürze mit hoher Auswirkung
- Verschiedene Fehlerbehebungen für Pixel-AVDs
- Grafikbibliothek für das Software-Rendering aktualisieren
- [Fehlerkorrektur]Problem 225541819: Beim Starten von Chrome stürzt der Emulator auf x86_64 ab.
- [Fehlerkorrektur]Problem 314614435:
-http-proxy-Switch wird falsch geparst
34.1.20 (1. April 2024)
Getestet mit Android Studio Iguana Stable.
- [Fehlerkorrektur] Problem Nr. 314614435: Problem behoben, bei dem der Switch
-http-proxyfalsch geparst wurde
34.1.19 (7. März 2024)
Getestet mit Android Studio Iguana Stable.
- [Fehlerkorrektur] Problem 312677259: Es wurde ein Problem behoben, bei dem der Bildschirm im eingebetteten Emulator nach dem Ändern der Fenstergröße eingefroren ist.
34.1.18 (29. Februar 2024)
Getestet mit Android Studio Iguana Stable.
- Dem Emulator wurden Geräte hinzugefügt, darunter:
- Google Pixel Fold
- Pixel Tablet
- Pixel 8
- Pixel 8 Pro
- Google Pixel 7a
- gRPC-Integrationstest: gRPC-Endpunkte sind jetzt für instrumentierte Tests verfügbar, die im Emulator ausgeführt werden. So können realistische Szenarien getestet werden. Mit dieser Funktion können Entwickler in Android-Instrumentierungstests sicher mit dem gRPC-Endpunkt interagieren, der vom Android-Emulator gehostet wird.
- Diverse Fehlerkorrekturen
- Fehlerkorrektur: Verbesserungen bei der Nutzerfreundlichkeit von faltbaren Geräten
- Fehlerkorrektur: Position des Emulators nach der Drehung anpassen
- Fehlerkorrekturen bei Abstürzen
33.1.24 (28. Dezember 2023)
Getestet mit Android Studio Hedgehog Stable und Iguana Beta 1.
- Ein Problem mit der Emulator-Webcam wurde behoben, durch das Bildschirmaufzeichnungen im MP4-Format nicht möglich waren.
- Ein Emulatorabsturz auf dem Pixel Fold-AVD wurde behoben, der auftrat, wenn das Gerät während einer Bildschirmaufzeichnung aufgeklappt wurde.
- Problem behoben, bei dem auf dem Pixel Fold ein anderes Smartphone-Design mit einer getrennten Tastatur angezeigt wurde und das Gerät nicht verwendet werden konnte (behoben unter Windows, Mac Intel und Linux)
- Fehler bei der Darstellung von virtuellen Sensoren im eigenständigen Modus behoben (unter Windows, Mac Intel und Linux)
- Behebung einiger Abstürze, insbesondere beim Schließen des Emulators
33.1.23 (30. November 2023)
Getestet mit Android Studio Giraffe Patch 4 und Hedgehog Stable.
- Neue Implementierung für faltbare Geräte, um das Pixel Fold besser zu emulieren, funktioniert mit der neuesten API 34
- Upgrade des Grafik-Backends: Wir haben das gfxstream-Protokoll für unser Grafik-Backend implementiert. Diese Verbesserung erhöht die allgemeine Grafikleistung und Stabilität Ihres Systems. Außerdem wird ab dem System-Image mit API 34 die Unterstützung für Vulkan 1.3 eingeführt.
- Feature Request: Option zum Deaktivieren der Geste „Zum Zoomen auseinanderziehen“ oder zum Neuzuweisen des Hotkeys
- [Fehlerkorrektur] Problem 302562962: Absturz der Emulator-Webcam bei Verwendung von macOS Sonoma behoben
- [Fehlerkorrektur] Problem #293503871: Es wurde ein Problem behoben, bei dem die Einstellung „Mikrofon“ beim Neustart des Emulators nicht gespeichert wurde.
- [Fehlerkorrektur] Problem 270386314: Es wurde ein Animationsfehler behoben, bei dem die Seitenleiste geöffnet blieb, wenn der AVD-Bildschirm minimiert wurde.
- [Fehlerkorrektur] Problem #154896775: Fehler im Tool zum Einreichen von Fehlern behoben
32.1.15 (29. August 2023)
Getestet mit Android Studio Giraffe Patch 1 und Hedgehog Canary 16.
- Einhaltung der GAS-Hardwareanforderungen für Sensoren im AAE-Emulator
- [Fehlerkorrektur] Problem 266201208: Hebräische SMS werden in API 33 nicht gesendet
- [Fehlerkorrektur] Problem 257097404: Der Emulator zeigt nicht die richtige Zeit an, nachdem der Host auf API 29 und 30 aktiviert wurde.
- [Fehlerkorrektur] Problem #228201899 Google Maps wird in den erweiterten Steuerelementen des Android-Emulators nicht angezeigt
32.1.14 (27. Juni 2023)
Getestet mit Android Studio Hedgehog Canary 8, Giraffe Beta 5 und Flamingo Stable.
- Kameraausrichtung und Verzerrungen im Emulator korrigiert.
- [Fehlerkorrektur] Problem 257097404 „Emulator zeigt nach dem Aufwachen des Hosts nicht die richtige Zeit an“. Dieser Fehler ist für API 29 und API 30 weiterhin reproduzierbar.
- [Fehlerkorrektur] Problem 243456582 „Android-Releases nach API 30 werden im Emulator auf Mac M1-Computern möglicherweise nicht richtig gestartet.“
32.1.13 (22. Mai 2023)
Getestet mit Android Studio Hedgehog Canary 2, Giraffe Beta 1 und Flamingo Stable.
- Unterstützung für AVDs für Pixel Fold und Pixel Tablet hinzugefügt.
- Verbesserung des gLinux-Absturzproblems.
- [Fehlerkorrektur] Problem 215231636 „Emulator mit API über API 30 funktioniert nicht auf Intel-Prozessor der 12. Generation“.
- [Fehlerkorrektur] Problem 275397905: Hohe Absturzrate im Android-Emulator M1, wenn der Cursor wiederholt in den Emulator und wieder heraus bewegt wird.
- Bekanntes Problem beim Starten von AVD, wenn ein Absturzbericht eines neueren Emulators vorhanden ist. Weitere Informationen finden Sie unter Fehlerbehebung für den Emulator.
32.1.12 (21. März 2023)
Getestet mit Android Studio Giraffe Canary 10, Flamingo RC und Electric Eel Patch 2.
- [Fehlerkorrektur] Problem 267647323: Das Netzwerk funktioniert nicht im Emulator, der über Android Studio gestartet wurde.
- [Fehlerkorrektur] Problem Nr. 268498686: Emulatorbildschirm flackert
- [Fehlerkorrektur] Problem #270034824: Die Emulatorleistung hat sich nach dem Update auf Version 33.1.1 verschlechtert.
- [Fehlerkorrektur] Problem #225541819: Beim Starten von Chrome stürzt der Emulator auf x86_64 ab.
- [Fehlerkorrektur] Problem #257097404: Der Emulator zeigt nach dem Aufwachen des Hosts nicht die richtige Zeit an.
- Absturzberichte für Apple M1-Geräte hinzufügen
32.1.11 (8. Februar 2023)
Getestet mit Android Studio Giraffe Canary 2, Flamingo Beta 1 und Electric Eel Patch 1.
- Optimierungen der Netzwerkgeschwindigkeit
- Mausunterstützung im eingebetteten Emulator
- Verbesserungen bei Virtio-snd
- Deaktivieren Sie die Verwendung von symbolischen Links beim Entpacken des Android-Emulators während der Installation.
- Absturz bei der Emulatorprüfung beheben
31.3.14 (13. Dezember 2022)
Getestet mit Android Studio Dolphin, Electric Eel RC1 und Flamingo Canary 9.
- [Fehlerkorrektur] Es wurden Fehler behoben, die beim Anmelden im Google Play Store zu Abstürzen von AVDs führten.
31.3.13 (27. Oktober 2022)
Getestet mit Android Studio Dolphin, Electric Eel Beta 2 und Flamingo Canary 5.
- [Fehlerkorrektur] Problem 249948338: Zeitzonenparameter funktioniert nicht
- [Fehlerkorrektur] Problem 249366543:Die Emulatoroption „-dns-server“ funktioniert nach API 31 nicht mehr.
31.3.12 (10. Oktober 2022)
Getestet mit Android Studio Dolphin und Electric Eel Beta 1.
Dieses Update enthält die folgenden Verbesserungen und Fehlerkorrekturen:
- [Fehlerkorrektur] Problem #247843000: Fehler bei der Verarbeitung relativer Pfade in AVD
- Laufwerkgröße für API 24 und höher erhöhen
31.3.11 (23. September 2022)
Getestet mit Android Studio Dolphin und Electric Eel Canary 10.
Dieses Update enthält die folgenden Verbesserungen und Fehlerkorrekturen:
- [Fehlerkorrektur] Absturz des eingebetteten Emulator-AVD im Fenster „Erweiterte Einstellungen“
- [Fehlerkorrektur] Problem #183139207:Audioprobleme im Zusammenhang mit der Aktivierung des Mikrofons durch den Emulator
- [Fehlerkorrektur] Problem #229764024:Fehler bei der Berührungserkennung auf AVD, der zu Problemen mit dem Verhalten der Benutzeroberfläche führt
- [Fehlerkorrektur] Fehler beim Starten von API 33-AVD auf Mac M1.
- [Fehlerkorrektur] Problem 243053479:Langsame Netzwerkgeschwindigkeit nach Aktualisierung des Emulators
- [Fehlerkorrektur] Problem #244617627:Maps-Standort funktioniert unter Windows und Linux nicht
- [Fehlerkorrektur] Problem 232971796:Die Schaltfläche „Gerät anrufen“ auf der Seite „Erweiterte Einstellungen“ > „Smartphone“ funktioniert nicht.
- Android Emulator auf minigbm aktualisieren
- Migration von Build-Skripts zu Python3
31.3.10 (18. August 2022)
Getestet mit Android Studio Dolphin Beta 5 und Electric Eel Canary 9.
Der Emulator kann jetzt eigenständig heruntergeladen werden. Wenn bei dieser neuesten stabilen Version Probleme oder Abstürze auftreten, melden Sie bitte einen Fehler und laden Sie eine zuvor funktionierende Version aus dem Emulator-Downloadarchiv herunter.
Dieses Update enthält die folgenden Verbesserungen und Fehlerkorrekturen:
- Bessere Unterstützung von Unicode-Pfaden unter Windows
- Bessere Handhabung des Herunterfahrens des Emulators, damit ein neuer Start desselben AVD erfolgreich sein kann.
- Aktualisiertes Design und Standardeinstellungen für faltbare AVDs
- Aktualisierte Wear-Emulator-Schaltflächen
- Verbesserungen beim gRPC-Audiostreaming
- Konsolenbefehl für Emulator mit anpassbarer Größe hinzugefügt
- Chrome-Fehlerbehebung für API 31
- [Fehlerkorrektur] Google-Kontoauthentifizierung mit GmsCore v21.42.18 fehlgeschlagen
31.2.10 (20. April 2022)
Getestet mit Android Studio Dolphin Canary 8 und Chipmunk RC 1.
Dieses Update enthält die folgenden Verbesserungen und Fehlerkorrekturen:
- Dienstprogramm zum Laden von Vulkan-Funktionen mit Fallbacks hinzufügen
- [Fehlerkorrektur] gcc8-Build-Fehler beheben
31.2.9 (23. März 2022)
Getestet mit Android Studio Dolphin Canary 7.
Dieses Update enthält die folgende Fehlerbehebung:
- [Fehlerkorrektur] Speicherbelastung beim Speichern von Snapshots auf M1 ignorieren
31.2.8 (7. Februar 2022)
Getestet mit Android Studio Bumblebee Patch 1 und Chipmunk Canary 6.
Dieses Update enthält die folgenden Verbesserungen und Fehlerkorrekturen:
- [Fehlerkorrektur] Anmeldung in den Apps nicht möglich
- [Fehlerkorrektur] Problem #215368358: „adb reboot“ auf der Intel-Plattform führt zum Absturz von avd mit „vcpu shutdown request“
31.2.7 (1. Februar 2022)
Getestet mit Android Studio Bumblebee Patch 1 und Chipmunk Canary 6.
Dieses Update enthält die folgende Fehlerkorrektur:
- [Fehlerkorrektur] Fehler beim Aufhängen des Emulators auf M1-Maschinen.
31.2.6 (20. Januar 2022)
Getestet mit Android Studio Arctic Fox, Bumblebee Beta 4 und Chipmunk Canary 6.
Dieses Update enthält die folgenden Verbesserungen und Fehlerkorrekturen:
- Dem Wear OS-Emulator wurden Wear-Tasten hinzugefügt.
- Alle Fahrzeugeigenschaften auf dem Tab „VHAL“ können jetzt bearbeitet werden.
- [Fehlerkorrektur] Die Google-Kontoauthentifizierung ist mit GmsCore, Version 21.42.18, fehlgeschlagen.
- [Fehlerkorrektur] Netshaper hat nicht gut mit VirtioWifi funktioniert.
- [Fehlerkorrektur] Der Konsolenbefehl „Event mouse“ hat nicht funktioniert.
- KVM-Prüfung für die lokale AVD-Erstellung hinzugefügt.
31.1.3 (18. Januar 2022)
Dieses Update enthält die folgenden Verbesserungen und Fehlerkorrekturen:
- Konsolenports für Fuchsia aktiviert.
- Beim Ändern der Größe eines Fensters, das sich über mehrere Displays erstreckt, wird die Ausrichtung ignoriert.
- WLAN: Unterstützung für das Herausfiltern von Unicast-Paketen basierend auf der MAT-MAC-Adresse hinzugefügt.
- WLAN: Absturz bei Verwendung von vmnet behoben.
30.9.5 (15. Dezember 2021)
Dieses Update enthält die folgenden Verbesserungen und Fehlerkorrekturen:
- Es wurde die Möglichkeit hinzugefügt, die Größe eines Fensters ganz einfach an die Größe eines Desktop- oder Tablet-Fensters anzupassen.
- Unterstützung für Multi-Touch-Eingaben von kompatiblen Hostgeräten hinzugefügt.
- VirtioWifi: Unterstützung für TAP-Netzwerk hinzugefügt.
- Drehknopf für Wear-System-Images aktiviert.
- Das Problem mit der gRPC-Audiokonfiguration wurde behoben.
- Die SensorReplay-Emulatorwiedergabe wurde aktualisiert, um Standard-Android-Sensoren zu unterstützen.
- Der Emulator wurde über USB mit USB-Passthrough mit Peripheriegeräten und Geräten verbunden.
30.4.5 (23. Februar 2021)
Dieses Update enthält die folgenden Verbesserungen und Fehlerkorrekturen:
- macOS: Probleme mit Verzerrungen bei der Audioeingabe wurden behoben.
- Unterstützung für virtio-vsock im Userspace hinzugefügt.
- Zukünftige System-Images verwenden virtio-console für logcat- und Kernel-Nachrichten.
- Vulkan-Rendering beschleunigen.
- Unterstützung für Snapshot-Debugging bei Testfehlern hinzugefügt.
- virtio-gpu: Definitionen wurden aktualisiert, um die neuesten Blob-Ressourcen-Enums zu unterstützen.
- Snapshot-Unterstützung für Grafiktransporte vom Typ „asg“ hinzugefügt.
- macOS: Unterstützung für das Erstellen mit macOS SDK 11.1 oder höher hinzugefügt.
- KVMclock ist auf neueren System-Images standardmäßig aktiviert.
- Unterstützung für einen Herzfrequenzsensor in Wear-Emulatoren hinzugefügt.
- Das Vulkan-Backend „libportability“ wurde entfernt.
- Unterstützung für weitere Funktionen im Modemsimulator hinzugefügt.
30.0.26 (16. August 2020)
Dieses Update enthält mehrere neue Funktionen, Verbesserungen an bestehenden Funktionen und Fehlerkorrekturen.
Unterstützung für faltbare Geräte mit virtuellem Scharniersensor und 3D-Ansicht
Unterstützung für Scharniersensoren für faltbare Geräte hinzugefügt. Dazu sind ein zukünftiges Android 11-System-Image und eine AVD-Konfiguration erforderlich. Die 3D-Ansicht für faltbare Geräte und die Scharnierparameter sind jetzt in die vorhandenen Voreinstellungen für faltbare Geräte integriert. Die folgenden Werte können beispielsweise mit der
config.ini-Datei des faltbaren AVD mit 7,3 Zoll verwendet werden: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=4Faltbare Geräte haben jetzt auch einen Untertypparameter. Das
config.ini-Attributhw.sensor.hinge.sub_type = hinge/foldist jetzt verfügbar. Weitere Informationen findest du im Blogpost Developing for Android 11 with the Android Emulator.Der Scharniersensor ist jetzt standardmäßig aktiviert.
Wenn ein faltbares Gerät konfiguriert ist, sendet der Emulator jetzt Updates für Scharnierwinkelsensoren und Änderungen der Position an den Gast. Bei vorhandenen faltbaren Geräten werden jetzt der Winkel des Scharniersensors und die Position aktualisiert, wenn die Schaltflächen zum Falten oder Entfalten in der Symbolleiste gedrückt werden.

Emulator für ARM64-Hosts
Der Quellcode des Linux-Emulators unterstützt jetzt die Cross-Kompilierung von x86_64- zu arm64-Hosts, sodass arm64-System-Images mit KVM-Virtualisierung ausgeführt werden können. Derzeit wird nur
-gpu swiftshader_indirect(Swiftshader arm64-Host-Rendering) unterstützt. Es kann jedoch auch ein kompatibler Satz von Host-GPU-libEGL/libGLESv2-Bibliotheken verwendet werden, indem lib64/gles_swiftshader durch diese ersetzt und dann mit-gpu swiftshader_indirectneu gestartet wird. Snapshots funktionieren möglicherweise auch nicht (fügen Sie-no-snapshotzur Befehlszeile hinzu). Anleitung: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_aarch64Die Unterstützung für Apple Silicon ist in Arbeit.
virtio-gpu-Unterstützung
- Unterstützung auf Hostseite für kommende kohärente Blob-Ressourcen von virtio-gpu-Hosts hinzugefügt.
- Aufgrund der Funktionsweise des Emulator-Renderings wird die virtio-gpu-virtqueue jetzt im vcpu-Thread verarbeitet, da das Rendering ohnehin auf andere Threads ausgelagert wird. Das virtio-gpu-Rendering wird in einer zukünftigen System-Image- und Emulatorversion aktiviert.
- In einem zukünftigen System-Image kann der Emulator alle Grafiken mit einem virtio-gpu-basierten Stack ausführen.
Weitere neue Funktionen und Verbesserungen
- USB-Passthrough ist jetzt unter Windows mit
-qemu -usb -device usb-host,vendorid=<usb-vendor-id>,productid=<usb-product-id>verfügbar. (Dies sollte auch unter Linux und macOS bereits funktionieren.) - WebRTC-Bibliotheken wurden auf M83 aktualisiert.
- Der Emulator unterstützt jetzt Audiostreaming in Containern über WebRTC.
- Der Darwinn-Pipe-Endpunkt wurde entfernt.
- Die CUDA-VPx-Decodierung für Videos ist jetzt über die Umgebungsvariable
ANDROID_EMU_MEDIA_DECODER_CUDA_VPX=1verfügbar, wenn die CUDA-VPx-Decodierung in der Hardware verfügbar ist. - Unter macOS sind SSE 4.1 und 4.2 jetzt im Android-Gast verfügbar.
- Unter macOS ist INVTSC jetzt standardmäßig aktiviert. Dies kann die Genauigkeit der Zeitmessungen des Gastes verbessern.
- Wir erfassen jetzt in den Messwerten, welcher erweiterte Steuerungsbereich vom Nutzer ausgewählt wurde.
- Der Linux-Emulator verwendet jetzt die paravirtualisierte KVM-Uhr, wenn die Gast-Kernel-Version >= 5.4 ist (R-System-Images oder höher).
- Der Emulator verwendet jetzt LZ4, um Gastkernel zu dekomprimieren, sodass er mit der modernen Kernel-Pipeline kompatibel ist.
Konsolenbefehle hinzugefügt, um das AVD-Verzeichnis des Emulators, den Pfad der Discovery-Datei im in Studio eingebetteten Anwendungsfall und den Pfad zu Snapshots abzurufen:
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>
Damit ihr vertikalen Platz auf dem Bildschirm sparen könnt, haben wir unter Erweiterte Einstellungen > Einstellungen eine Option hinzugefügt, mit der ihr den Geräterahmen für das aktuelle AVD ausblenden könnt. Wenn Sie Geräterahmen für alle AVDs global ausblenden möchten, können Sie das Funktions-Flag
NoDeviceFrameverwenden. Sie können es aktivieren, indem Sie den Emulator über die Befehlszeile mit-feature NoDevicestarten. Wenn Sie es dauerhaft aktivieren möchten, fügen SieNoDeviceFrame = onzu~/.android/advancedFeatures.inihinzu. Erstellen Sie diese Datei, falls sie noch nicht vorhanden ist.Auf der Seite „Mobilfunk“ wurde ein Drop-down-Element hinzugefügt, mit dem die Unterstützung für getaktete Verbindungen aktiviert und deaktiviert werden kann. Dies hat keine Auswirkungen auf ältere System-Images, die die Ein-/Aus-Schaltfläche für getaktete 5G-Verbindungen nicht unterstützen.
- Außerdem wurde ein Konsolenbefehl für denselben Zweck hinzugefügt:
gsm meter on|off
- Außerdem wurde ein Konsolenbefehl für denselben Zweck hinzugefügt:
Toolchain / Build auf C++17 aktualisiert.
Fehlerbehebungen: eingebetteter Emulator
- Die Zwischenablage sollte jetzt funktionieren.
- Ein Problem wurde behoben, durch das Großbuchstaben im Emulator als Kleinbuchstaben ausgegeben wurden.
- Das Laden des Konsolentokens aus einem Unicode-Pfad in Windows wurde korrigiert.
- Fehlermeldung
SO_REUSEPORTunter Linux behoben. - Ein Problem mit der Beschädigung von Snapshots wurde behoben, das beim Senden von Snapshot-Befehlen über gRPC sowie beim Drücken der Schaltfläche zum Speichern von Snapshots im eingebetteten Emulator von Android Studio auftrat.
Wenn Sie den in Studio eingebetteten Linux-Emulator über Chrome Remote Desktop verwenden, kann es zu einem Fehler kommen, bei dem
XDG_RUNTIME_DIRnicht festgelegt wird. Dies kann dazu führen, dass der eingebettete Emulator nicht angezeigt wird, da die Emulator-Erkennungsdateien inXDG_RUNTIME_DIRabgelegt werden. Den Status des entsprechenden Problems können Sie im Chrome Issue Tracker prüfen.Als Behelfslösung greift der Emulator jetzt auf Discovery-Dateien in einem möglicherweise anderen Verzeichnis zurück, das auf der Nutzer-UID basiert:
/run/user/<uid>.Eingebetteter Emulator: Bei Geräten mit abgerundeten Ecken/Notches wird das Layout jetzt richtig geändert, um Platz für die Ecken und die Notch zu schaffen. Dazu ist ein Kaltstart dieser Emulatoren erforderlich.
Der gRPC-Endpunkt unterstützt jetzt das Senden von SMS an das Gerät.
Allgemeine Fehlerbehebungen
- Bei der Ausführung des Windows-Emulators mit aktivem Riot Vanguard sind Kompatibilitätsprobleme aufgetreten. Der Windows-Emulator erkennt jetzt das Anti-Cheat-System Vanguard und zeigt eine Warnmeldung an, wenn Vanguard erkannt wird.
- Der Fehler
FD_SETSIZEunter Windows wurde behoben. Wir verwenden jetztWSAEventSelect()anstelle vonselect(), um nicht blockierende Verbindungen zu Loopback-Servern herzustellen. - Unterstützung für das F16C-CPUID-Feature im Linux-Emulator hinzugefügt, um Probleme beim Ausführen einiger ARM64-Anwendungen über die NDK-Übersetzung zu beheben; macOS/Windows in Bearbeitung.
- Die Wiedergabe von GPX-/KML-Routen folgt jetzt den Zeitstempeln.
- Das Problem mit dem hüpfenden Symbol beim Start unter macOS wurde behoben.
- Wenn
hw.audioInput=noundhw.audioOutput=noinconfig.ini, ist das Emulator-Audio jetzt ordnungsgemäß deaktiviert. - Ein Problem wurde behoben, bei dem das Fenster mit den erweiterten Einstellungen weiterhin angezeigt wurde, wenn die Größe des Emulatorfensters geändert wurde, wenn das Emulatorfenster minimiert war, während das Fenster mit den erweiterten Einstellungen geöffnet, aber nicht aktiv war. In einem zukünftigen Update wird das Verhalten (der Fall mit aktivem Fenster für erweiterte Einstellungen) vollständig entfernt.
- Ein Fehler wurde behoben, bei dem das WLAN beim Start des Emulators nicht verbunden war.
- Ein Problem wurde behoben, bei dem der Emulator beim Beenden hängen blieb, wenn er Shell-Befehle mit langen oder unbegrenzten Zeitlimits ausgab.
- pc-bios wurde aktualisiert, um große Images, die an
-initrdübergeben werden, besser zu unterstützen. Das vorherige BIOS hat eine sehr ineffiziente Methode verwendet. - Absturz während der Beendigung behoben, wenn die Option
-wifi-server-portverwendet wird. - Der Emulator gibt jetzt eine Warnung aus, wenn nicht unterstützte Optionen an
-propübergeben werden. Es werden nur qemu.*-Attribute unterstützt. - Beim Erstellen des Emulators unter Windows sollte die Wahrscheinlichkeit von unregelmäßigen Fehlern beim Schreiben in Dateien geringer sein. Weitere Informationen finden Sie in der Build-Anleitung für Windows.
- Die Zoom-Schaltfläche für faltbare AVDs wurde deaktiviert, da sie Probleme verursacht hat.
- Der Emulator meldet jetzt die Bootzeit nach einem Geräteneustart korrekt.
- Linux: Wenn die KVM-Berechtigungen nicht ausreichen, gibt der Emulator jetzt schneller Debugging-Anweisungen aus.
- Ein Problem wurde behoben, durch das der Emulator aktuelle System-Images ohne Beschleunigung nicht starten konnte.
- Es wurde ein Problem mit Speicherbeschädigung oder Absturz beim Start durch einen Detektor für abgeschlossene Bootvorgänge behoben.
- Ein Speicherleck bei langen Bildschirmaufzeichnungen wurde behoben.
- Emulator-Symbole wurden aktualisiert, um das Branding von Studio 4.1 widerzuspiegeln.
- Die Erkennung von Remote-Sitzungen unter Windows wurde verbessert.
Fehlerbehebungen: Grafik- und Videodecodierung
- Ein Problem wurde behoben, bei dem das neueste Asphalt 9-Spiel mit einem schwarzen Bildschirm gerendert wurde.
- Spam zum Leeren des zugeordneten Puffers mit
NULLwurde entfernt. - Eine Race-Bedingung beim Beenden des Vulkan-Status wurde behoben, wenn eine Vulkan-Gast-App beendet wurde.
- Vulkan-ASTC/ETC2-Emulations-Shader sind jetzt in die libOpenglRender-Bibliothek eingebunden. Das ist zuverlässiger als das Lesen aus dem Dateisystem.
- Es wurde ein Problem in Vulkan behoben, bei dem
vkGetImageMemoryRequirements2KHRdas FeldpNextder zurückgegebenen StrukturVkMemoryRequirements2fälschlicherweise löschte, wenn eine Vulkan 1.0-Instanz auf dem Host ausgeführt wurde. - Ein Speicherleck im Vulkan-Renderer wurde behoben.
- Es wurde eine kürzlich aufgetretene Regression behoben, bei der GLSL ES 1.00-Shader mit Variablennamen wie
isampler2Dnicht kompiliert werden konnten. - Der ANGLE-Shader-Übersetzer wurde aktualisiert und enthält verschiedene Fehlerkorrekturen, die mögliche Fehler beim Kompilieren von Shadern unter Linux beheben.
- Der Emulator stürzt jetzt ab, wenn der grundlegende Framebuffer-Blit-Shader nicht kompiliert werden kann, um das Phänomen im Auge zu behalten.
- Der ANGLE-Shader-Übersetzer wurde aktualisiert, um mit dem Upstream-ANGLE Schritt zu halten. Dadurch wurde ein Problem mit Speicherbeschädigungen beim Übersetzen und Constant Folding von OpenGL ES-Shadern behoben, die nicht quadratische Matrizen verwendeten. Der Shader-Übersetzer ist jetzt eine separate gemeinsam genutzte Bibliothek,
libshadertranslator.dll. - Es wurde ein Problem bei der Vulkan-Initialisierung auf einigen GPU-Treibern behoben, bei dem bestimmte 1.1-Gerätefunktionen nicht gefunden wurden.
- Vulkan: Wir verwenden wieder den vordefinierten Loader, da die Bevorzugung des System-Vulkan-Loaders bei einigen Setups Probleme verursacht hat. Wir werden eine bessere Lösung finden.
- Es wurde ein Problem behoben, bei dem bei der Verwendung des externen Vulkan-Arbeitsspeichers nicht übereinstimmende Arbeitsspeichertyp-Indizes auf dem Host importiert werden konnten.
- Ein Problem bei der Emulation von
GL_ALIASED_POINT_SIZE_RANGEwurde behoben, bei dem das Enum auf dem Host nicht unterstützt wurde. - Es wurde ein Problem behoben, bei dem Skia-Shader auf einigen Host-GPUs aufgrund von Fehlern im Zusammenhang mit
GL_EXT_shader_framebuffer_fetchnicht kompiliert werden konnten. - Da unsere Kopie des D3D9-ANGLE-Renderers vor einigen Versionen entfernt wurde, werden Nutzer, die diesen Renderer verwendet haben, jetzt automatisch auf d3d11 ANGLE umgestellt, wenn er in den UI-Einstellungen ausgewählt wurde.
- Der WGL-Initialisierung unter Windows wurden weitere Informationen zur Fehlerbehebung hinzugefügt, um Fehler nachverfolgen zu können.
- Wenn
hw.gltransport=virtio-gpu-pipe, wird die Leistung verbessert, da bei Übertragungen vom Host zum Gast nicht auf dem Host gespinnt wird. - Es wurden weitere Debugging-Logs für den Fall hinzugefügt, dass die OpenGLES-Emulation nicht initialisiert werden kann.
- Ein Problem wurde behoben, bei dem YouTube-Videos flackerten oder beim Laden des Snapshots nicht angezeigt wurden.
- Wir haben vorerst wieder auf die Software-Decodierung für libvpx umgestellt, da wir Probleme mit der CUDA-Hardware-Decodierung von libvpx festgestellt haben. Wenn Sie auf der Hostseite eine unterstützte CUDA-Hardware-Decodierungsimplementierung haben, kann die Hardware-Decodierung von libvpx über die Umgebungsvariable
ANDROID_EMU_MEDIA_DECODER_CUDA_VPX=1wieder aktiviert werden.
30.0.10 (30. April 2020)
Dieses Update enthält Unterstützung für die Ausführung des Emulators direkt in Android Studio und für virtuelle Geräte mit standardmäßig aktiviertem Freiform-Fenstermodus.
Emulator in Android Studio ausführen
Der Android-Emulator kann jetzt direkt in Android Studio ausgeführt werden. Mit dieser Funktion können Sie Platz auf dem Bildschirm sparen, mit Hotkeys schnell zwischen dem Emulator und dem Editorfenster wechseln und Ihren IDE- und Emulator-Workflow in einem einzigen Anwendungsfenster organisieren.
Freeform-Fenstermodus
Du kannst jetzt ein AVD mit aktiviertem Freeform-Fenstermodus erstellen, indem du beim Erstellen eines virtuellen Geräts in Android Studio das Hardwareprofil „13,5" Freeform Tablet“ auswählst. Für dieses Hardwareprofil ist ein System-Image mit Android 11 Entwicklervorschau 3 oder höher erforderlich.
Bekannte Probleme
Die Größenänderung von Freiform-Fenstern ist derzeit aufgrund von Problemen bei der Übertragung des Fokus auf den Window Manager nicht möglich. Dieses Problem wird in einer zukünftigen Version des Android 11-System-Images behoben.
30.0.0 (19. Februar 2020)
Dieses Update enthält Android 11-System-Images (API-Level 30) und bietet eine verbesserte Leistung beim Ausführen von ARM-Binärdateien.
Android 11-System-Images
Sie können jetzt ein AVD mit Android 11 erstellen, indem Sie eines der verfügbaren System-Images mit API-Level 30 auswählen:
- x86: Enthält sowohl x86- als auch ARMv7-ABIs.
- x86_64: Enthält x86-, x86_64-, ARMv7- und ARM64-ABIs.
Unterstützung für ARM-Binärdateien auf Android 9- und Android 11-System-Images
Wenn ihr den Android Emulator bisher nicht verwenden konntet, weil eure App von ARM-Binärdateien abhängig war, könnt ihr jetzt das Android 9-x86-System-Image oder ein beliebiges Android 11-System-Image verwenden, um eure App auszuführen. Es ist nicht mehr erforderlich, ein bestimmtes System-Image herunterzuladen, um ARM-Binärdateien auszuführen. Diese Android 9- und Android 11-System-Images unterstützen ARM standardmäßig und bieten im Vergleich zu Images mit vollständiger ARM-Emulation eine deutlich bessere Leistung.
Bekannte Probleme
- Einige ARMv7-Binärdateien können nicht auf Android 11-x86- und -x86_64-System-Images ausgeführt werden. Wenn du Android 11 als Zielplattform verwendest, solltest du für ARM64 entwickeln.
29.0.11 (29. Mai 2019)
Dieses Update enthält die folgenden Verbesserungen und Fehlerkorrekturen:
- Windows: Der Emulator verwendet jetzt die von uns bereitgestellte
libgcc-DLL, anstatt statisch mitlibgcckompiliert zu werden. - Linux: Logcat-Unterstützung wurde der gRPC API hinzugefügt. Weitere Informationen zu gRPC finden Sie unter gRPC-Streaming-Emulator (Linux).
- Der Emulator enthält jetzt einen Headless-Build für 32-Bit-x86-Gäste (
qemu-system-i386). Mit dieser Funktion können x86-32-Bit-Images für API-Level 26 und niedriger mit dem Headless-Build ausgeführt werden. Beachten Sie, dass der Emulator für 32-Bit-x86-Gäste mit API 27 und höher die 64-Bit-Engine (qemu-system-x86_64) verwendet, da in diesen System-Images der Userspace 32-Bit, der Kernel jedoch 64-Bit ist. Android Studio verwendet den Kernel, um Emulations-Engines auszuwählen. - Sie können jetzt benutzerdefinierte Qt-Bibliothekspfade mit der Umgebungsvariablen
ANDROID_QT_LIB_PATHangeben. - Sie können den Emulator jetzt mit früheren Binärdateien ausführen, die QEMU1 verwenden, wenn die ausführbaren QEMU1-Dateien (
emulator[64]-[x86|arm|etc]) im Emulatorverzeichnis abgelegt sind. - Windows: Es wurde ein Problem behoben, das manchmal dazu führen konnte, dass der Emulator nicht mit der Meldung „vCPU shutdown request“ (vCPU-Herunterfahranfrage) gestartet wurde.
- Ein Problem mit einer unnötigen Pipeline-Barriere in emulierten komprimierten Texturen in Vulkan wurde behoben.
- Es wurde ein Fehler behoben, der bei HTTP-Proxy-Anfragen auftrat, wenn die blockweise Übertragungscodierung verwendet wurde. Weitere Informationen finden Sie in den Commit-Details.
29.0.9 (7. Mai 2019)
Dieses Update enthält die folgende Fehlerkorrektur:
- Windows: Es wurde ein Problem behoben, bei dem die virtuelle Szenenkamera und die Webcam im Emulator nicht funktionierten.
29.0.8 (6. Mai 2019)
Dieses Update enthält die folgenden Verbesserungen und Fehlerkorrekturen:
- Unterstützung für mehrere virtuelle Hardwareanzeigen hinzugefügt, wenn ein Gastdienst vorhanden ist, um jede Anzeige aufzulisten und festzulegen. Mehrere virtuelle Hardwaredisplays werden in einem zukünftigen Update des Emulator-System-Images enthalten sein.
- Eine neue Befehlszeilenoption wurde hinzugefügt:
-delay-adb. Mit dieser Option wird die Verarbeitung von ADB-Paketen unterdrückt, bis der Gast vollständig gestartet wurde (nach einem Kaltstart). Mit dieser Option können Sie Probleme beheben, die auftreten können, wenn Sie den Emulator in einer CI-Umgebung verwenden, die den Emulator neu startet und gleichzeitig DDMS verwendet. - Es wurde ein Fehler behoben, der beim Laden von Snapshots auftrat, bei dem
glIsRenderbufferden falschen Wert zurückgab. - Einige Probleme mit veralteten Status beim Neustart des Android-Gasts wurden behoben.
- Windows: Es wurden Probleme behoben, die den Start des Emulators verhinderten, wenn der Windows-Nutzername Nicht-ASCII-Zeichen oder Leerzeichen enthielt.
Bekannte Probleme
- Die Snapshot-Benutzeroberfläche ist für Automotive-System-Images deaktiviert, da Snapshots für diese System-Images derzeit nicht unterstützt werden.
29.0.6 (1. Mai 2019)
Dieses Update enthält mehrere neue Funktionen, Verbesserungen an bestehenden Funktionen und Fehlerkorrekturen.
Entfernung der Unterstützung für QEMU1 und 32-Bit-Windows
Zur besseren Wartung des Emulators werden QEMU1- und 32-Bit-Windows-Binärdateien nicht mehr ausgeliefert. Wenn Sie Windows 32-Bit verwenden, können Sie kein Upgrade auf Version 29.0.6 durchführen.
Anforderungen an Android Q-System-Images
Wenn Sie ein AVD ausführen möchten, das ein Android Q-System-Image verwendet, müssen Sie jetzt die Version 29.0.6 (diese Release-Version) oder höher verwenden.
Verbesserungen im Rahmen von Project Marble
Dieses Update ist eine Fortsetzung unserer Arbeit an der Initiative Project Marble, die im November 2018 auf dem Android Developer Summit angekündigt wurde. Weitere Informationen zu anderen Verbesserungen von Project Marble in früheren Versionen finden Sie unter Android Emulator: Project Marble Improvements.
Bei diesem Update haben wir uns im Rahmen von Project Marble vor allem darauf konzentriert, die Ressourcennutzung des Emulators zu reduzieren, z. B. die CPU-Auslastung des Emulators im inaktiven Zustand. Außerdem haben wir Änderungen vorgenommen, die die Arbeit mit dem Emulator in einer größeren Vielfalt von Umgebungen erleichtern, und allgemeine Qualitätsprobleme behoben.
In den folgenden Abschnitten werden die Verbesserungen von Project Marble beschrieben, die in diesem Update enthalten sind:
Verbesserungen beim Audioverhalten des Hosts
Ab Version 28.0.3 blockiert der Emulator standardmäßig die Audioeingabe vom Host.
Wenn Sie die Host-Audiodaten verwenden möchten, können Sie diese Option unter Erweiterte Einstellungen > Mikrofon aktivieren. Aktivieren Sie dazu Virtuelles Mikrofon verwendet Host-Audioeingang. Diese Option wird automatisch deaktiviert, wenn der Emulator neu gestartet wird.
Wenn Sie die Befehlszeile verwenden, können Sie Host-Audio auch mit der Option -allow-host-audio aktivieren. Mit den folgenden ADB-Befehlen können Sie Host-Audiodaten aktivieren bzw. deaktivieren:
adb emu avd hostmiconadb emu avd hostmicoff
Verbesserungen für monitorlose Emulator-Builds
Ab Version 28.0.25 enthält der Emulator eine Build-Option ohne Benutzeroberfläche, die ohne Benutzeroberfläche ausgeführt werden kann. Mit monitorlosen Builds können Sie den Emulator für Docker- und CI-Workflows (Continuous Integration) einrichten.
Mit diesem Update haben wir weitere Verbesserungen vorgenommen, damit der Emulator mit einer minimalen Anzahl von Abhängigkeiten ausgeführt werden kann. Unter Linux enthalten Headless-Builds nicht mehr die Bibliotheken pulseaudio oder libX11. Die systemabhängigen gemeinsam genutzten Bibliotheken, die nicht im Emulator enthalten sind, wurden auf die folgende Liste reduziert:
Linux-vdso.so.1Libutil.so.1Libm.so.6Libdl.so.2Librt.so.1Libpthread.so.0Libgcc_s.so.1Libc.so.6ld-linux-x86-64.so.2
Upgrade der Qt-UI-Bibliotheken auf 5.12 LTS
Dieses Update enthält die folgenden Verbesserungen aus dem Qt 5.12 LTS-Release:
- Um Abstürze bei der
libpng-Decodierung von Qt beim Starten bestimmter System-Images zu vermeiden, verwendet der Emulator jetzt eine eigene Kopie vonlibpng, um PNG-Bilder zu decodieren. - Um Probleme mit einigen Linux-Installationen zu beheben, die inkompatible Versionen einiger Qt-abhängiger Bibliotheken enthalten, werden jetzt
libfreetype,libsoftokn,libsqlite3undlibxkbcommonmit dem Emulator verpackt. - Der Emulator verwendet jetzt die nativen Fensterbibliotheken der Plattform, um die Monitorabmessungen abzurufen, anstatt die Qt-Bibliotheken zu verwenden, die unzuverlässige Ergebnisse zurückgegeben haben.
Automatische CPU-Optimierungen nach dem Kaltstart
Um die CPU-Auslastung zu reduzieren, führt der Emulator jetzt nach einem Kaltstart die folgenden ADB-Befehle aus, nachdem er ein boot complete-Signal empfangen hat:
adb shell settings put screen_off_timeout 214783647- Mit diesem Befehl wird das Zeitlimit für das automatische Ausschalten des Displays erhöht, sodass der Emulator im Akkumodus ohne Aufladen verwendet werden kann. Im Akkumodus wird die CPU-Auslastung im Hintergrund stark reduziert.
- Im AC-Lademodus können GMSCore-Hintergrundvorgänge wie App-Updates alle CPU-Kerne des Geräts und damit auch das Gerät des Nutzers ohne Vorwarnung übernehmen.
adb shell pm revoke com.google.android.googlequicksearchbox android.permission.RECORD_AUDIO- Mit diesem Befehl werden die Mikrofonberechtigungen für die Google Suche-App widerrufen. Dadurch wird die CPU-Auslastung im Hintergrund auf dem Startbildschirm und im Launcher erheblich reduziert, wenn die Google Suche-App aktiv ist.
- Dieser Befehl wird zusätzlich zum Standardverhalten des Emulators ausgeführt, bei dem Host-Audio für den Host deaktiviert wird. Außerdem wird dadurch automatisch die CPU-Auslastung reduziert, wie für die Hotword-Erkennung in Version 28.0.23 beschrieben.
Neue Umgebungsvariablen für das Leistungsmonitoring
Sie können jetzt zwei neue Umgebungsvariablen verwenden, um ein detailliertes Monitoring der Leistung und Ressourcennutzung des Emulators zu ermöglichen.
SHOW_PERF_STATS=1- Mit dieser Umgebungsvariablen können Sie sowohl die CPU- als auch die RAM-Nutzung im Blick behalten. Beim Tracking der RAM-Nutzung wird zwischen der Grafiknutzung und dem gesamten residenten Arbeitsspeicher unterschieden.
ANDROID_EMU_TRACING=1- Diese Umgebungsvariable ermöglicht das Drucken, wenn ein Eingabe- oder Grafikvorgang lange dauert (länger als 1 ms).
- Wir verwenden diese Umgebungsvariable auch, um Probleme zu diagnostizieren, die bei Windows-Nutzern zu mehr Ruckeln (Frame-Drops) führen als bei Nutzern unter macOS oder Linux.
Allgemeine Verbesserungen im Rahmen von Project Marble
Dieses Update enthält außerdem die folgenden allgemeinen Verbesserungen, die Teil der Project Marble-Initiative sind:
- Sie können jetzt alle vCPUs im Emulator mit den folgenden Konsolenbefehlen sofort pausieren:
adb emu avd pauseadb emu avd resume
- Deutlich reduzierter Overhead beim Zeichnen mit OpenGL. Durch diese Verbesserung wird die CPU-Auslastung reduziert, während der Emulator Animationen abspielt.
- Die Unterstützung für das virtuelle Netzwerkgerät e1000 von Mainline-QEMU wurde wiederhergestellt. Sie können dieses Gerät verwenden, um den Emulator in einer überbrückten Netzwerkumgebung einzurichten. In einer überbrückten Netzwerkumgebung wird der Emulator im Hostnetzwerk und das Hostnetzwerk im Emulator angezeigt.
- Zum Starten des Emulators werden jetzt für QEMU 2.12 geeignete BIOS-Binärdateien verwendet.
- Die
ffmpeg-Version wurde für die Videocodierung und ‑decodierung auf 3.4.5 aktualisiert. - Der Overhead der QEMU-Hauptschleifen-E/A unter macOS wurde erheblich reduziert, indem die auf
select()basierende Hauptschleife durch eine aufkqueuebasierende Hauptschleife ersetzt wurde. - Die Logcat-Puffergröße wurde auf 2 MB erhöht, um Probleme mit unerwarteten EOF-Fehlern beim Ausführen von Logcat mit dem Emulator zu beheben.
- Der Emulator exportiert jetzt standardmäßig die Umgebungsvariable
LC_ALL=C. Mit dieser Änderung werden Abstürze und Inkompatibilitätsprobleme behoben, die beim Ausführen des Emulators in verschiedenen Sprachen auftreten. - Sie können jetzt die CPU- und RAM-Nutzung des Emulators mithilfe von Leistungsstatistiken verfolgen, die Sie unter Erweiterte Einstellungen > Einstellungen > Erweitert > Leistungsstatistiken aufrufen können. Anhand dieser Statistiken können Sie Probleme schnell diagnostizieren, wenn der Emulator zu viel CPU oder RAM zu verwenden scheint.
glReadPixels GL_IMPLEMENTATION_COLOR_READ_TYPEverwendet jetzt das Ergebnis der Host-GPU anstelle eines emulierten Ergebnisses. Mit dieser Änderung werden Probleme behoben, bei denen Bilder und Assets aufgrund eines falschen Formats für das Zurücklesen nicht angezeigt werden.- Unterstützung für die OpenGL ES-Erweiterungen
GL_EXT_texture_format_BGRA8888undGL_APPLE_texture_format_BGRA8888hinzugefügt, wenn diese Erweiterungen vom Host unterstützt werden. - Der Fehlerbericht-Benutzeroberfläche wurden weitere Diagnoseinformationen hinzugefügt. Außerdem können Sie mit den folgenden Befehlen über die Konsole auf Fehlerberichte zugreifen:
telnet localhost 5554avd bugreport
- Bei Android Q-System-Images erhöht der Emulator die Mindest-RAM-Größe auf 2 GB.
- Es wurden mehr Logging- und Druckfunktionen hinzugefügt, wenn OpenGL oder der Hypervisor nicht initialisiert werden kann.
- Wenn der Emulator keine gleichzeitige
-read-only-Instanz einer AVD starten kann, versucht er jetzt, die-read-only-AVD innerhalb von 3 Sekunden noch dreimal neu zu starten. Diese Änderung erhöht die Wahrscheinlichkeit, dass der Emulator gleichzeitige-read-only-Instanzen eines AVD starten kann, wenn andere beschreibbare Instanzen dieses AVD noch nicht mit dem Bereinigen veralteter Dateien fertig sind. - Für zukünftige System-Images unterstützt der Emulator jetzt Hardware Composer 2.0. Durch diese Änderung sollte der Treiber-Overhead beim Ausführen der meisten Animationen verringert werden.
- Der Emulator-Build basiert jetzt auf CMake/Ninja.
- In der Benutzeroberfläche für erweiterte Steuerelemente des Emulators wurden die Trennlinien in der Tabelle mit den Tastenkombinationen wiederhergestellt.
- Nutzer können jetzt zustimmen, dass unserem Team CPU- und RAM-Nutzungsmesswerte in einem Intervall von 10 Sekunden zur Verfügung gestellt werden. Wir verwenden diese Messwerte, um unsere Daten zur Ressourcennutzung des Emulators mit verschiedenen Anwendungsfällen unserer Nutzer anzureichern. So können wir den Emulator effizienter und reaktionsschneller machen.
Allgemeine Fehlerbehebungen für Project Marble
Dieses Update enthält außerdem die folgenden allgemeinen Fehlerkorrekturen, die Teil der Project Marble-Initiative sind:
- Probleme mit Ruckeln und falschen Frames, die auf Systemen mit Intel-GPUs bei Verwendung von Android Q-System-Images angezeigt wurden, wurden behoben.
- Es wurden Probleme behoben, bei denen ein schwarzer Bildschirm angezeigt wurde, wenn Android Q-System-Images mit Pixel 2 XL-Skins (oder anderen Skins mit einer Notch oder abgerundeten Ecken) verwendet wurden.
- Ein Problem wurde behoben, bei dem die Befehlszeilenoption
-partition-sizedie Größe der Datenpartition nicht festlegte. - Es wurde ein Problem behoben, bei dem pulseaudio im Linx-Emulator in einigen Situationen einen ganzen CPU-Kern belegte.
- Probleme mit unzulässigem Speicherzugriff bei der Verarbeitung komprimierter Texturen wurden behoben.
- Es wurden GL-Fehler behoben, die beim Aktualisieren bestimmter Gralloc-Zwischenspeicher (mit dem Format RGB 565, RGB10A2, RGB(A)16F) auf dem Host in
glTexSubImage2Daufgetreten sind. - Es wurde ein Anzeigefehler in Android Q-System-Images mit Snapshots behoben, bei dem die Geometrie der Benachrichtigungsleiste mit einer falschen Einstellung für den Instanzdivisor gerendert wurde.
- Es wurden einige schwer reproduzierbare Absturz- und Einfrierprobleme beim Start behoben, die auftraten, weil Qt beim Start Signale verlor oder instabile, inkonsistente Zustände aufwies.
- Zahlreiche Nebenläufigkeitsprobleme wurden behoben. Wir können den Linux-Emulator jetzt mit ThreadSanitizer (TSAN) erstellen, wodurch sich Fehler, die sonst schwer zu reproduzieren sind, leicht finden lassen.
- Für Linux-Nutzer: Wir haben festgestellt, dass der Android-Gastkernel auf bestimmten Host-Kerneln mit einem allgemeinen Hardwarefehler in KVM beendet werden kann. Der Emulator wird jetzt
abort(), wenn dies geschieht, um die Fehlerbehebung zu verbessern (zuvor ist der Emulator einfach hängen geblieben). - Für Linux-Nutzer: Zur Vereinfachung von CI-Einrichtungen können Sie die neue Befehlszeilenoption
-stdouterr-file <file-name>verwenden, um sowohlstdoutals auchstderrin eine Datei umzuleiten. - Ein Problem wurde behoben, bei dem
SO_REUSEADDRfälschlicherweise verwendet wurde. Weitere Informationen finden Sie in den Commit-Details. - Ein langjähriges Problem mit dem Windows-Emulator wurde behoben, bei dem Unterprozesse wie ADB-Befehle nicht gestartet werden konnten, wenn der Nutzername Leerzeichen enthielt.
- Es wurde ein Problem mit der fehlenden Initialisierung von RCU in HAXM-vCPU-Threads behoben. Diese Korrektur kann möglicherweise einige Abstürze und Race-Bedingungen beheben.
- Es wurde ein Absturz behoben, der bei bestimmten Mustern zum Speichern und Laden von Snapshots über die Snapshot-Benutzeroberfläche mit aktuellen Android Q-System-Images auftrat.
- Es wurde ein Problem behoben, bei dem die virtuelle Szenenkamera leer war, wenn der Emulator von einem Snapshot initialisiert wurde, falls ein AR-Makro abgespielt wurde, als dieser Snapshot gespeichert wurde.
- Ein Problem wurde behoben, bei dem einige Nutzer mit Remote-Desktop-Konfigurationen beim Starten des Emulators unter Linux einen schwarzen Bildschirm erhielten. Um dies zu vermeiden, konfiguriert der Emulator jetzt explizit
MESA_RGB_VISUAL. Weitere Informationen finden Sie in den Commit-Details. - Es wurde ein Problem behoben, bei dem die Schaltflächen zum Drehen auf TV-AVDs angezeigt wurden.
- Es wurde ein Problem behoben, bei dem das Fenster mit den erweiterten Steuerelementen jedes Mal angezeigt wurde, wenn der Emulator gedreht wurde, wenn der Emulator auf „Immer im Vordergrund“ festgelegt war.
Hardwareprofile für faltbare Geräte
Der Emulator enthält jetzt Hardwareprofile für faltbare Geräte. Wenn du diese neuen Hardwareprofile verwenden möchtest, musst du Android Studio 3.5 Canary 10 oder höher verwenden.
Es gibt zwei Hardwareprofile für faltbare Geräte, mit denen Sie ein AVD erstellen können:
- 7,3" Foldable: 1536 × 2152 aufgeklappt, 4,6" 840 × 1960 zugeklappt
- 8" Foldable: 2200 × 2480 aufgeklappt, 6,6" 1480 × 2480 zugeklappt
Wenn Sie den Emulator mit einem dieser Hardwareprofile ausführen, können Sie das Gerät mit den Aktionen zum Auf- und Zuklappen in der Emulator-Symbolleiste, mit Konsolenbefehlen oder mit den folgenden Tastenkombinationen auf- und zuklappen:
- Minimieren:
Ctrl + F(Command + Funter macOS) - Maximieren:
Ctrl + U(Command + Uunter macOS)
AR-Makros
Der Emulator enthält jetzt AR-Makros, mit denen Sie gängige AR-Aktionen testen können. Du kannst beispielsweise ein Makro verwenden, um alle Sensoren des Geräts auf den Standardzustand zurückzusetzen.
Weitere Informationen finden Sie unter Häufige AR-Aktionen mit Makros testen.
Vulkan-Unterstützung (Windows, Linux)
Windows- und Linux-Nutzer können jetzt Vulkan-Apps mit dem Android-Emulator bis Vulkan 1.1 testen, wenn sie ein kompatibles System-Image (Android Q Beta 3 oder höher für Vulkan 1.1, Android Q Beta 2 für Vulkan 1.0) und eine kompatible Host-GPU verwenden (dies umfasst die meisten Intel-, NVIDIA- und AMD-GPUs ab 2014).
Wenn Sie die Vulkan-Unterstützung aktivieren möchten, müssen Sie der Datei ~/.android/advancedFeatures.ini die folgenden Funktions-Flags hinzufügen. Erstellen Sie die Datei, falls sie nicht vorhanden ist:
Vulkan = onGLDirectMem = on
Erste Unterstützung für ROM-Entwickler
ROM-Entwickler, die die Ziele sdk_phone_x86 oder sdk_phone_x86_64 (Varianten userdebug, eng) im AOSP-Zweig master erstellen, können jetzt einen Vulkan-fähigen Emulator ausführen.
Diese Unterstützung befindet sich noch in der Testphase und ist hauptsächlich für Entwickler gedacht, die an System-Images, Treibern und Game-Engines arbeiten. Viele Erweiterungen fehlen noch.
HOST_COHERENT-Speicher wird jedoch unterstützt und Sie sollten jetzt die Vulkan API-Anleitungsbeispiele ausführen können.
Wenn Sie Linux verwenden, können Sie dies mit den folgenden Befehlen ausprobieren:
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-Rendering mit Vulkan
NVIDIA- und AMD-GPUs, die Vulkan unterstützen, unterstützen auch die Zero-Copy-Interoperabilität mit OpenGL über die Erweiterung GL_EXT_memory_objects. Der Emulator nutzt diese Funktion, um die Android-Benutzeroberfläche mithilfe der Skia Vulkan APIs vollständig zu rendern.
Wenn Sie eine NVIDIA- oder AMD-GPU haben, die Vulkan unterstützt, verwenden Sie die folgenden Befehle, um das Skia-Rendering mit einem kompatiblen System-Image (Android Q Beta 3 und höher) zu testen:
adb shellsusetprop debug.hwui.renderer skiavkstopstart
macOS-Unterstützung für Vulkan
Die macOS-Unterstützung ist noch experimentell, aber der Emulator enthält bereits die APIs Swiftshader, MoltenVK und libportability (gfx-rs). Sie können mit diesen APIs experimentieren, indem Sie die folgenden Umgebungsvariablen festlegen:
- Swiftshader:
ANDROID_EMU_VK_ICD=swiftshader - MoltenVK:
ANDROID_EMU_VK_ICD=moltenvk - libportability:
ANDROID_EMU_VK_ICD=portability
Bekannte Probleme
HAXM kann manchmal den kohärenten Vulkan-Speicher nicht dem Gast zuordnen und fährt den Emulator herunter. Dies wird in einem zukünftigen HAXM-Update behoben.
gRPC-Streaming-Emulator (Linux)
Wir versuchen immer, den Emulator so vielseitig wie möglich zu gestalten, indem wir Host-GPU-Rendering und Interaktivität in möglichst vielen Kontexten ermöglichen. Unsere CI- und Remote Desktop-Nutzer haben die folgenden langjährigen Probleme:
- Wenn Sie Eingabebefehle programmatisch an den Emulator senden, müssen Sie entweder adb-Shell-Befehle ausführen, was zu einem hohen Overhead führen kann, oder die Telnet-Konsole verwenden, die schneller ist, aber möglicherweise nicht mit bestimmten Netzwerkkonfigurationen funktioniert.
- CI-Nutzer führen Emulatoren oft im Headless-Modus aus. Dadurch kann es schwierig sein, Probleme zu erkennen, die eine Sichtbarkeit oder Interaktivität des Bildschirms erfordern.
- Remote-Desktop-Nutzer können oft nicht mit dem Emulator interagieren, wenn das GPU-Rendering des Hosts verwendet wird, da das GPU-Rendering oft an die nicht virtuellen Displays des Hosts gebunden ist.
Um dieses Problem zu beheben, stellt der Emulator bei der Ausführung auf einem Linux-Computer jetzt einen gRPC-Dienst bereit. gRPC ist ein allgemeines Framework für RPC, das über HTTP funktioniert.
Standardmäßig ist der gRPC-Dienst des Emulators deaktiviert. Sie können den Dienst jedoch mit der folgenden Befehlszeilenoption aktivieren, wobei <port> der Port ist, über den der Emulator gRPC-Anfragen verarbeiten soll (normalerweise 5556):
-grpc <port>
Sobald der Dienst gestartet wurde, können gRPC-Befehle von Clients ausgegeben werden. Mit den aktuellen Befehlen können Sie sowohl Eingabeereignisse senden als auch Screenshots empfangen. Mit diesen Befehlen können Sie die folgenden Probleme beheben:
- Eingabebefehle können mit geringem Aufwand über HTTP an den Emulator gesendet werden. HTTP ermöglicht auch das Senden von Befehlen in zusätzlichen Netzwerkkonfigurationen.
- Screenshot-Befehle können gesendet werden, um den aktuellen Bildschirm abzufragen, auch wenn der Emulator ohne Benutzeroberfläche ausgeführt wird. Für die Interaktivität können Eingabeereignisse auch an den Emulator zurückgesendet werden.
- Remote-Desktop-Nutzer können den Emulator monitorlos auf dem Hauptdisplay mit GPU-beschleunigtem Rendering ausführen und gRPC verwenden, um Screenshots zu erstellen und Eingabeereignisse zu senden, um mit dem Emulator zu interagieren.
Eine vollständige Liste der verfügbaren Befehle finden Sie in diesem Protobuf.
Als Einstiegshilfe für gRPC haben wir einige Beispielclients bereitgestellt, die Sie als Referenz verwenden können.
Derzeit sind die folgenden Beispiele enthalten:
- Ein Go-basierter Dienst, mit dem Emulatorstatus abgefragt werden können.
- Eine React-Anwendung, die die Remote-Interaktivität über Screenshot- und Eingabe-RPCs demonstriert. Für dieses Beispiel ist protobuf Version 3.7.0 oder höher erforderlich.
- Ein Python-Beispiel, das die VM-Konfiguration des Emulators abfragt und dann eine Reihe von Befehlen sendet.
28.0.25 (29. März 2019)
Dieses Update enthält die folgenden Verbesserungen und Fehlerkorrekturen:
Headless-Emulator-Build
Die Einrichtung des Emulators mit Docker und anderen CI-Workflows (Continuous Integration) war aufgrund der impliziten Erwartungen des Systems, Qt zusammen mit seinen Abhängigkeiten von gemeinsam genutzten Bibliotheken zu unterstützen, schwierig (neben anderen Problemen).
Als ersten Schritt zur Behebung dieses Problems haben wir eine Variante des Emulator-Launchers mit ausführbaren QEMU-Dateien eingeführt, die nicht von Qt abhängt. Unter Linux gibt es noch einen Link zu libX11, den wir aber auch bald entfernen möchten.
Wenn Sie den Headless-Emulator verwenden möchten, führen Sie den Emulator wie gewohnt über die Befehlszeile aus, ersetzen Sie jedoch den Aufruf der Emulator-Binärdatei durch emulator-headless. Weitere Informationen finden Sie im Release-Update 28.1.8 Canary.
- Es wurde ein Problem behoben, bei dem es auf Intel-GPUs bei der Ausführung von Android Q-System-Images zu einem Flackern und einer fehlerhaften Frame-Anzeige kam.
- Es wurden Probleme behoben, bei denen ein schwarzer Bildschirm angezeigt wurde, wenn Android Q-System-Images mit Pixel 2 XL-Skins verwendet wurden.
- Die neuesten BIOS-Binärdateien werden jetzt zum Starten des Emulators verwendet. Diese Änderung kann dazu beitragen, Fehler vom Typ „vCPU-Herunterfahranfrage“ zu reduzieren, die manchmal beim Starten des Emulators unter Windows auftreten.
- Eine Korrektur für das Problem Falsche Anzeige beim Fortsetzen von Android Q-System-Images aus einem Snapshot wurde rückportiert.
- Nutzer hatten aufgrund einer inkompatiblen Änderung in ADB in platform-tools 28.0.2 Probleme mit „nicht autorisierten“ Emulatoren. Sie können ADB aus platform-tools 28.0.2 jetzt sicher mit dem Emulator verwenden. Wenn Sie Probleme mit „nicht autorisierten“ Emulatoren haben, führen Sie die folgenden Schritte zur Fehlerbehebung aus:
- Beenden Sie alle Emulatoren.
- Löschen Sie die Dateien
~/.android/adbkeyund~/.android/adbkey.pub. - Führen Sie dazu diesen Befehl aus:
adb kill-server - Führen Sie dazu diesen Befehl aus:
adb devices - Löschen Sie die AVD-Daten.
- Starten Sie den Emulator neu.
28.0.23 (29. Januar 2019)
Dieses Update enthält die folgenden Verbesserungen und Fehlerkorrekturen:
Audioeingabe des Hosts standardmäßig deaktiviert
In einem aktuellen Beitrag auf Reddit wurde beschrieben, dass das Android-Gastbetriebssystem immer das Audio des Hostmikrofons verwendet und dadurch „Hey Google“ unerwartet funktioniert. Wir bedauern dies und werden mit dem Android-Team zusammenarbeiten, um sicherzustellen, dass die Hotword-Erkennung auch im System-Image deaktiviert ist.
Um dieses Problem zu beheben, haben wir die folgenden Änderungen vorgenommen:
- Die tatsächlichen Host-Audiodaten werden jetzt standardmäßig unterdrückt. Wenn der Gast das Mikrofon verwendet, wird anstelle des Audiosignals des Hosts Stille übertragen.
- Wenn Sie die Audiodaten des Hosts verwenden möchten, können Sie diese Option jetzt aktivieren. Gehen Sie dazu zu Erweiterte Einstellungen > Mikrofon und aktivieren Sie Virtuelles Mikrofon verwendet Host-Audioeingabe. Diese Option wird automatisch deaktiviert, wenn der Emulator neu gestartet wird.
Aktuelle Informationen zu Untersuchungen der CPU-Auslastung
Im Rahmen unserer Untersuchungen im Rahmen des Project Marble haben wir festgestellt, dass eine hohe CPU-Auslastung im Emulator im Allgemeinen in die folgenden drei Kategorien fällt:
Im Ruhezustand: Automatische App-Updates in Google Play Store-Images
Wir haben festgestellt, dass alle installierten Apps in zufälligen Abständen aktualisiert werden, auch wenn der Nutzer nicht angemeldet ist. Während des Vorgangs wird die CPU-Auslastung in GMSCore und dex2oat auf die Anzahl der Kerne × 100% (normalerweise ca. 400%) erhöht. Du kannst dieses Problem beheben, indem du automatische App-Updates in der Google Play Store App deaktivierst.
Im Ruhezustand: Hotword-Erkennung
Wenn Sie sich auf dem Startbildschirm befinden und keine App im Vordergrund ausgeführt wird, kann die CPU-Auslastung sehr hoch sein (~25% mit Spitzen bis zu 50%). Das liegt an der Hotword-Erkennung, die den Host ständig anpingt. Sie können dieses Problem nicht beheben, indem Sie die Audioeingabe des Hosts deaktivieren, da die CPU-Kosten hauptsächlich durch die Zeit verursacht werden, die für die Übertragung vom Host zum Gast benötigt wird. Sie können dieses Problem jedoch beheben, indem Sie der Google App die Mikrofonberechtigungen entziehen.
Bei Aktivität, manchmal im Ruhezustand: Animationen
Die dritte Ursache für eine hohe CPU-Auslastung sind Animationen. Wir haben festgestellt, dass wir durch die Optimierung des Grafiktreiber-Stacks auch die CPU-Auslastung reduzieren können, selbst wenn der Emulator nicht inaktiv ist. Im Rahmen von Project Marble werden wir nach und nach Optimierungen für Grafiktreiber einführen.
28.0.22 (21. Dezember 2018)
Dieses Update enthält die folgenden Verbesserungen und Fehlerkorrekturen:
- Ein langjähriges Problem wurde behoben, bei dem der Mac-Emulator in einigen Einstellungen beim Speichern des Schnellstarts neu gestartet wurde oder eine Kernel-Panik auftrat. (Problem 120951634)
- Wenn eine zugeordnete Datei als RAM-Snapshot verwendet wird, hebt der Emulator die Dateizuordnung beim Beenden jetzt explizit auf.
28.0.20 (11. Dezember 2018)
Dieses Update enthält die folgenden Verbesserungen und Fehlerkorrekturen:
- Ein Problem unter Windows wurde behoben, bei dem der Emulator beim Laden von Snapshots mit bestimmten Intel-GPU-Modellen eingefroren ist.
- Ein Problem wurde behoben, das bei Verwendung eines nicht standardmäßigen
ANDROID_SDK_HOME-Speicherorts zu einem ADB-Gerätestatusunauthorizedführte. - Es wurde ein Problem unter Windows behoben, das dazu führte, dass der Emulator beim Booten von System-Images mit deaktivierter CPU-Beschleunigung abstürzte.
- Das Problem mit der verpixelten Emulatoranzeige wurde behoben. Das Downsampling sollte jetzt funktionieren.
- Es wurde ein Problem unter macOS 10.14 und höher behoben, bei dem die Maussteuerung der virtuellen Szenenkamera aufgrund einer Interaktion mit neuen Sicherheitseinstellungen für die Barrierefreiheit im Internet zu empfindlich werden konnte.
- Ein Fehler bei der Zeitzonenberechnung wurde behoben, der dazu führen konnte, dass sich die Emulatoruhr sporadisch änderte.
- Renderingfehler in verschiedenen cocos2d- und Unreal Engine-Apps wurden behoben.
- Im Emulator wurde Unterstützung für WLAN-Peer-to-Peer hinzugefügt.
Zwei Emulatoren können jetzt direkt über WLAN miteinander kommunizieren, wenn das neueste Pie Google Play Store-Image verwendet wird. Wenn Sie Wi-Fi Peer-to-Peer verwenden möchten, starten Sie zwei AVDs mit denselben Argumenten für
-wifi-server-portund-wifi-client-port:emulator @<server-avd-name> -wifi-server-port 9999emulator @<client-avd-name>-wifi-client-port 9999
- Unterstützung für weitere Webcams unter Windows hinzugefügt, indem inkompatible Framegrößen dynamisch an die Kameraeinstellung im Android-Gast angepasst werden.
28.0.16 (November 2018)
Dieses Update enthält mehrere neue Funktionen, Verbesserungen an bestehenden Funktionen und Fehlerkorrekturen.
Ressourcennutzung
Der Emulator verwendet jetzt insgesamt weniger RAM, insbesondere bei System-Images mit API-Level 28 oder höher. Diese System-Images bieten eine verbesserte Speichernutzung für gastseitige Grafiktreiber.
Außerdem haben wir die Ressourcennutzung in den folgenden Bereichen verbessert:
- Die Arbeitsspeichernutzung des Emulators bei lang andauernden Tests wurde reduziert. Wenn Sie bei lang andauernden Tests weiterhin Probleme mit der Speichernutzung haben, erstellen Sie im Issue Tracker ein Problem, in dem Sie Ihren Anwendungsfall beschreiben.
- Reduzierte CPU-Auslastung beim Ausführen von Apps mit Animationen.
- Ein Problem wurde behoben, bei dem der QEMU-AIO-Kontext unter Windows verloren gehen konnte.
Mehrere Instanzen eines einzelnen AVD gleichzeitig ausführen
Sie können jetzt mehrere Instanzen desselben AVD starten und gleichzeitig ausführen. Instanzen, die Sie nach der ersten Instanz starten, sind schreibgeschützt. Änderungen an der virtuellen Gastfestplatte werden beim Beenden verworfen.
Wenn Sie mehrere Instanzen desselben AVD gleichzeitig ausführen möchten, starten Sie alle Instanzen nach der ersten Instanz über die Befehlszeile mit dem Flag -read-only.
Diese Funktion wird durch das Kopieren der QCOW2-Dateien ermöglicht, die den beschreibbaren Teilen des Android-Images zugeordnet sind. Zur Verwaltung des Speicherplatzes haben wir auch das qemu-img-Befehlszeilentool gebündelt, mit dem Sie QCOW2-Dateien vorab festlegen können, bevor Sie mehrere Instanzen starten.
Wenn Sie die Funktion Dateigestützte Gast-RAM-Snapshots verwenden, teilen sich mehrere AVD-Instanzen den primären AVD-Quickboot-Snapshot als gemeinsame Quelle für Copy-on-Write-Gast-RAM. Das bedeutet, dass die Instanzen einen Großteil ihres RAM gemeinsam nutzen. Mit dieser Funktion können Sie Tests ausführen, für die mehrere Geräte parallel ausgeführt werden müssen.
Wir freuen uns über Ihr Feedback zu möglichen Anwendungsfällen, die Teil Ihres normalen interaktiven oder CI-Workflows sind. Erstellen Sie Probleme im Issue Tracker oder stimmen Sie für sie ab.
Dateibasierte Gast-RAM-Snapshots
Durch die Vorabzuweisung und Zuordnung des Gast-RAM als Datei kann der Emulator jetzt Quickboot-Snapshots während der Laufzeit speichern, anstatt die gesamte Arbeit beim Beenden zu erledigen. Wenn das Speichern beim Schließen der Emulatoren derzeit lange dauert, aktivieren Sie diese Funktion, um die Quickboot-Leistung zu verbessern. Standardmäßig wird beim Beenden ein Quickboot-Snapshot gespeichert und jedes Mal wieder geladen, so als würde ein echtes Gerät in den Ruhemodus versetzt und wieder aktiviert.
Da der Android-Gast-RAM jetzt standardmäßig automatisch gespeichert wird, müssen Sie den Emulator anweisen, Änderungen nach jeder Sitzung zu verwerfen, wenn Sie einen Gerätestatus definieren und wiederholt aus diesem Status laden möchten. Dazu haben Sie folgende Möglichkeiten:
- Verwenden Sie die Flags
-no-snapshot-saveoder-read-only, wenn Sie den Emulator über die Befehlszeile starten. - Gehen Sie zu Erweiterte Einstellungen > Snapshots > Einstellungen und ändern Sie Aktuellen Status automatisch in Quickboot speichern? zu Nein.
- Nachdem Sie diese Option ausgewählt haben, müssen Sie den Emulator neu starten. Wenn der Emulator auf automatisches Speichern eingestellt ist, können Sie den folgenden Befehl ausführen, um einen Prüfpunkt festzulegen:
Nachdem Sie diesen Befehl ausgeführt haben, bleibt der Quickboot-Snapshot des Emulators an diesem Prüfpunkt. Führen Sie denselben Befehl noch einmal aus, um den Emulator von Ihrem Prüfpunkt zu laden.adb emu avd snapshot remap 0
Snapshots, die über die Snapshot-UI erstellt und geladen werden, funktionieren wie zuvor, ohne Dateizuordnung.
Da es sich hierbei um eine große Änderung der Funktionsweise von Quickboot handelt, würden wir uns über dein Feedback dazu freuen, ob sich die Leistung von Quickboot verbessert und welche Probleme bei der Verwendung auftreten. Wenn Probleme auftreten, können Sie diese Funktion deaktivieren, indem Sie der Datei ~/.android/advancedFeatures.ini die folgende Zeile hinzufügen:
QuickbootFileBacked = off
Wenn Sie den Emulator über einen Snapshot starten (entweder mit der Befehlszeilenoption -snapshot oder über einen Snapshot im AVD-Manager), deaktiviert der Emulator sowohl das automatische Speichern für Quickboot-Snapshots als auch das Speichern von Quickboot-Snapshots beim Beenden. Dadurch wird die Wahrscheinlichkeit verringert, dass der Quickboot-Snapshot unbeabsichtigt überschrieben wird, und langsame Fallback-Pfade, die keine dateigestützten Quickboot-Snapshots verwenden, werden vermieden.
QEMU 2.12
Wir haben unsere QEMU-Variante von QEMU 2.9 auf QEMU 2.12 umgestellt. Dieses Update enthält die folgenden QEMU-Änderungen:
- https://wiki.qemu.org/ChangeLog/2.10
- https://wiki.qemu.org/ChangeLog/2.11
- https://wiki.qemu.org/ChangeLog/2.12
Hier sind einige der wichtigsten Änderungen, die sich auf den Android-Emulator auswirken:
- x86:
gdbstubbietet jetzt Zugriff auf SSE-Register. - Speicherabbilder: Die Image-Sperre wird hinzugefügt und ist standardmäßig aktiviert. Mehrere QEMU-Prozesse können nicht in dasselbe Image schreiben, solange der Host OFD- oder POSIX-Sperren unterstützt, es sei denn, es werden andere Optionen angegeben.
qemu-img: qemu-img resizeunterstützt die Vorabzuweisung der neuen Teile des Bildes.- QCOW2-Verkleinerung wird jetzt in
qemuundqemu-imgunterstützt.
Bedienungshilfen
- Probleme mit Screenreadern wurden behoben und die Unterstützung für diese Tools in der Benutzeroberfläche für Bildschirmaufzeichnungen und Snapshots wurde verbessert.
- Die Benachrichtigungssymbole für den Schnellstart wurden für farbenblinde Nutzer besser zugänglich gemacht.
Grafik
- Ein Problem mit unzulässigem Speicherzugriff, das bei OpenGL ES-Vertex-Array-Zeigern auftreten konnte, wurde behoben.
- Einige ältere GPUs unterstützen OpenGL 2.1 oder höher (erforderlich) nicht oder weisen andere Zuverlässigkeitsprobleme auf. Diese Probleme können dazu führen, dass der Emulator beim Start abstürzt, einfriert oder mit der Standard-GPU-Einstellung nicht verwendet werden kann. Der Emulator wechselt jetzt automatisch zum Swiftshader-Renderer, wenn er erkennt, dass diese GPUs verwendet werden.
- Ein Problem wurde behoben, durch das der Emulator nicht den richtigen Framebuffer gepostet hat, wenn
FBO != 0zum Zeitpunkt voneglSwapBuffersgebunden war. - Es wurde ein Problem behoben, bei dem das virtuelle Android-Display nur in der oberen linken Ecke angezeigt wurde. Wir gehen davon aus, dass dies auf falsch konfigurierte Qt-Umgebungsvariablen zurückzuführen ist. Der Emulator überschreibt jetzt alle Qt-Umgebungsvariablen, die mit der Skalierung zusammenhängen.
- Es wurde ein Problem behoben, bei dem der Emulator in einigen Situationen beim Laden von GLES1-Apps aus einem Snapshot abstürzte.
- Es wurden Nebenläufigkeitsprobleme in OpenGL und beim Starten von Rendering-Threads behoben, die zu doppelten Freigaben oder beschädigten Daten führen konnten.
- Der Android-Emulator unterstützt jetzt die ASTC-LDR-komprimierte Texturunterstützung (
GL_KHR_texture_compression_astc_ldr) für System-Images, die API-Level 28 oder höher verwenden. - Die meisten modernen GPUs sollten den Emulator jetzt standardmäßig mit aktiviertem OpenGL ES 3.x starten können, ohne dass das Funktions-Flag
GLESDynamicVersionverwendet werden muss. -gpu guest(Software-Rendering im Gast) wurde eingestellt. System-Images für API-Level 28 oder höher wechseln jetzt automatisch zu Swiftshader (-gpu swiftshader_indirect).- Wenn der Emulator über die Befehlszeile mit dem Flag
-no-windowgestartet wird, ist der Standard-Renderer jetzt Swiftshader.
Standort
- Der Emulator kann jetzt die Peilung zusammen mit der Position (Breiten- und Längengrad) aktualisieren. Der virtuelle Magnetometersensor passt sich dynamisch an den magnetischen Norden an, indem er bei der Wiedergabe einer GPX- oder KML-Datei Bewegungen ableitet.
- Die Geschwindigkeit des Geräts kann jetzt auf der Seite „Standort“ festgelegt werden.
- Bei der Wiedergabe einer GPX- oder KML-Datei wird die Geschwindigkeit automatisch festgelegt und nach Ende der Wiedergabe auf null gesetzt.
- Die Höhe ist nicht mehr auf einen Wert zwischen -1.000 und +10.000 Metern beschränkt.
- Ein Problem wurde behoben, bei dem der virtuelle GPS-Standort nicht regelmäßig aktualisiert wurde, es sei denn, das Fenster „Erweiterte Einstellungen“ wurde mindestens einmal geöffnet.
Kamera
Unter Windows werden jetzt mehr Webcams unterstützt, da der Emulator die von der Webcam gelieferten Kameraframes dynamisch anpasst. Diese Funktion verhindert auch, dass der Emulator aufgrund von Fehlern bei der Frame-Übermittlung hängen bleibt.
Play Store
Um Probleme mit unzureichendem Speicherplatz auf Google Play Store-Images zu beheben, wird die Partition für Nutzerdaten im Emulator jetzt automatisch auf 6 GB angepasst, wenn eine neue Google Play Store-AVD ausgeführt wird.
Allgemeine Qualitätsverbesserungen und Fehlerkorrekturen
- Einige Nutzer haben berichtet, dass der Emulator langsam läuft. Wir haben eine mögliche Ursache gefunden: Im temporären Verzeichnis für den Emulator befinden sich zu viele veraltete Dateien. Als Behelfslösung speichert der Emulator keine ADB-Aktivitätsprüfungsdateien mehr in diesem Verzeichnis. Es kann jedoch auch hilfreich sein, den Inhalt dieses Ordners zu löschen. Der Ordner befindet sich je nach Betriebssystem an einem der folgenden Speicherorte:
- Windows:
C:\Users\<username>\AppData\Local\Temp\AndroidEmulator\* - macOS oder Linux:
/tmp/android-<username>/*
- Windows:
- Wenn der Emulator aufgrund von unzureichendem verfügbarem RAM nicht gestartet werden kann, wird jetzt eine Fehlermeldung angezeigt. Wenn Sie Windows verwenden und feststellen, dass RAM verfügbar ist, Sie den Emulator aber trotzdem nicht starten können, wurde möglicherweise die Commit-Gebühr überschritten. Hilfe zu diesem Problem finden Sie auf der Seite zur Fehlerbehebung für den Emulator.
- Die Befehlszeilenoption
-sysdirüberschreibt jetzt das abgeleitete System-Image-Verzeichnis ordnungsgemäß. - Das virtuelle Modem unterstützt jetzt die Abfrage
+MAIfür Informationen zur Modellaktivität. - Verschiedene Probleme mit Speicherlecks, Speicherschäden und CPU-Auslastung wurden behoben. Wenn Sie Abstürze, Speicherlecks oder eine andere hohe Ressourcennutzung feststellen, erstellen Sie bitte ein Problem im Issue Tracker.
- Ein Problem, das unter macOS 10.14 wieder aufgetreten ist, wurde behoben. Bei der Verwendung von Bluetooth-Headsets mit dem Emulator wurde die Audioqualität global beeinträchtigt. Um dies zu verhindern, wird Bluetooth-Audio im Emulator unter macOS nicht mehr verwendet. (Problem 37070892)
- Ein Problem unter Windows wurde behoben, bei dem die Emulatoruhr nicht in der richtigen Zeitzone war.
- Es wurde ein Problem behoben, bei dem der Emulator auf Linux-Systemen mit rotierenden Festplatten (HDDs) langsam war und hängen blieb.
- Einige Compilerwarnungen wurden behoben, die zu einer Beschädigung des Stacks unter macOS führen konnten.
- Probleme behoben, die zu irreführenden Berichten über Abstürze führen konnten.
- Ein Problem beim Löschen von Threadpools wurde behoben, das zu einem Absturz führen konnte, wenn einer der Threads nicht erfolgreich erstellt wurde.
- Unter macOS wurde ein Problem behoben, bei dem Timer unzuverlässig wurden, was zu Abstürzen und anderem ungewöhnlichen Verhalten führte. Wenn der Emulator unter macOS hängen bleibt, erstellen Sie bitte ein Problem im Issue Tracker.
- Es wurde ein Problem behoben, bei dem durch das Schließen des Emulators die Benutzeroberfläche deaktiviert, der Emulator aber nicht tatsächlich geschlossen wurde.
- Probleme mit sporadischen Abstürzen wurden behoben, einschließlich eines Abbruchs, der durch das Öffnen zu vieler Instanzen von
/dev/urandomverursacht wurde. - Es wurde ein Problem behoben, durch das der Emulator nach dem ersten Start nicht mehr gestartet werden konnte, wenn ADB erzwungen beendet wurde.
- Der MIPS-Build wurde entfernt. Wenn Sie weiterhin MIPS benötigen, erstellen Sie bitte ein Problem im Issue Tracker.
- Ein Problem wurde behoben, bei dem ADB-Verbindungen beim Laden von Snapshots beschädigt werden konnten.
- Es wurde ein Problem behoben, bei dem das Emulatorfenster ein Nachbild hatte oder außerhalb des Bildschirms teleportiert wurde, wenn ein Snapshot fortgesetzt wurde, bei dem die Geräteausrichtung von der Standardausrichtung des AVD abwich.
- Probleme mit Abstürzen beim Speichern von Snapshots wurden behoben.
- Unter Linux können btrfs-Dateisysteme zu extremen Verlangsamungen führen, da der Emulator automatisch Snapshots speichert und Copy-on-Write für seine virtuellen Laufwerke verwendet. Wir empfehlen, das Verzeichnis
~/.android/avdzu bereinigen und den folgenden Befehl im leeren Verzeichnis~/.android/avdauszuführen: Dadurch werden neue Snapshots in einem Ordner erstellt, in dem Copy-on-Write deaktiviert ist.chattr +C
HAXM 7.3.2
Wir möchten HAXM 7.3.2 noch einmal erwähnen, da es installiert sein muss, damit aktuelle System-Images im Emulator ordnungsgemäß ausgeführt werden können. HAXM 7.3.2 sollte bereits in der stabilen Version verfügbar sein und kann auch manuell über https://github.com/intel/haxm/releases installiert werden.
Hier sind einige der Probleme, die mit dieser Version von HAXM behoben wurden:
- Zufällige Abstürze von Gastbetriebssystemen, die einen aktuellen Linux-Kernel (>= 4.6) verwenden, wurden behoben. Beispiel: Ubuntu 18.04 (#39, #74).
- Ein Fehler im x86-Anweisungsemulator, der zu einem Hostabsturz führen konnte, wurde behoben (#93).
Einstellung von 32-Bit-Windows
Aufgrund der geringen Nutzung und der hohen Wartungskosten planen wir, die 32-Bit-Version des Android-Emulators, der unter Windows ausgeführt wird, einzustellen. Wir werden einen Übergangsplan veröffentlichen, bevor die 32-Bit-Version des Android-Emulators entfernt und eingestellt wird. Wir freuen uns jedoch über Feedback oder Bedenken zu dieser zukünftigen Änderung.
Bitte teilt uns im Issue Tracker mit, ob ihr derzeit die 32-Bit-Version des Android-Emulators verwendet, die unter Windows ausgeführt wird, und wie wir euch am besten unterstützen können.
27.3.10 (August 2018)
Dieses Update enthält die folgende Fehlerkorrektur:
Korrektur der RAM-Größenkonfiguration
Einige Nutzer haben berichtet, dass der Emulator langsam läuft. Wir haben eine mögliche Ursache gefunden: Die AVD-RAM-Größe in der Datei config.ini des AVD wurde falsch festgelegt.
Um dies zu vermeiden, erhöht der Emulator den Mindest-RAM-Wert für Images, die API-Level 26 oder höher verwenden, auf den Android Studio-Standardwert von 1.536 MB. Wenn in der config.ini-Datei Ihres AVDs hw.ramSize nicht in Megabyte aufgeführt ist, erstellen Sie bitte ein Problem im Issue Tracker.
Sie finden die Datei config.ini am folgenden Speicherort:
~/.android/avd/<avdname>.avd/config.ini
27.3.9 (Juli 2018)
Dieses Update enthält die folgenden Verbesserungen und Fehlerkorrekturen:
Verbesserte Fehlermeldungen für die Windows-Hypervisor-Plattform
Einige Nutzer hatten Schwierigkeiten, die Ursache dafür zu finden, warum die Windows-Hypervisor-Plattform (WHPX) nicht initialisiert werden konnte, wenn sie einen WHPX-Emulator aktiviert haben. Damit Sie diese Probleme besser diagnostizieren können, haben wir aussagekräftigere Fehlermeldungen hinzugefügt. Sie können diese Fehlermeldungen aktivieren, indem Sie den Emulator über die Befehlszeile mit dem Flag -verbose ausführen.
Allgemeine Fehlerbehebungen
- OpenGL-Fehler behoben, die beim Laden eines Snapshots in der Kamera-App auftreten.
27.3.8 (Juli 2018)
Dieses Update enthält mehrere neue Funktionen, Verbesserungen an bestehenden Funktionen und Fehlerkorrekturen.
Snapshots
Sie können jetzt mehrere AVD-Snapshots für eine bestimmte Gerätekonfiguration speichern und auswählen, welcher der gespeicherten Snapshots beim Starten des Emulators geladen werden soll.
Ab Android Studio 3.2 Canary 13 enthält jede Gerätekonfiguration im Dialogfeld „Virtual Device Configuration“ (Konfiguration virtueller Geräte) in den erweiterten Einstellungen ein Steuerelement, mit dem Sie festlegen können, welcher AVD-Snapshot beim Starten des AVD geladen werden soll.
Um dieser Erweiterung der Snapshot-Funktionen Rechnung zu tragen, haben wir dem Dialogfeld Erweiterte Einstellungen die Kategorie Snapshots hinzugefügt. Dieser neue Bereich enthält Steuerelemente zum Speichern und Laden von AVD-Snapshots, einschließlich der Steuerelemente zum Speichern und Laden des Quick-Boot-Snapshots, die sich zuvor im Bereich Einstellungen befanden.
Sie können den Namen und die Beschreibung jedes gespeicherten Snapshots bearbeiten.
Weitere Informationen finden Sie unter Snapshots.
HAXM 7.2.0
HAXM 7.2.0 ist jetzt in allen Kanälen verfügbar.
Dieses Update enthält Fehlerkorrekturen und eine verbesserte Unterstützung für große RAM-Kapazitäten. Außerdem werden mit diesem HAXM-Update und Emulator 27.3 und höher die Inhalte von Snapshots bei Bedarf in den RAM geladen, anstatt den gesamten Snapshot beim Start des virtuellen Geräts zu laden. Diese Änderung sollte die Zeit, die zum Laden eines Snapshots benötigt wird, erheblich verkürzen.
Weitere Informationen finden Sie unter VM-Beschleunigung konfigurieren.
27.2.9 (Mai 2018)
Dieses Update enthält mehrere neue Funktionen, Verbesserungen an bestehenden Funktionen und Fehlerkorrekturen.
Bildschirmaufzeichnung
Sie können jetzt Video und Audio vom Android-Emulator aufnehmen und die Aufnahme in einer WebM- oder animierten GIF-Datei speichern.
Die Steuerelemente für die Bildschirmaufzeichnung befinden sich auf dem Tab Bildschirmaufzeichnung im Fenster Erweiterte Einstellungen.
Tipp:Sie können die Steuerelemente für die Bildschirmaufzeichnung auch öffnen, indem Sie „Strg + Umschalttaste + R“ („Befehlstaste + Umschalttaste + R“ auf dem Mac) drücken.
Klicken Sie auf dem Tab Bildschirmaufzeichnung auf Aufnahme starten, um die Bildschirmaufzeichnung zu starten. Klicken Sie auf Aufnahme beenden, wenn Sie mit der Aufnahme fertig sind.
Die Steuerelemente zum Abspielen und Speichern des aufgezeichneten Videos befinden sich unten auf dem Tab Bildschirmaufzeichnung. Wenn Sie das Video speichern möchten, wählen Sie im Menü unten auf dem Tab WebM oder GIF aus und klicken Sie auf Speichern.
Sie können auch eine Bildschirmaufzeichnung vom Emulator aufzeichnen und speichern. Verwenden Sie dazu den folgenden Befehl in der Befehlszeile:
adb emu screenrecord start --time-limit 10 [path to save video]/sample_video.webm
Screenshots
Sie können Screenshots über die Befehlszeile mit einem der folgenden Befehle erstellen:
screenrecord screenshot [destination-directory]adb emu screenrecord screenshot [destination-directory]
Screenshots werden im PNG-Format gespeichert.
Kamera für virtuelle Szenen und ARCore
Mit der neuen virtuellen Szenenkamera ist es jetzt noch einfacher, Augmented-Reality-Apps (AR) mit ARCore zu entwickeln und zu testen. Sie können damit Ihre AR-Inhalte in einer virtuellen Umgebung ausprobieren.
Informationen zur Verwendung der Kamera für virtuelle Szenen im Emulator finden Sie unter AR-Apps im Android-Emulator ausführen.
Google Play Store auf Pixel-Geräten (Bilder)
Der Google Play Store ist jetzt für Pixel- und Pixel 2-Geräte-Images aktiviert. Dies wird im AVD Manager in Android Studio 3.2 und höher durch das Google Play-Logo in der Spalte Google Play Store angezeigt. AVDs mit aktiviertem Google Play Store haben im Dialogfeld Erweiterte Einstellungen den Tab Google Play, auf dem sich eine Schaltfläche zum Aktualisieren der Google Play-Dienste auf dem Gerät befindet.
Snapshots
Sie können jetzt einen Quick Boot-Snapshot laden, ohne den Emulator neu zu starten. Wenn Sie einen Snapshot laden möchten, öffnen Sie das Fenster Erweiterte Einstellungen auf der Seite Einstellungen und klicken Sie auf den Button Jetzt laden.
Wir haben viele Verbesserungen am Laden und Speichern von Snapshots vorgenommen, um die Effizienz der Ressourcennutzung zu verbessern und die Zeit für jeden Vorgang zu minimieren. Wenn das Speichern weiterhin ungewöhnlich lange dauert, melden Sie das Problem und geben Sie Details zu CPU, RAM und den Einstellungen der Antiviren-, Firewall- oder Sicherheitssoftware an, die ausgeführt wird.
Rendering mit Skia
Wenn Sie Images für API 27 oder höher verwenden, kann der Emulator die Android-Benutzeroberfläche mit Skia rendern, was flüssiger und effizienter ist.
Derzeit muss Skia explizit aktiviert werden, um es zu verwenden.
Verwenden Sie die folgenden Befehle in der adb-Shell, um das Skia-Rendering zu aktivieren:
su setprop debug.hwui.renderer skiagl stop start
Kamera
Unter Windows verwendet Android Emulator jetzt Media Foundation als Webcam-Backend. Dadurch werden die Leistung und die Framerate für Webcam-Aufnahmen erheblich verbessert, bis zu 720p bei 30 fps.
Auf einem Mac können Sie jetzt webcam0 und webcam1 zusammen verwenden.
Sonstiges
Die Befehlszeilenoption -phone-number-prefix wurde in -phone-number [number] geändert, sodass die vollständige Telefonnummer festgelegt werden kann.
Sie können jetzt alphanumerische SMS-Adressen verwenden.
Fehlerkorrekturen
- Die Linux-Version des Android-Emulators wird jetzt mit einer modernen Clang-C++-Toolchain erstellt. Mit dieser Änderung wird das Problem behoben, dass der Emulator aufgrund von libGL- und libstdc++-Fehlern nicht gestartet werden konnte.
- Mehrere Ursachen für Abstürze und Hänger wurden behoben.
- Um Abstürze und Hänger zu vermeiden, die durch unzureichenden verfügbaren Speicherplatz verursacht werden, prüft der Emulator jetzt beim Start, ob genügend verfügbarer Speicherplatz vorhanden ist. Er startet nur, wenn mindestens 2 GB verfügbar sind.
- Ein Problem, das das Rendern einiger Unity-Spiele verhinderte, wurde behoben.
- Es wurde ein DNS-Problem behoben, das dazu führte, dass der Emulator keine Verbindung zum Netzwerk herstellen konnte.
- Ein Problem wurde behoben, durch das Änderungen am internen Speicher, der einem AVD über das Dialogfeld „Virtual Device Configuration“ zugewiesen wurde, nicht funktionierten.
- Ein Problem wurde behoben, bei dem viele adb-Prozesse erstellt und nicht ordnungsgemäß beendet wurden.
- Ein Problem wurde behoben, durch das die Schaltflächen zum Drehen und andere Teile der Benutzeroberfläche nicht mehr reagierten, wenn das Fenster „Erweiterte Einstellungen“ nicht geöffnet war.
- Ein Problem wurde behoben, durch das das Kopieren und Einfügen vom Host nur funktionierte, wenn das Dialogfeld „Erweiterte Steuerelemente“ mindestens einmal geöffnet wurde.
- Das Rechteck zur Größenänderung des rahmenlosen Emulators wurde aktualisiert, um dem visuellen Design des Emulators besser zu entsprechen.
- Telefon und SMS werden jetzt ordnungsgemäß deaktiviert, wenn der Flugmodus aktiviert ist.
- Es wurde ein Problem behoben, durch das SMS- und Mobilfunkfunktionen nach dem Laden eines Snapshots deaktiviert wurden.
- Sie erhalten keine falschen Warnmeldungen mehr, die besagen:
“Unable to open... \pstore.bin. Permission denied.” - Es wurde ein Problem behoben, durch das das AVD auf einigen Mac-Bildschirmen nicht neu positioniert werden konnte.
- Probleme mit flackernden und leeren Bildschirmen auf neueren MacBook Pro-Computern beim Ausführen von AVDs mit Pixel 2 XL-Skins wurden behoben.
- Probleme mit leeren Bildschirmen beim Wechsel in den Zoommodus, während ein rahmenloser Emulator aktiv war, wurden behoben.
- Ein Problem wurde behoben, durch das die Geräteoberfläche und der Emulatorinhalt beim Heranzoomen nicht mehr synchron gescrollt wurden.
Wenn weiterhin Hänger oder andere Instabilitäten auftreten, melden Sie das Problem.
27.1.12 (März 2018)
Dieses Update enthält Fehlerkorrekturen für die folgenden Probleme:
- Die Bluetooth-Audioqualität hat sich nach dem Starten des Emulators verschlechtert. (Problem 37095756)
- An einen Emulator gesendete Standorte wurden an alle Emulatoren gesendet. (Problem 73450633)
- Der über die Konsole festgelegte GPS-Standort wurde durch Werte überschrieben, die in der grafischen Benutzeroberfläche unter Erweiterte Einstellungen > Standort festgelegt wurden. (Problem 73471760)
Wenn weiterhin Probleme auftreten, melden Sie das Problem.
Mit diesem Update, einem aktuellen System-Image und einer Vorabversion von Android Studio können Sie mit dem Android-Emulator Augmented-Reality-Anwendungen ausführen, die mit ARCore erstellt wurden. Detaillierte Anforderungen und Anleitungen finden Sie unter AR-Apps im Android-Emulator ausführen.
27.1.10 (Februar 2018)
Auflösung der Kameraaufnahme
720p-Frames können jetzt von einer angeschlossenen Webcam aufgenommen werden.
Damit eine Webcam mit System-Images ab Android 8.1 (API-Level 27) funktioniert, muss sie in der Lage sein, 720p-Frames aufzunehmen.
Fehlerkorrekturen
- Es wurde ein Problem behoben, durch das die Webcam-Aufnahme manchmal ein verzerrtes oder vollständig grünes Bild ausgab.
- Ein Problem wurde behoben, durch das die folgende Meldung auch dann angezeigt wurde, wenn kein tatsächlicher Absturz vorlag: „emulator: ERROR: detected a hanging Thread ‚Qt Ereignisschleife‘. No response for 15000 ms".
Wenn weiterhin Probleme auftreten, melden Sie das Problem.
27.1.7 (Februar 2018)
Rahmenloses Emulatorfenster:
Emulatoren mit Gerätedesigndateien werden jetzt standardmäßig ohne umgebenden Fensterrahmen angezeigt. Wenn Sie den umgebenden Fensterrahmen anzeigen möchten, aktivieren Sie im Fenster Erweiterte Einstellungen im Bereich „Einstellungen“ die Option Fensterrahmen um das Gerät anzeigen.
Verbesserungen beim Schnellstart, um die Arbeit mit AVD-Snapshots effizienter zu gestalten:
- Sie können einen AVD-Snapshot jederzeit über die Schaltfläche Jetzt speichern im Bereich „Einstellungen“ des Dialogfelds Erweiterte Einstellungen speichern.
- Der Emulator verkürzt die Zeit, die zum Speichern eines Snapshots benötigt wird, in vielen Fällen, indem er nur die Differenz zwischen dem aktuellen Status und dem zuvor gespeicherten Snapshot speichert.
Weitere Informationen finden Sie in der Dokumentation zu Quick Boot.
Der Emulator wurde aktualisiert und verwendet jetzt QEMU 2.9.
Zu den wichtigsten Verbesserungen gehören:
- Optimierte E/A und feiner abgestufte E/A-Thread-Sperrung für mehr Leistung.
- Fehlerkorrekturen seit QEMU 2.8 (26.1.4).
- Neue Implementierung des HAXM-Back-Ends.
Eine vollständige Liste der Änderungen finden Sie im QEMU 2.9-Änderungsprotokoll.
Swiftshader-Implementierung, die OpenGL ES 3.0 entspricht:
Der Swiftshader-Renderer des Emulators entspricht jetzt vollständig OpenGL ES 3.0. Weitere Informationen zum Swiftshader-Renderer finden Sie im Abschnitt Einstellungen > Erweitert unter Erweiterte Einstellungen.
Fehlerkorrekturen
- Es wurde ein Problem behoben, durch das die Zwischenablagefreigabe nur funktionierte, wenn die Option Zwischenablagefreigabe aktivieren deaktiviert und wieder aktiviert wurde.
- Ein Problem wurde behoben, bei dem das System hängen blieb, wenn das Swiftshader-Rendering-Backend mit AVDs mit niedriger Auflösung verwendet wurde.
27.0.5 (Januar 2018)
ANGLE für das Rendering unter Windows ist jetzt standardmäßig deaktiviert.
Wenn ANGLE für Sie besser funktioniert, können Sie es mit dem Befehlszeilen-Flag
-gpu angle_indirectwieder aktivieren. Alternativ können Sie das Fenster „Erweiterte Einstellungen“ öffnen, zu Einstellungen > Erweitert gehen und ANGLE D3D11 für die OpenGL ES-Renderer-Einstellung auswählen.Ein Problem wurde behoben, bei dem mit der Tastenkombination „Umschalttaste + B“ kein großes „B“ eingegeben wurde.
27.0.2 (Dezember 2017)
Die neue Funktion „Quick Boot“ ermöglicht schnellere Emulatorstartzeiten, basierend auf einem Snapshot Ihrer AVD-Instanz.
Der Schnellstart ist standardmäßig für alle AVDs aktiviert. Beim ersten Start eines AVD muss ein Kaltstart durchgeführt werden (wie beim Einschalten eines Geräts). Alle nachfolgenden Starts sind jedoch schnell und das System wird in den Zustand zurückversetzt, in dem Sie den Emulator geschlossen haben (ähnlich wie beim Aufwecken eines Geräts).
Wenn Sie festlegen möchten, wann der Emulator einen Snapshot speichert, öffnen Sie das Fenster Erweiterte Einstellungen des Emulators und klicken Sie auf Einstellungen. Hier können Sie eine der folgenden Einstellungen für Save quick boot state on exit (Schnellstartstatus beim Beenden speichern) auswählen:
- Ja: Beim Schließen des Emulators wird immer ein Quick Boot-Snapshot gespeichert. Das ist die Standardeinstellung.
- Nein: Snapshot für Schnellstart nie speichern; immer einen Kaltstart ausführen.
- Fragen: Sie werden beim Schließen des Emulators gefragt, ob ein Snapshot für den Schnellstart gespeichert werden soll.
Ihre Auswahl gilt nur für das aktuell geöffnete AVD.
Weitere Informationen finden Sie in der Dokumentation zu Quick Boot.
Unterstützung für Mac OpenGL ES 3 wurde hinzugefügt (für System-Images mit API-Level 24 und höher, Google APIs und x86 ABI).
Für zusätzliche Stabilität in OpenGL ES 2+-Apps verwendet der Emulator jetzt das OpenGL-Kernprofil, falls verfügbar.
Neue Optionen für das Rendering mit Swiftshader / ANGLE:
-gpu swiftshader_indirect: Schnellere, stabilere Variante von Swiftshader, die mit Quick Boot funktioniert.-gpu angle_indirect(nur Windows): Stabilere Variante von ANGLE D3D, die auch mit Quick Boot funktioniert.
Die älteren Optionen
-gpu swiftshaderund-gpu anglewurden eingestellt. Im Fenster „Erweiterte Einstellungen“ werden für die OpenGL ES-Renderer-Einstellung unter Einstellungen > Erweitert für die Optionen „SwiftShader“ und „ANGLE“ jetzt die*_indirect-Varianten verwendet.Diverse weitere Fehlerkorrekturen.
26.1.4 (August 2017)
Dies ist eine Nebenversion mit Fehlerkorrekturen und den folgenden Verbesserungen an der GPU-Konfiguration:
- Boot-Animation aktivieren, wenn der ANGLE-Renderer ausgeführt wird
- GLES3 bei Ausführung im ANGLE-Renderer deaktivieren
26.1.3 (August 2017)
Dies ist eine Nebenversion mit Fehlerkorrekturen, Leistungsverbesserungen und kleinen Funktionsänderungen.
- Diese Version ist jetzt erforderlich, um die neuesten Android 8.0-System-Images zu verwenden.
Sie sind Treble-kompatibel und haben separate
vendor.img-Partitionen. - Die neue HAXM-Version 6.2.0 ist jetzt verfügbar (siehe SDK-Manager) und enthält die folgenden Updates:
- Verbesserte Speichernutzung. Der maximale Arbeitssatz des von HAXM angepinnten Arbeitsspeichers entspricht nicht mehr der Größe des RAMs des AVD. Stattdessen wird der Arbeitsspeicher bei Bedarf ausgelagert. Dadurch sollte der Emulator auf Computern mit weniger RAM zuverlässiger laufen.
- Der Emulator mit HAXM 6.2.0 kann jetzt unter macOS schneller gestartet werden, da eine langwierige Initialisierungsphase übersprungen wird.
- Verbesserungen an der GPU-Konfiguration
- Probleme mit einem schwarzen Bildschirm beim Booten, wenn das Software-Rendering auf der Gastseite durchgeführt wird, wurden behoben. Dazu wird auf das Software-Rendering auf der Hostseite mit Swiftshader zurückgegriffen. Die neuesten Versionen von System-Images für die API-Level 19–25 mit Google APIs sollten ein funktionierendes gastseitiges Rendering haben.
- Es wurde ein Problem behoben, bei dem der Emulator zu einem Software-Renderer wechselte, weil ältere Intel-GPUs erkannt wurden, der Emulator aber tatsächlich auf einer separaten GPU ausgeführt wurde. Welche GPUs auf ANGLE- oder Swiftshader-Rendering umgestellt werden, wird so bestimmt:
- Ältere Intel-iGPUs haben Treiberprobleme sowohl mit OpenGL- als auch mit ANGLE-D3D-Treibern. Nutzer mit Intel HD Graphics 3xxx und älter verwenden Swiftshader.
- Einige Nutzer haben berichtet, dass sie Images mit API-Level 25 aufgrund eines Fehlers nicht verwenden können, bei dem „Pixel Launcher immer wieder beendet wird“. Dies scheint ein Treiberproblem bei einigen Intel HD 4xxx-Modellen zu sein. Sie werden also automatisch auf ANGLE umgestellt.
- Für optimale Ergebnisse bei der GPU-Emulation empfehlen wir entweder eine dedizierte NVIDIA- oder AMD-GPU oder eine neuere Intel-GPU (Iris, HD 5xxx, HD 5xx/6xx).
- Es wurde ein Problem behoben, bei dem der Emulator nicht gestartet werden konnte (OpenGL-Emulation konnte nicht initialisiert werden), wenn das AVD mit
hw.gpu.mode=hostkonfiguriert und der Emulator in einem Remote-Desktop-Client gestartet wurde. - Die Einstellungen für „OpenGL ES API-Level (Neustart erforderlich)“ wurden genauer beschrieben. Außerdem wurde eine Option hinzugefügt, mit der ein Downgrade von OpenGL ES 3 auf OpenGL ES 2 durchgeführt werden kann, falls Probleme auftreten oder Tests auf niedrigeren OpenGL ES API-Levels erforderlich sind.
- Der Mesa-Renderer wird nicht mehr unterstützt.
hw.gpu.mode=mesawird jetzt automatisch auf die Verwendung von Swiftshader auf dem Host umgestellt.
- Verbesserungen für macOS:
- Der Emulator ist jetzt über Hypervisor.Framework oder HAXM 6.2.0 vollständig mit macOS 10.13 High Sierra kompatibel.
- Hypervisor.framework ist jetzt standardmäßig unter macOS für 32-Bit-x86-Images aktiviert, um die Leistung und die macOS-Kompatibilität zu verbessern. Wenn Sie Probleme damit haben, reichen Sie bitte einen Fehlerbericht ein und hängen Sie
HVF = offan~/.android/advancedFeatures.inian. Erstellen Sie diese Datei, falls sie nicht vorhanden ist. - Probleme mit fehlender Internetverbindung / Fehler beim Anhängen des Debuggers bei Verwendung von Hypervisor.framework wurden behoben.
- Um die Kompatibilität und Leistung der Webcam-Aufnahme zu verbessern, wurde die QTKit-basierte Kameraaufnahme durch eine gepufferte Aufnahme auf Basis von AVFoundation ersetzt.
- Unterstützung für WLAN in einigen System-Images hinzugefügt (derzeit nur API-Level 25).
Ein Zugangspunkt namens „AndroidWifi“ ist verfügbar und Android stellt automatisch eine Verbindung her. Die WLAN-Unterstützung kann deaktiviert werden, indem der Emulator mit dem Befehlszeilenparameter
-feature -Wifiausgeführt wird. - Einige Nutzer haben Bedenken geäußert, dass die Google Play Store-System-Images mit fester Größe nicht genügend Speicherplatz haben. Daher haben wir die Standardgröße von 800 MB auf 2 GB erhöht.
- Es wurde eine Tastenkombination (Strg + Umschalttaste + U) hinzugefügt, mit der die Seite für die Fehlerberichterstattung direkt über die Seite „Einstellungen“ geöffnet werden kann.
- Ein Problem wurde behoben, bei dem der Emulator nicht gestartet werden konnte, wenn eine ältere CPU mit Intel x86 EPT, aber ohne UG verwendet wurde und mehr als ein Kern konfiguriert war.
- Es wurde ein Problem behoben, bei dem HyperV fälschlicherweise erkannt wurde, wenn der Emulator selbst in einem Xen-Hypervisor ausgeführt wurde.
- Ein Problem wurde behoben, bei dem der Emulator in einigen Linux-Konfigurationen beim Start abstürzte.
26.1.2 (Juli 2017)
Diese Version enthält neue Funktionen und Leistungsverbesserungen.
In den erweiterten Einstellungen (Mehr
> Einstellungen > Proxy) kann jetzt eine benutzerdefinierte HTTP-Proxy-Konfiguration definiert werden. Standardmäßig verwendet der Emulator die HTTP-Proxy-Einstellungen von Android Studio. Auf diesem Bildschirm können Sie jedoch eine manuelle Proxy-Konfiguration definieren.
VNC-Unterstützung für die GPU im Gastmodus hinzugefügt, damit der Emulator per Fernzugriff angezeigt und gesteuert werden kann. Sie können beispielsweise den Emulator starten und VNC auf Port 5901 lauschen lassen:
- Führen Sie Folgendes aus:
emulator -gpu guest -avd avd_name -no-window -qemu -vnc :1 Öffnen Sie einen VNC-Viewer, z. B. TightVNC Viewer, um eine Verbindung zu Port 5901 herzustellen.
Wenn Sie den integrierten Bildschirmfreigabe-Client von Mac verwenden möchten, ist beim Starten des Emulators ein VNC-Passwort erforderlich. Verwenden Sie diesen Befehl, um ein Passwort festzulegen:
emulator -gpu guest -avd avd_name -no-window -qemu -vnc :1,password -monitor stdioGeben Sie dann
change vnc passwordin die Konsole ein und geben Sie ein Passwort ein.
Android O wird derzeit im VNC-Modus nicht unterstützt.
- Führen Sie Folgendes aus:
In den erweiterten Einstellungen wurde auf dem Hilfebildschirm die Schaltfläche Fehler melden hinzugefügt. (Klicken Sie auf Mehr
und dann auf Hilfe und Emulator-Hilfe.) Wenn Sie auf Fehler melden klicken, wird ein Dialogfeld geöffnet, in dem Sie die Details des Fehlerberichts sehen, z. B. den Screenshot, die AVD-Konfigurationsinformationen und ein Fehlerberichtsprotokoll. Sie können den Bericht dann für sich speichern oder Emulatorprobleme melden.Dem Emulator und dem Bereich für virtuelle Sensoren wurde ein Gyroskopsensor hinzugefügt. Dafür ist ein System-Image mit Gyroskop-Unterstützung erforderlich (derzeit API-Level 24 und 25).
Der Qemu-DNS-Liste unter Windows wurde ein vom Host bevorzugter DNS hinzugefügt, wenn mehrere virtuelle Netzwerkschnittstellen auf dem Host mehrere DNS-Adressen einführen, die für den Emulator nicht funktionieren.
Experimentelle Unterstützung für macOS Hypervisor.Framework für 32-Bit-x86-Images unter macOS 10.10 und höher über Server-Flags hinzugefügt, was die Startzeit und Leistung verbessern sollte.
- Wenn Probleme auftreten, fügen Sie die Zeile
HVF = offin~/.android/advancedFeatures.inihinzu.
- Wenn Probleme auftreten, fügen Sie die Zeile
OpenGL ES 3.x ist jetzt standardmäßig für System-Images und Host-GPUs aktiviert, die OpenGL ES 3 unterstützen. Derzeit unterstützen nur Android O (API-Level 26) und Windows-/Linux-Hosts OpenGL ES 3.
- Wenn Probleme mit OpenGL ES 3 auftreten, fügen Sie die Zeile
GLESDynamicVersion = offin~/.android/advancedFeatures.inihinzu.
- Wenn Probleme mit OpenGL ES 3 auftreten, fügen Sie die Zeile
Der Emulator verwendet jetzt Offscreen-OpenGL-FBOs für das gesamte Rendering, mit Ausnahme der endgültigen Anzeige des Bildes. Dies sollte bei Problemen mit der Farbkonsistenz auf verschiedenen Plattformen helfen.
Nachdem wir Daten zu plötzlichen Verlangsamungen des Emulators gesammelt haben, haben wir festgestellt, dass das Problem möglicherweise mit einer Interaktion zwischen älteren Intel OpenGL-Treibern und Windows-Updates zusammenhängt. Daher ist bei Nutzern mit Intel HD 4000, 3000, 2000 (und ähnlichen GPUs) das Rendering jetzt standardmäßig entweder auf einen D3D-Renderer (ANGLE) oder Swiftshader (Software-Renderer) eingestellt.
26.0.0 (März 2017)
Diese Version ist mit API-Level 26 kompatibel. Außerdem enthält sie eine Reihe von Leistungsverbesserungen und Fehlerkorrekturen.
Nebenversion 26.0.3 (Mai 2017)
- Fügt online aktualisierbare Funktions-Flags hinzu, um Probleme, die durch problematische Hardwarekonfigurationen verursacht werden, schnell zu beheben. So kann Google Fehlerkorrekturen und Funktionen, die von Nutzerkonfigurationen abhängen, durch Aktualisieren serverseitiger Flags einführen. Wenn Sie Probleme mit bestimmter Hardware feststellen, melden Sie bitte einen Fehler, damit wir das Problem untersuchen können.
- Neue Unterstützung für Drehknopf für Android Wear API-Level 25-System-Images. Wenn du den Drehknopf auf einem Wear-Gerät emulieren möchtest, klicke im erweiterten Fenster auf den Tab Drehknopf.
- Die Größe des Dialogfelds „Crash Reporting“ kann jetzt angepasst werden. Die Option Wann sollen Absturzberichte gesendet werden? wird nicht mehr ohne Eingabe auf Fragen zurückgesetzt.
- Für den 32-Bit-Emulator muss die maximale AVD-RAM-Größe jetzt kleiner oder gleich 512 MB sein, damit der Emulator im virtuellen Adressraum von 2 GB nicht zu wenig Speicherplatz hat.
- Unterstützung für absolute Pfade in Emulator-Images hinzugefügt.
- Fügt im erweiterten Fenster für Google Play Store-Images einen neuen Tab hinzu, auf dem die Version der Google Play-Dienste und eine Schaltfläche zum Suchen nach Updates für die Google Play-Dienste angezeigt werden.
- Auf der Seite „Emulatoreinstellungen“ wurde ein Drop-down-Menü zur Auswahl des OpenGL-Renderers hinzugefügt. Wenn Sie Probleme mit dem OpenGL-Treiber auf einem Windows-Computer haben, versuchen Sie es mit den Optionen ANGLE (D3D11) oder ANGLE (D3D9) (Neustart erforderlich). Wenn Sie Probleme mit dem OpenGL-Treiber auf einem Nicht-Windows-Computer haben, versuchen Sie, den Swiftshader-Software-Renderer zu verwenden (erfordert einen Neustart).
- Behebt einen seltenen Absturz beim Beenden, wenn der Emulator sowohl den Befehl
exitals auch den Befehlminimizeempfängt. - Ein Skalierungsproblem beim Wechseln des Displays auf einem Mac wurde behoben. (Problem 268296)
- Behebt ein Problem, bei dem der Emulator 300% der CPU beansprucht und diese beibehält, nachdem der Hostcomputer aus dem Ruhemodus reaktiviert wurde oder wenn der Emulator lange Zeit ausgeführt wurde.
- Ein Absturz beim Herunterfahren des Emulators wurde behoben.
Updates mit HAXM v6.1.1 (März 2017)
Hinweis:HAXM v6.1.1 ist für Mac-Nutzer seit dem 30. März über den SDK-Manager verfügbar und wird bald auch für Windows-Nutzer verfügbar sein.
Version 26.0.0 des Android-Emulators unterstützt HAXM v6.1.1, das die folgenden Updates enthält:
- Aktiviert die Emulation von Performance Monitoring Units (PMU). (Problem 223377)
- Behebt Probleme bei der Koexistenz mit VirtualBox und Docker auf Macs. (Problem 197915)
- Überarbeitet die Installationsfehlermeldung, die angezeigt wird, wenn das Installationsprogramm Intel VT-x unter Windows nicht erkennt, normalerweise weil Hyper-V aktiviert ist.
- Unterstützung für die Beschleunigung des Android-Emulators in einer Hyper-V-basierten Windows-VM hinzugefügt. Für dieses Update muss die Host-Hyper-V-Instanz (die die Windows-VM/den Windows-Gast verwaltet) die aktuelle Version von Hyper-V mit aktivierter verschachtelter Virtualisierung verwenden. Hyper-V muss in der Hyper-V-Gastinstanz (der Windows-VM) deaktiviert sein.
Abhängigkeiten
- Android SDK-Plattformtools, Version 25.0.4 oder höher
- Android SDK Tools, Version 26.0.0 oder höher
Neue Funktionen und Fehlerkorrekturen
- Kompatibel mit API-Level 26.
- Vollständig GLES 2.0-konform. Wenn eine Host-GPU mit konformen Desktop-OpenGL-Treibern vorhanden ist, besteht der Emulator jetzt 100% der
mustpass-Liste von Android CTS dEQP-GLES2. Diese Funktion wurde für x86-Images mit API-Level 24 (Version 11 und höher) veröffentlicht und wird demnächst für alle System-Images verfügbar sein. - Verbesserte Leistung bei der Videowiedergabe. Der Emulator speichert jetzt alle Videofarb-Zwischenspeicher im gemeinsam genutzten Host-/Gast-Arbeitsspeicher und führt die erforderliche endgültige YUV-zu-RGB-Konvertierung in der GPU durch. 1080p30 sollte für die meisten Systeme mittlerweile gut erreichbar sein. Diese Funktion wurde für x86-Images mit API-Level 24 (Version 11 und höher) veröffentlicht und wird demnächst für alle System-Images verfügbar sein.
- Der Emulator meldet sich jetzt beim Beenden korrekt aus der
adb devices-Liste ab und schließt offene TCP-Ports auf Linux-Computern. - adb-Verbindungen sind jetzt zuverlässiger. Ein laufender Emulator wird schneller erkannt und wechselt nicht mehr in den Status „Offline“ oder „Nicht autorisiert“.
25.3.0 (März 2017)
Ab diesem Release wird der Android-Emulator separat von den SDK-Tools veröffentlicht. Diese Version enthält eine Vielzahl von Leistungsverbesserungen, neuen Funktionen und Fehlerkorrekturen.
Nebenversion 25.3.1 (März 2017)
- Ein Absturz, der bei einigen GPU-Konfigurationen auftrat, wurde behoben, indem GLAsyncSwap standardmäßig deaktiviert wurde.
Diese Funktion wurde in Version 25.3.0 hinzugefügt, um das Frame-Timing und die Bilder pro Sekunde für Spiele und Videos zu verbessern. Sie führt jedoch bei einigen unbekannten Maschinenkonfigurationen zu einem Fehler im Emulator. Sie können sie manuell aktivieren, indem Sie die Datei
android_sdk/emulator/lib/advancedFeatures.iniöffnen undGLAsyncSwap = onfestlegen.
Abhängigkeiten
- Android SDK-Plattformtools, Version 24 oder höher.
- Android SDK Tools, Version 25.3.0
Neue Funktionen und Fehlerkorrekturen
- Die Emulations-Engine wurde auf QEMU 2.7 aktualisiert, einschließlich aller aktuellen Fehlerkorrekturen, verbesserter Leistung und neuer Funktionen.
- Neue IPv6-Unterstützung.
- Der Emulator verwendet jetzt SwiftShader als reinen Software-Renderer auf dem Host.
- Leistungsverbesserungen bei Android Pipe: Android Pipe, der Hauptkommunikationskanal zwischen dem Emulator und dem Android-Betriebssystem, ist jetzt um eine Größenordnung schneller, hat eine geringere Latenz und bietet eine bessere Multithreading-Leistung. Dies führt zu einer Reihe von Leistungsverbesserungen für den Emulator, darunter:
- Verbesserte ADB-Push-/Pull-Geschwindigkeit.
- Bessere Unterstützung für 3D-Beschleunigung.
- Die Reaktionsfähigkeit des Emulators wurde insgesamt verbessert.
- Verbesserte Grafikleistung.
- Der Emulator verwendet jetzt GPU-seitige Zwischenspeicher (glBindBuffers/glBufferData), wenn der Gast sie anfordert. Dadurch wird der CPU-Overhead in einigen Apps verringert.
- Verbesserte Audiounterstützung.
- Schnellere Laufwerks-E/A: Der Emulator verwendet jetzt separate Threads für die Laufwerks-E/A, was zu einer geringeren Latenz und einem besseren Durchsatz führt (~1,5-fache sequenzielle E/A-Geschwindigkeit, ~5-fache E/A-Geschwindigkeit bei zufälligem Zugriff). Dadurch wird auch die Anzahl der Leerungen auf das Laufwerk reduziert, was zu einer viel geringeren physischen Gerätelast führt.
- Der Emulator verwendet jetzt dünnbesetzte Dateien für Laufwerksstarts auf Windows-Computern, wodurch sowohl der erste Start als auch der Start mit „Daten löschen“ beschleunigt wird. Beim Erstellen oder Zurücksetzen eines AVD schreibt der Emulator jetzt 100–200 MB Daten auf das Laufwerk, statt 2 GB oder mehr.
- Verschiedene GUI-Verbesserungen:
- Der Emulator verwendet jetzt Qt 5.7.0, das Fehlerkorrekturen und Leistungsverbesserungen enthält.
- Bei der UI-Initialisierung wird nicht mehr versucht, alle ausführbaren Emulator-Dateien als Qt-Plug-ins zu laden. Dadurch ist sie erheblich kürzer, insbesondere auf Festplatten.
- UI-Interaktionen sind jetzt schneller und flüssiger, einschließlich Drehung, Größenänderung von Fenstern sowie Laden und Schließen des Fensters mit erweiterten Steuerelementen.
OpenXR™ und das OpenXR-Logo sind Marken von The Khronos Group Inc. und sind in China, der Europäischen Union, Japan und dem Vereinigten Königreich als Marken eingetragen.