Versionshinweise zum Emulator

Android-Emulator ist in Android Studio enthalten.

Emulatoren wurden als Teil der Android SDK Tools vor 25.3.0 bereitgestellt.

Suchen Sie im SDK-Manager nach Updates, um zu prüfen, ob Sie die neueste Version haben.

Informationen zum Herunterladen früherer Versionen des Android-Emulators finden Sie im Archiv zum Herunterladen des Emulators.

Versionshinweise für Emulator-Versionen vor 25.3.0 finden Sie in den Versionshinweisen für Android SDK Tools.

Informationen zu bekannten Problemen und zur Fehlerbehebung finden Sie unter Emulator-Fehlerbehebung.

34.1.20 (1. April 2024)

Getestet mit der stabilen Android Studio Iguana App.

  • [Fehlerkorrektur] Problem #314614435: Problem behoben, bei dem der -http-proxy-Schalter nicht richtig geparst wurde

34.1.19 (7. März 2024)

Getestet mit der stabilen Android Studio Iguana App.

  • [Fehlerkorrektur] Problem #312677259: Das Einfrieren des Bildschirms im eingebetteten Emulator nach Größenanpassung des Fensters wurde behoben.

34.1.18 (29. Feb. 2024)

Getestet mit der stabilen Android Studio Iguana App.

  • Dem Emulator wurden folgende Geräte hinzugefügt:
    • Google Pixel Fold
    • Google Pixel Tablet
    • Google Pixel 8
    • Google Pixel 8 Pro
    • Google Pixel 7a
  • gRPC-Integrationstest: gRPC-Endpunkte sind jetzt für instrumentierte Tests verfügbar, die im Emulator ausgeführt werden und das Testen realistischer Szenarien ermöglichen. Mit dieser Funktion können Entwickler über Android-Instrumentierungstests sicher mit dem gRPC-Endpunkt interagieren, der vom Android Emulator gehostet wird.
  • Verschiedene Fehlerkorrekturen
    • Fehlerkorrektur: Verbesserungen bei der Nutzerfreundlichkeit von faltbaren Geräten
    • Fehlerkorrektur: Position des Emulators nach der Rotation anpassen
    • Behebung von Abstürzen

33.1.24 (28. Dezember 2023)

Getestet mit Android Studio Hedgehog Stable und Iguana Beta 1.

  • Behebung eines Webcam-Problems im Emulator, das keine Bildschirmaufzeichnung im MP4-Format zulässt
  • Der Emulator-Absturz des AVD wurde behoben, wenn es während einer Bildschirmaufzeichnung aufgeklappt wurde.
  • Problem behoben, bei dem Pixel Fold mit einer abgenommenen Tastatur einen anderen Smartphone-Skin zeigt und nicht nutzbar ist (unter Windows, Mac Intel und Linux behoben)
  • Darstellungsfehler bei den virtuellen Sensoren im Standalone-Modus behoben (unter Windows, Mac Intel und Linux)
  • Fehlerkorrekturen für einige Abstürze, insbesondere beim Schließen des Emulators, wurden behoben.

33.1.23 (30. November 2023)

Getestet mit Android Studio Giraffe Patch 4 und Hedgehog Stable.

  • Neue faltbare Implementierung, um Pixel Fold besser zu emulieren, funktioniert mit der neuesten API 34
  • Grafik-Backend-Upgrade: Wir haben das gfxstream-Protokoll für unser Grafik-Backend implementiert. Diese Verbesserung verbessert die Gesamtgrafikleistung und -stabilität Ihres Systems. Außerdem wird die Unterstützung für Vulkan 1.3 eingeführt, beginnend mit dem Systemimage und der API 34.
  • Funktionsanfrage: Option, um die Touch-Geste zum Zoomen auseinander- und zusammenziehen zu können oder den Hotkey neu zuzuweisen
  • [Fehlerkorrektur] Problem #302562962 Behebung des Emulator-Webcam-Absturzes bei Verwendung von macOS Sonoma
  • [Fehlerkorrektur] Problem #293503871 Problem behoben, bei dem die Mikrofoneinstellung beim Neustart des Emulators nicht gespeichert wurde
  • [Fehlerkorrektur] Problem #270386314 Animationsfehler behoben, bei dem die Seitenleiste geöffnet blieb, nachdem der AVD-Bildschirm minimiert wurde
  • [Fehlerkorrektur] Problem #154896775 Fehler im Tool zur Fehlerbehebung beheben

32.1.15 (29. August 2023)

Getestet mit Android Studio Giraffe Patch 1 und Hedgehog Canary 16.

  • GAS HW-Anforderungen für Sensoren im AAE-Emulator erfüllen
  • [Fehlerkorrektur] Problem #266201208 Hebräische SMS werden nicht an API 33 gesendet
  • [Fehlerkorrektur] Problem #257097404 Emulator zeigt nach dem Aktivieren des Hosts in API 29 und 30 nicht die korrekte Zeit an
  • [Fehlerkorrektur] Problem #228201899 Google Maps kann in den erweiterten Steuerelementen des Android Emulators nicht angezeigt werden

32.1.14 (27. Juni 2023)

Getestet mit Android Studio Hedgehog Canary 8, Giraffe Beta 5 und Flamingo Sttable.

  • Kameraausrichtungen und -verzerrungen des Emulators wurden korrigiert.
  • [Fehlerkorrektur] Problem #257097404 „Emulator zeigt nach dem Aktivieren des Hosts nicht die richtige Zeit an.“ Dieser Fehler ist für API 29 und API 30 weiterhin reproduzierbar.
  • [Fehlerkorrektur] Problem #243456582 „Android-Versionen nach API 30 werden auf Mac M1-Computern möglicherweise nicht richtig im Emulator gestartet“

32.1.13 (22. Mai 2023)

Getestet mit Android Studio Hedgehog Canary 2, Giraffe Beta 1 und Flamingo Stable.

  • AVDs für Pixel Fold und Pixel Tablet werden jetzt unterstützt.
  • gLinux-Absturzproblem wurde verbessert.
  • [Fehlerbehebung] Problem #215231636 „Emulator mit API über API 30 funktioniert nicht mit Intel-Prozessor der 12. Generation“.
  • [Fehlerkorrektur] Problem #275397905 Allgemeiner Absturz im Android Emulator M1, wenn der Cursorfokus wiederholt in den Emulator und aus dem Emulator bewegt wurde.
  • Bekanntes Problem bei der Einführung von AVD Problem 281725854 Weitere Informationen finden Sie unter Emulator-Fehlerbehebung.

32.1.12 (21. März 2023)

Getestet mit Android Studio Giraffe Canary 10, Flamingo RC und Electric Eel Patch 2.

  • [Fehlerkorrektur] Problem #267647323 Netzwerk funktioniert nicht in Emulator, der über Android Studio gestartet wurde
  • [Fehlerkorrektur] Problem #268498686 Emulator-Bildschirm flackert
  • [Fehlerkorrektur] Problem #270034824 Die Leistung des Emulators hat sich nach dem Update auf Version 33.1.1 verschlechtert.
  • [Fehlerkorrektur] Problem #225541819 Beim Starten des Chrome-Emulators auf x86_64 stürzt der Emulator ab.
  • [Fehlerkorrektur] Problem #257097404 Im Emulator wird nach dem Aktivieren des Hosts nicht die korrekte Zeit angezeigt
  • 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.

  • Optimierte Netzwerkgeschwindigkeit
  • Mausunterstützung im eingebetteten Emulator
  • Virtio-Snd-Verbesserungen
  • Verwendung von Symlinks beim Entpacken des Android-Emulators während der Installation deaktivieren
  • Absturz beim Emulator-Check beheben

31.3.14 (13. Dezember 2022)

Getestet mit Android Studio Dolphin, Electric Eel RC1 und Flamingo Canary 9.

  • [Fehlerkorrektur] Behebung von AVD-Abstürzen bei der Anmeldung im Play Store

31.3.13 (27. Oktober 2022)

Getestet mit Android Studio Dolphin, Electric Eel Beta 2 und Flamingo Canary 5.

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 des relativen AVD-Pfads
  • 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] AVD-Absturz im eingebetteten Emulator im Fenster mit erweiterten Steuerelementen
  • [Fehlerkorrektur] Problem 183139207:Audioprobleme im Zusammenhang mit der Aktivierung des Mikrofons im Emulator
  • [Fehlerkorrektur] Problem #229764024:AVD-Fehler bei fixierter Touchbedienung, der zu Problemen mit dem UI-Verhalten 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:Nicht funktionierender Google Maps-Standort unter Windows und Linux
  • [Fehlerkorrektur] Problem #232971796:Schaltfläche „Gerät anrufen“ auf der Seite „Erweiterte Steuerung“ > „Telefon“ funktioniert nicht
  • Android-Emulator auf minigbm aktualisieren
  • Migration von Build-Skripts zu Python 3

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 diesem aktuellen stabilen Release Probleme auftreten oder Abstürze auftreten, melden Sie den Fehler und laden Sie gegebenenfalls eine zuvor funktionierende Version aus den Download-Archiven des Emulators herunter.

Dieses Update enthält die folgenden Verbesserungen und Fehlerkorrekturen:

  • Bessere Unterstützung von Unicode-Pfaden unter Windows
  • Das Herunterfahren des Emulators wurde verbessert, damit ein neuer Start desselben AVDs erfolgreich sein kann.
  • Aktualisiertes AVD-Design faltbarer Geräte und Standardeinstellungen
  • Wear-Emulator-Schaltflächen aktualisiert
  • Verbesserungen beim gRPC-Audiostreaming
  • Emulator-Konsolenbefehl mit anpassbarer Größe hinzugefügt
  • Chrome-Fix für API 31
  • [Fehlerkorrektur] Authentifizierung des Google-Kontos 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 umfasst die folgende Fehlerbehebung:

  • [Fehlerkorrektur] Arbeitsspeicherauslastung beim Speichern von Snapshots in 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
  • [Fehlerbehebung] Problem Nr. 215368358: „adbReboot“ (ADB-Neustart) auf der Intel-Plattform stürzt avd mit der Anfrage zum Herunterfahren von vcpu ab

31.2.7 (1. Februar 2022)

Getestet mit Android Studio Bumblebee Patch 1 und Chipmunk Canary 6.

Dieses Update umfasst die folgende Fehlerbehebung:

  • [Fehlerkorrektur] Fehler beim Aufhängen des Emulators auf M1-Rechnern.

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:

  • Wear OS-Emulatoren wurden hinzugefügt.
  • Alle Fahrzeugeigenschaften können auf dem Tab „VHAL“ bearbeitet werden.
  • [Fehlerkorrektur] Authentifizierung des Google-Kontos mit GmsCore-Version 21.42.18 fehlgeschlagen.
  • [Fehlerkorrektur] Netshaper funktionierte nicht gut mit VirtioWifi.
  • [Fehlerkorrektur] Der Befehl der Mauskonsole für das Ereignis 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:

  • Konsolen-Ports für Fuchsia aktiviert
  • Beim Ändern der Größe eines Multi-Display-Fensters wird die Ausrichtung ignoriert.
  • WLAN: Unterstützung zum Herausfiltern von Unicast-Paketen basierend auf der MAT-MAC-Adresse wurde hinzugefügt.
  • WLAN: Der Absturz bei Verwendung von VMware ist behoben.

30.9.5 (15. Dezember 2021)

Dieses Update enthält die folgenden Verbesserungen und Fehlerkorrekturen:

  • Möglichkeit zur einfachen Anpassung an ein Fenster in der Größe eines Desktop- oder Tablets.
  • Multi-Touch-Eingabe von kompatiblen Hostgeräten wird jetzt unterstützt.
  • VirtioWifi: Unterstützung für mobiles Netzwerk hinzugefügt.
  • Dreheingabe für Wear-System-Images aktiviert.
  • Das gRPC-Audiokonfigurationsproblem wurde behoben.
  • Die Wiedergabe des SensorReplay-Emulators wurde zur Unterstützung der standardmäßigen Android-Sensoren aktualisiert.
  • Der Emulator wurde über einen USB-Anschluss 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 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: Aktualisierte Definitionen zur Unterstützung der neuesten Blob-Ressourcen-Enums.
  • Snapshot-Unterstützung für Grafikübertragungen vom Typ „asg“ wurde hinzugefügt.
  • macOS: Unterstützung für die Entwicklung nach macOS SDK 11.1+.
  • KVMclock ist auf neueren System-Images standardmäßig aktiviert.
  • Wear-Emulatoren unterstützen jetzt einen Herzfrequenzsensor.
  • Libportability-vulkan-Backend entfernt.
  • Im Modemsimulator werden jetzt weitere Funktionen unterstützt.

30.0.26 (16. August 2020)

Dieses Update umfasst mehrere neue Funktionen und Verbesserungen bestehender Funktionen sowie Fehlerkorrekturen.

Unterstützung für faltbare Smartphones mit virtuellem Scharniersensor und 3D-Ansicht

  • Unterstützung für Scharniersensoren für faltbare Geräte. Dafür sind ein zukünftiges Android 11-System-Image und eine AVD-Konfiguration erforderlich. Die Parameter für faltbare 3D-Ansicht und Scharnier sind jetzt in die vorhandenen Voreinstellungen für faltbare Smartphones integriert. Die folgenden Elemente können beispielsweise mit der config.ini-Datei des faltbaren AVDs mit 7,3 Pixel 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=4
    
  • Faltbare Geräte verfügen jetzt auch über einen Untertyp-Parameter. Das config.ini-Attribut hw.sensor.hinge.sub_type = hinge/fold ist jetzt verfügbar. Weitere Informationen finden Sie im Blogpost Mit dem Android-Emulator für Android 11 entwickeln.

  • Scharniersensor ist jetzt standardmäßig aktiviert.

  • Wenn ein faltbares Gerät konfiguriert ist, sendet der Emulator jetzt Updates von Scharnierwinkelsensoren und Änderungen der Körperhaltung an den Gast. Auf vorhandenen faltbaren Geräten werden jetzt der Winkel und die Haltung des Scharniersensors aktualisiert, wenn die Schaltfläche zum Auf- und Zuklappen der Symbolleiste gedrückt wird.

Emulator für ARM64-Hosts

  • Der Quellcode des Linux-Emulators unterstützt jetzt die Kreuzkompilierung 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 aber auch ein kompatibler Satz von Host-GPU-Bibliotheken vom Typ libEGL/libGLESv2 verwendet werden. Ersetzen Sie dazu lib64/gles_swiftshader und starten Sie den Dienst dann mit -gpu swiftshader_indirect neu. Snapshots funktionieren möglicherweise auch nicht (fügen Sie -no-snapshot in die Befehlszeile ein). Anweisungen:

    mkdir emu
    cd emu
    repo init -u https://android.googlesource.com/platform/manifest -b emu-master-dev --depth=1
    repo sync -qcj 12
    cd external/qemu
    pip install absl-py
    pip install urlfetch
    sudo apt-get install crossbuild-essential-arm64
    python android/build/python/cmake.py --noqtwebengine --noshowprefixforinfo --target linux_aarch64
    
  • Unterstützung für Apple Silicon läuft derzeit.

Virtio-GPU-Unterstützung

  • Zusätzliche Unterstützung auf der Hostseite für künftige kohärente Blob-Ressourcen des virtio-gpu-Hosts.
  • Aufgrund der Funktionsweise des Emulator-Renderings wird virtio-gpu virtqueue im vcpu-Thread verarbeitet (da das Rendering ohnehin in andere Threads übertragen wird). Das Virtio-gpu-Rendering wird in einer zukünftigen System-Image- und Emulator-Version aktiviert.
  • In einem zukünftigen System-Image wird der Emulator alle Grafiken mit einem Virtio-gpu-basierten Stack ausführen können.

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. (Damit sollte auch schon unter Linux und macOS gearbeitet worden sein.)
  • WebRTC-Bibliotheken wurden auf M83 aktualisiert.
  • Der Emulator unterstützt jetzt Audiostreaming in Containern über WebRTC.
  • Der Endpunkt der Darwinn-Pipe wurde entfernt.
  • Die CUDA VPx-Decodierung für Videos ist jetzt über die Umgebungsvariable ANDROID_EMU_MEDIA_DECODER_CUDA_VPX=1 verfügbar, wenn die CUDA VPx-Decodierung auf der Hardware verfügbar ist.
  • Unter macOS sind SSE 4.1 und 4.2 jetzt im Android-Gastprofil verfügbar.
  • Unter macOS ist INVTSC jetzt standardmäßig aktiviert. Dies kann die Genauigkeit von Zeitmessungen durch den Gast verbessern.
  • In den Messwerten wird jetzt erfasst, welches erweiterte Steuerfeld vom Nutzer ausgewählt wurde.
  • Der Linux-Emulator verwendet jetzt die paravirtualisierte KVM-Uhr, wenn die Gast-Kernel-Version mindestens 5.4 ist (R-System-Images oder höher).
  • Der Emulator verwendet jetzt LZ4, um Gast-Kernel zu dekomprimieren, wodurch er mit der modernen Kernel-Pipeline kompatibel ist.
  • Es wurden Konsolenbefehle zum Abrufen des AVD-Verzeichnisses des Emulators, des Pfads der Discovery-Datei im in Studio eingebetteten Anwendungsfall und des Pfads zu den Snapshots hinzugefügt:

    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>
    
  • Unter Erweiterte Steuerung > Einstellungen kannst du jetzt für das aktuelle AVD eine Option zum Ausblenden des Geräterahmens auf dem vertikalen Bildschirm nutzen. Um Geräte-Frames für alle AVDs global auszublenden, haben wir das Funktions-Flag NoDeviceFrame zur Verfügung gestellt. Es kann aktiviert werden, indem Sie den Emulator über die Befehlszeile mit dem Frame -feature NoDevice starten oder es sperren, indem Sie NoDeviceFrame = on zu ~/.android/advancedFeatures.ini hinzufügen. Erstellen Sie diese Datei, falls sie noch nicht vorhanden ist.

  • Auf der Mobilfunkseite wurde ein Drop-down-Element zum Aktivieren und Deaktivieren der Meterdness-Unterstützung hinzugefügt. Dies ist ein Leerbefehl für ältere System-Images, die die Ein/Aus-Schaltfläche für die 5G-Messung nicht unterstützen.

    • Außerdem wurde ein Konsolenbefehl für denselben Zweck hinzugefügt: gsm meter on|off
  • Toolchain wurde aktualisiert bzw. Build wurde auf C++17 aktualisiert.

Fehlerkorrekturen: Integrierter Emulator

  • Die Zwischenablage sollte jetzt funktionieren.
  • Ein Problem wurde behoben, bei dem Großbuchstaben im Emulator als Kleinbuchstaben angezeigt wurden.
  • Das Laden des Konsolentokens aus einem Unicode-Pfad in Windows wurde korrigiert.
  • Die SO_REUSEPORT-Fehlermeldung unter Linux wurde behoben.
  • Es wurde ein Problem mit Snapshot-Beschädigungen behoben, das beim Senden von Snapshot-Befehlen über gRPC und beim Klicken auf die Schaltfläche zum Speichern des Snapshots im eingebetteten Emulator von Android Studio aufgetreten ist.
  • Bei der Verwendung des in Studio eingebetteten Linux-Emulators haben wir festgestellt, dass bei Verwendung von Chrome Remote Desktop ein Fehler auftritt, durch den XDG_RUNTIME_DIR nicht festgelegt ist. Dies kann dazu führen, dass der eingebettete Emulator nicht angezeigt wird, da die Emulator-Erkennungsdateien unter XDG_RUNTIME_DIR platziert werden. Sie können den Status des entsprechenden Problems in der Chrome-Problemverfolgung einsehen.

    Als Behelfslösung verwendet der Emulator jetzt Erkennungsdateien in einem möglicherweise anderen Verzeichnis, das auf der Nutzer-UID basiert: /run/user/&lt;uid>.

  • Eingebetteter Emulator: Bei Geräten mit abgerundeten Ecken/Einkerbungen wird jetzt das Layout richtig angepasst, um Platz für die Ecken und Einkerbungen zu schaffen. Dafür ist ein Kaltstart der Emulatoren erforderlich.

  • Der gRPC-Endpunkt unterstützt jetzt das Senden von SMS an das Gerät.

Allgemeine Fehlerbehebungen

  • Wir haben Kompatibilitätsprobleme beim Ausführen des Windows-Emulators mit aktiviertem Riot Vanguard festgestellt. Der Windows-Emulator erkennt jetzt Vanguard Anti-Cheat und zeigt eine Warnmeldung an, wenn Vanguard erkannt wird.
  • Der Fehler FD_SETSIZE unter Windows wurde behoben. Zum Herstellen nicht blockierender Verbindungen zu Loopback-Servern wird jetzt WSAEventSelect() anstelle von select() verwendet.
  • Der Linux-Emulator unterstützt jetzt die F16C-CPUID. Dabei wurden Probleme beim Ausführen einiger ARM64-Anwendungen über NDK-Übersetzung (macOS/Windows in Bearbeitung) behoben.
  • Die Wiedergabe von gpx/KML-Routen wurde so korrigiert, dass sie Zeitstempeln folgt.
  • Problem mit dem hüpfenden Symbol beim Start unter macOS behoben.
  • Wenn hw.audioInput=no und hw.audioOutput=no in config.ini sind, ist das Emulator-Audio jetzt ordnungsgemäß deaktiviert.
  • Ein Problem wurde behoben, bei dem das Emulatorfenster beim Ändern der Größe des Emulatorfensters weiterhin angezeigt wurde, wenn das Emulatorfenster minimiert wurde, während das erweiterte Fenster für Steuerelemente geöffnet, aber nicht aktiv war. In einem zukünftigen Update wird das Verhalten (der Fall mit aktivem erweiterten Fenster für Steuerelemente) vollständig entfernt.
  • Ein instabiler Fehler, bei dem beim Start des Emulators keine WLAN-Verbindung hergestellt wurde, wurde behoben.
  • Das Problem mit dem Hang-on-Exit, wenn der Emulator Shell-Befehle mit langen oder unbestimmten Zeitüberschreitungen ausgibt, wurde behoben.
  • pc-bios wurden mit Korrekturen aktualisiert, um große Bilder, die an -initrd übergeben wurden, besser zu unterstützen. Beim vorherigen BIOS wurde eine sehr ineffiziente Methode verwendet.
  • Der Absturz beim Beenden bei Verwendung der -wifi-server-port-Option wurde behoben.
  • Der Emulator gibt jetzt eine Warnung aus, wenn nicht unterstützte Optionen an -prop übergeben werden. Es werden nur qemu.*-Attribute unterstützt.
  • Wenn Sie den Emulator unter Windows erstellen, sollte das Risiko von unzuverlässigen Fehlern beim Schreiben in Dateien geringer sein. Weitere Informationen finden Sie in der Windows-Build-Anleitung.
  • Die Zoomschaltfläche für faltbare AVDs wurde deaktiviert, was zu Problemen geführt hat.
  • Der Emulator meldet jetzt korrekt die Startzeit, die durch einen Geräteneustart verursacht wird.
  • Linux: Wenn die KVM-Berechtigungen unzureichend sind, gibt der Emulator jetzt Anweisungen zur Fehlerbehebung schneller aus.
  • Ein Problem wurde behoben, bei dem der Emulator aktuelle System-Images nicht ohne Beschleunigung starten konnte.
  • Speicherbeschädigung oder Abstürze beim Start bei Detektoren nach Abschluss des Bootvorgangs wurden behoben.
  • Speicherleck bei langen Bildschirmaufzeichnungen behoben.
  • Emulator-Symbole wurden aktualisiert, um das Studio 4.1-Branding widerzuspiegeln.
  • Die Erkennung von Remote-Sitzungen unter Windows wird jetzt besser unterstützt.

Fehlerkorrekturen: Grafik- und Video-Decodierung

  • Das aktuelle Spiel von Asphalt 9 wurde mit einem schwarzen Bildschirm gerendert. Dieses Problem wurde behoben.
  • Spam zum Leeren des zugeordneten Puffers mit NULL wurde entfernt.
  • Eine Race-Bedingung beim Löschen des Vulkan-Status beim Beenden einer Vulkan-Gast-App wurde behoben.
  • Emulation-Shader von Vulkan ASTC/ETC2 sind jetzt in der libOpenglRender-Bibliothek verankert. Dies ist zuverlässiger als das Lesen aus dem Dateisystem.
  • Ein Problem in Vulkan wurde behoben, bei dem vkGetImageMemoryRequirements2KHR bei Ausführung mit einer Vulkan 1.0-Instanz auf dem Host fälschlicherweise das Feld pNext der zurückgegebenen VkMemoryRequirements2-Struktur löscht.
  • Ein Speicherleck im Vulkan-Renderer wurde behoben.
  • Eine kürzlich durchgeführte Regression wurde behoben, bei der GLSL ES 1.00-Shader mit Variablennamen wie isampler2D nicht kompiliert werden konnten.
  • Der ANGLE-Shader-Übersetzer wurde mit verschiedenen Fehlerkorrekturen aktualisiert, um mögliche Fehler beim Kompilieren von Shadern unter Linux zu beheben.
  • Wir stürzen jetzt den Emulator ab, wenn der grundlegende Framebuffer-Blit-Shader nicht kompiliert werden kann, um das Phänomen nachzuverfolgen.
  • Der ANGLE-Shader-Übersetzer wurde aktualisiert, um mit dem vorgelagerten ANGLE Schritt zu halten. Dadurch wurde ein Problem mit Speicherschäden bei der Übersetzung und konstant faltbaren OpenGL ES-Shader behoben, die nicht quadratische Matrizen verwendeten. Der Shader-Übersetzer ist jetzt die 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 das Vulkan-Ladesystem des Systems zu Problemen geführt hat. Wir arbeiten an einer besseren Lösung.
  • Ein Problem bei der Verwendung des externen Vulkan-Speichers wurde behoben, bei dem nicht übereinstimmende Speichertypindexe auf dem Host importiert wurden.
  • Ein Problem bei der Emulation von GL_ALIASED_POINT_SIZE_RANGE, bei dem die Enumeration auf dem Host nicht unterstützt wurde, wurde behoben.
  • Ein Problem wurde behoben, bei dem Skia-Shader auf einigen Host-GPUs aufgrund von Fehlern im Zusammenhang mit GL_EXT_shader_framebuffer_fetch nicht kompiliert werden konnten.
  • Da unsere Kopie des Renderer D3D9 ANGLE vor einigen Versionen entfernt wurde, wechseln wir nun auch Nutzer, die diesen Renderer verwendet haben, automatisch auf d3d11 ANGLE um, wenn diese Option in den UI-Einstellungen ausgewählt wurde.
  • Der WGL-Initialisierung unter Windows wurden weitere Informationen zur Fehlerbehebung hinzugefügt, um Fehler zu verfolgen.
  • Mit hw.gltransport=virtio-gpu-pipe wird die Leistung verbessert, weil der Host bei der Übertragung von Host zu Gast nicht gestartet wird.
  • Zusätzliches Debugging-Logging für den Fall, dass die OpenGLES-Emulation nicht initialisiert werden kann, wurde hinzugefügt.
  • YouTube-Videos flackern oder wurden beim Laden eines Snapshots nicht angezeigt. Dieses Problem wurde behoben.
  • Wir sind vorerst wieder zur Software-Decodierung für libvpx gewechselt, 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=1 wieder aktiviert werden.

30.0.10 (30. April 2020)

Dieses Update umfasst Unterstützung für die direkte Ausführung des Emulators in Android Studio und auf virtuellen Geräten, auf denen standardmäßig der Freiformfenstermodus aktiviert ist.

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, mithilfe von Hotkeys schnell zwischen dem Emulator und dem Editorfenster wechseln sowie den IDE- und Emulator-Workflow in einem einzigen Anwendungsfenster organisieren.

Modus für Freiformfenster

Sie können jetzt ein AVD mit aktiviertem Freiformfenstermodus erstellen.Wählen Sie dazu beim Erstellen eines virtuellen Geräts in Android Studio das 13,5"-Hardwareprofil für das Freeform-Tablet aus. Für dieses Hardwareprofil ist ein Systemimage mit Android 11 Developer Preview 3 oder höher erforderlich.

Bekannte Probleme

Das Ändern der Größe von Freiformfenstern funktioniert derzeit aufgrund von Problemen beim Übertragen des Fokus auf den Fenstermanager nicht. Dieses Problem wird in einer zukünftigen System-Image-Version von Android 11 behoben.

30.0.0 (19. Februar 2020)

Dieses Update umfasst System-Images von Android 11 (API-Level 30) und eine verbesserte Leistung bei der Ausführung von ARM-Binärdateien.

Android 11-System-Images

Sie können jetzt ein AVD erstellen, das unter Android 11 ausgeführt wird. Dazu wählen Sie eines der verfügbaren System-Images für API-Level 30 aus:

  • x86: Umfasst sowohl x86- als auch ARMv7-ABIs.
  • x86_64: Umfasst x86-, x86_64-, ARMv7- und ARM64-ABIs.

Unterstützung für ARM-Binärprogramme unter Android 9 und 11 System-Images

Wenn Sie den Android-Emulator bisher nicht verwenden konnten, da Ihre App auf ARM-Binärdateien basierte, können Sie jetzt das System-Image von Android 9 x86 oder ein beliebiges Android 11-System-Image zur Ausführung Ihrer App verwenden. Es ist nicht mehr erforderlich, ein bestimmtes System-Image herunterzuladen, um ARM-Binärdateien auszuführen. Diese System-Images von Android 9 und Android 11 unterstützen ARM standardmäßig und bieten im Vergleich zu Bildern mit vollständiger ARM-Emulation eine deutlich verbesserte Leistung.

Bekannte Probleme

  • Einige ARMv7-Binärdateien funktionieren auf System-Images von Android 11 x86 und x86_64 nicht. Du solltest die App für ARM64 entwickeln, wenn du sie auf Android 11 ausrichtest.

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 mit libgcc kompiliert zu werden.
  • Linux: Logcat-Unterstützung für die gRPC API wurde hinzugefügt. Weitere Informationen zu gRPC finden Sie unter gRPC-Streaming-Emulator (Linux).
  • Der Emulator enthält jetzt einen monitorlosen Build für 32-Bit-x86-Gäste (qemu-system-i386). Mit diesem Feature können x86-32-Bit-Images für API-Level 26 und niedriger mit dem monitorlosen 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 bei diesen System-Images der Kernel 64 Bit, obwohl der Userspace 32-Bit umfasst, 64 Bit. Android Studio verwendet den Kernel zur Auswahl von Emulations-Engines.
  • Sie können jetzt benutzerdefinierte Qt-Bibliothekspfade mithilfe der Umgebungsvariablen ANDROID_QT_LIB_PATH angeben.
  • 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 gespeichert sind.
  • Windows: Es wurde ein Problem behoben, das manchmal dazu führen konnte, dass der Emulator nicht mit der Meldung „Anfrage zum Herunterfahren von vCPUs“ gestartet wurde.
  • Ein Problem mit einer unnötigen Pipelinebarriere in emulierten komprimierten Texturen in Vulkan wurde behoben.
  • Ein Fehler wurde behoben, der bei HTTP-Proxy-Anfragen bei Verwendung der aufgeteilten Transferverschlüsselung auftrat. Weitere Informationen finden Sie unter Commit-Details.

29.0.9 (7. Mai 2019)

Dieses Update umfasst die folgende Fehlerbehebung:

  • Windows: Ein Problem wurde 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:

  • Zusätzliche Unterstützung für mehrere virtuelle Hardware-Bildschirme, wenn ein Gastdienst vorhanden ist, um jede Anzeige aufzulisten und festzulegen. In einem zukünftigen System-Image-Update für den Emulator werden mehrere virtuelle Hardware-Bildschirme enthalten sein.
  • Neue Befehlszeilenoption hinzugefügt: -delay-adb. Diese Option unterdrückt die Verarbeitung von ADB-Paketen, bis der Gaststart (aus einem Kaltstart) abgeschlossen ist. Mit dieser Option lassen sich Probleme beheben, die auftreten können, wenn Sie den Emulator in einer CI-Umgebung verwenden, die den Emulator neu startet und gleichzeitig DDMS verwendet.
  • Ein Fehler wurde behoben, der beim Laden von Snapshots auftrat und bei dem glIsRenderbuffer den falschen Wert zurückgibt.
  • Einige Probleme mit dem veralteten Status beim Neustart von Android-Gast wurden behoben.
  • Windows: Probleme behoben, bei denen der Emulator nicht gestartet wurde, wenn der Windows-Nutzername Nicht-ASCII-Zeichen oder Leerzeichen enthielt.

Bekannte Probleme

  • Die Snapshot-UI 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 umfasst mehrere neue Funktionen und Verbesserungen bestehender Funktionen sowie Fehlerkorrekturen.

Unterstützung von QEMU1 und 32-Bit-Windows wurde eingestellt

Zur besseren Wartung des Emulators liefern wir keine QEMU1- und 32-Bit-Windows-Binärdateien mehr aus. Wenn Sie die 32-Bit-Version von Windows verwenden, ist kein Upgrade auf Version 29.0.6 möglich.

Anforderungen an Android Q-Systembilder

Wenn Sie ein AVD ausführen möchten, das ein Android Q-System-Image verwendet, müssen Sie jetzt Version 29.0.6 (diese Release-Version) oder höher verwenden.

Projekt Marble-Verbesserungen

Mit diesem Update setzen wir unsere Arbeit an der Initiative Project Marble fort, die auf dem Android Developer Summit im November 2018 angekündigt wurde. Weitere Informationen zu anderen Verbesserungen für Project Marble in früheren Releases finden Sie unter Android-Emulator: Project Marble-Verbesserungen.

Bei diesem Update ging es bei Project Marble hauptsächlich darum, die Nutzung von Emulator-Ressourcen zu reduzieren, z. B. die CPU-Nutzung des Emulators bei Inaktivität. Außerdem haben wir Änderungen vorgenommen, die die Arbeit mit dem Emulator in einer Vielzahl von Umgebungen vereinfachen, und wir haben allgemeine Qualitätsprobleme behoben.

In den folgenden Abschnitten werden die Verbesserungen von Project Marble beschrieben, die in dieser Aktualisierung enthalten sind:

Verbesserungen beim Audioverhalten des Hosts

Ab Version 28.0.3 blockiert der Emulator die Audioeingabe vom Host standardmäßig.

Wenn Sie die Host-Audiodaten verwenden möchten, können Sie diese Option aktivieren. Rufen Sie dazu Erweiterte Steuerelemente > Mikrofon auf und aktivieren Sie die Option Virtuelles Mikrofon verwendet Host-Audioeingabe. Diese Option wird bei jedem Neustart des Emulators automatisch deaktiviert.

Wenn Sie die Befehlszeile verwenden, können Sie die Hostaudiodaten auch mit der Option -allow-host-audio aktivieren und die folgenden ADB-Befehle verwenden, um Host-Audiodaten ein- bzw. auszuschalten:

  • adb emu avd hostmicon
  • adb emu avd hostmicoff

Verbesserungen bei monitorlosen Emulator-Builds

Ab Version 28.0.25 enthält der Emulator eine monitorlose Build-Option, die ohne die UI ausgeführt werden kann. Mit monitorlosen Builds können Sie den Emulator für Docker- und CI-Workflows (Continuous Integration) einrichten.

Mit diesem Update wurden weitere Verbesserungen vorgenommen, damit der Emulator mit einer Mindestanzahl von Abhängigkeiten ausgeführt werden kann. Unter Linux enthalten monitorlose Builds nicht mehr die Bibliotheken pulseaudio oder libX11. Die systemabhängigen freigegebenen Bibliotheken, die nicht im Paket mit dem Emulator gepackt sind, wurden auf die folgende Liste reduziert:

  • Linux-vdso.so.1
  • Libutil.so.1
  • Libm.so.6
  • Libdl.so.2
  • Librt.so.1
  • Libpthread.so.0
  • Libgcc_s.so.1
  • Libc.so.6
  • ld-linux-x86-64.so.2

Qt-UI-Bibliotheken auf Version 5.12 LTS aktualisiert

Dieses Update enthält im Vergleich zur Version 5.12 LangzeitTS die folgenden Verbesserungen:

  • Um Abstürze bei der libpng-Decodierung von Qt beim Starten bestimmter Systemimages zu vermeiden, verwendet der Emulator jetzt eine eigene Kopie von libpng, um PNG-Images zu decodieren.
  • Um Probleme mit Linux-Installationen zu beheben, die inkompatible Versionen einiger Qt-abhängiger Bibliotheken enthalten, verpacken wir jetzt libfreetype, libsoftokn, libsqlite3 und libxkbcommon mit dem Emulator.
  • Der Emulator verwendet jetzt die nativen Windowing-Bibliotheken der Plattform zum Abrufen von Monitordimensionen, anstatt die Qt-Bibliotheken zu verwenden, die unzuverlässige Ergebnisse zurückgegeben haben.

Automatische CPU-Optimierung nach Kaltstart

Zum Beheben der CPU-Auslastung führt der Emulator jetzt die folgenden ADB-Befehle bei einem Kaltstart 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 Ausschalten des Bildschirms erhöht, damit der Emulator im Akkumodus ohne Aufladen verwendet werden kann. Im Akkumodus wird die CPU-Nutzung im Hintergrund erheblich reduziert.
Im Wechselstrom-Lademodus können GMSCore-Hintergrundvorgänge wie App-Updates alle CPU-Kerne des Geräts – und somit auch den Computer des Nutzers – ohne Warnung übernehmen.
adb shell pm revoke com.google.android.googlequicksearchbox android.permission.RECORD_AUDIO
Mit diesem Befehl werden die Mikrofonberechtigungen der Google Suche App widerrufen. Dadurch wird die CPU-Nutzung im Hintergrund auf dem Startbildschirm und im Launcher stark reduziert, wenn die Google Suche App aktiv ist.
Dieser Befehl wird zusätzlich zum Standardverhalten des Emulators ausgeführt, bei dem die Host-Audiofunktion für den Host deaktiviert wird. Darüber hinaus wird dadurch automatisch die Reduzierung der CPU-Auslastung erreicht, die für die Hotword-Erkennung aus Version 28.0.23 beschrieben ist.

Neue Umgebungsvariablen für die Leistungsüberwachung

Sie können jetzt zwei neue Umgebungsvariablen verwenden, um ein detailliertes Monitoring der Leistung und der Ressourcennutzung des Emulators zu ermöglichen.

SHOW_PERF_STATS=1
Diese Umgebungsvariable ermöglicht das Tracking der CPU- und RAM-Nutzung. Bei der Erfassung der RAM-Nutzung wird zwischen Grafiknutzung und insgesamt residentem Arbeitsspeicher unterschieden.
ANDROID_EMU_TRACING=1
Diese Umgebungsvariable ermöglicht das Drucken jedes Mal, wenn ein Eingabe- oder Grafikvorgang sehr lange dauert (länger als 1 ms).
Wir verwenden diese Umgebungsvariable auch zur Diagnose von Problemen, die bei Windows-Nutzern mit einer längeren Verzögerung (abgebrochene Frames) als bei macOS oder Linux auftreten.

Allgemeine Verbesserungen von Project Marble

Diese Aktualisierung umfasst außerdem die folgenden allgemeinen Verbesserungen im Rahmen der Project Marble-Initiative:

  • Sie können jetzt alle vCPUs im Emulator sofort über die folgenden Konsolenbefehle pausieren:
    • adb emu avd pause
    • adb emu avd resume
  • Deutlich reduzierter Overhead beim Zeichnen mit OpenGL. Durch diese Verbesserung wird die CPU-Nutzung reduziert, während der Emulator Animationen wiedergibt.
  • Die Unterstützung für das virtuelle Netzwerkgerät e1000 von QEMU wurde wiederhergestellt. Sie können dieses Gerät verwenden, um den Emulator in einer Bridge-Netzwerkumgebung einzurichten. In einer Bridge-Netzwerkumgebung wird der Emulator im Hostnetzwerk und das Hostnetzwerk im Emulator angezeigt.
  • Für den Start des Emulators werden jetzt passende BIOS-Binärdateien für QEMU 2.12 verwendet.
  • Für die Videocodierung und -decodierung wurde ffmpeg-Version auf 3.4.5 aktualisiert.
  • Der Aufwand der QEMU-Hauptschleifen-E/A unter macOS wurde erheblich reduziert, da die auf select() basierende Hauptschleife durch eine auf kqueue basierende Hauptschleife ersetzt wurde.
  • Die Größe des Logcat-Zwischenspeichers wurde auf 2 MB erhöht, um Probleme mit einem instabilen, unerwarteten EOF beim Ausführen von Logcat mit dem Emulator zu beheben.
  • Der Emulator exportiert jetzt standardmäßig die Umgebungsvariable LC_ALL=C. Diese Änderung behebt Abstürze und Inkompatibilitätsprobleme im Zusammenhang mit der Ausführung des Emulators in verschiedenen Sprachen.
  • Du kannst jetzt die CPU- und RAM-Nutzung des Emulators mithilfe von Leistungsstatistiken verfolgen, auf die du unter Erweiterte Steuerelemente > Einstellungen > Erweitert > Leistungsstatistiken zugreifen kannst. Mithilfe dieser Statistiken können Sie Probleme schnell diagnostizieren, wenn der Emulator zu viel CPU oder RAM beansprucht.
  • glReadPixels GL_IMPLEMENTATION_COLOR_READ_TYPE verwendet jetzt das Ergebnis der Host-GPU statt einer emulierten. Durch diese Änderung werden Probleme behoben, bei denen Bilder und Assets aufgrund eines falschen Formats für die Rücklesefunktion nicht angezeigt werden.
  • Die Unterstützung für die OpenGL ES-Erweiterungen GL_EXT_texture_format_BGRA8888 und GL_APPLE_texture_format_BGRA8888 wurde hinzugefügt, sofern diese Erweiterungen vom Host unterstützt werden.
  • Der Fehlerbericht-UI wurden weitere Diagnoseinformationen hinzugefügt. Außerdem können Sie mithilfe der folgenden Befehle über die Console auf Fehlerberichte zugreifen:
    • telnet localhost 5554
    • avd bugreport
  • Bei Android Q-System-Images erhöht der Emulator die Mindest-RAM-Größe auf 2 GB.
  • Zusätzliches Logging und Druckfunktion wurden hinzugefügt, wenn OpenGL oder der Hypervisor nicht initialisiert werden.
  • Wenn der Emulator die gleichzeitige -read-only-Instanz eines AVD nicht starten kann, versucht er jetzt, -read-only AVD noch dreimal innerhalb von 3 Sekunden neu zu starten. Diese Änderung erhöht die Wahrscheinlichkeit, dass der Emulator gleichzeitig -read-only-Instanzen und einen AVD starten kann, wenn andere beschreibbare Instanzen dieser AVD nicht mit dem Bereinigen veralteter Dateien fertig sind.
  • Für neue System-Images unterstützt der Emulator jetzt Hardware Composer 2.0. Durch diese Änderung wird der Treiberaufwand reduziert, wenn die meisten Animationen ausgeführt werden.
  • Der Emulator-Build basiert jetzt auf CMake/Ninja.
  • In der Benutzeroberfläche der erweiterten Steuerelemente des Emulators wurden die Trennlinien in der Tabelle der Tastenkombinationen wiederhergestellt.
  • Nutzer können jetzt entscheiden, ob sie unserem Team CPU- und RAM-Nutzungsmesswerte in einem 10-Sekunden-Intervall zur Verfügung stellen möchten. Wir verwenden diese Messwerte, um unsere Daten über die Nutzung von Emulator-Ressourcen anhand verschiedener Anwendungsfälle unserer Nutzer anzureichern. Dadurch können wir den Emulator effizienter und reaktionsschneller gestalten.

Allgemeine Fehlerbehebungen für Projekt Marmor

Dieses Update umfasst außerdem die folgenden allgemeinen Korrekturen im Rahmen der Project Marble-Initiative:

  • Probleme mit Twitching und falschen Frames, die bei Verwendung von Android Q-System-Images auf Systemen mit Intel-GPUs angezeigt wurden, wurden behoben.
  • Es wurden Probleme behoben, bei denen ein schwarzer Bildschirm angezeigt wurde, wenn Android Q-Systembilder mit Pixel 2 XL-Skins (oder Skins mit Kerben oder abgerundeten Ecken) verwendet wurden.
  • Ein Problem wurde behoben, bei dem die Datenpartitionsgröße über die Befehlszeilenoption -partition-size nicht festgelegt wurde.
  • Es wurde ein Problem behoben, bei dem pulseaudio im Linx-Emulator sich dreht und in einigen Situationen den gesamten CPU-Kern belegt hat.
  • Probleme mit dem Speicherzugriff außerhalb des gültigen Bereichs bei der Verarbeitung komprimierter Texturen wurden behoben.
  • Es wurden GL-Fehler behoben, die auf dem Host in glTexSubImage2D beim Aktualisieren bestimmter Gralloc-Zwischenspeicher (im Format RGB 565, RGB10A2, RGB(A)16F) auftraten.
  • Es wurde ein Anzeigeproblem in Android Q-Systembildern mit Snapshots behoben, bei denen die Geometrie der Benachrichtigungsleiste mit einer falschen Einstellung für den Instanzdivisor gerendert wurde.
  • Einige schwer reproduzierbare Absturz- und Einfrierungsprobleme beim Start wurden behoben, die auf den Verlust von Signalen für Qt oder inkonsistente Status beim Start zurückzuführen waren.
  • Es wurden zahlreiche Parallelitätsprobleme behoben. Wir können jetzt den Linux-Emulator mit ThreadSanitizer (TSAN) erstellen, um Fehler zu finden, die ansonsten schwer zu reproduzieren sind.
  • Für Linux-Nutzer: Wir haben festgestellt, dass der Android-Gastkernel bei bestimmten Host-Kernels auslaufen und in KVM mit einem generischen Hardwarefehler beendet werden kann. Der Emulator wechselt in diesem Fall zu abort(), um die Debugging-Fähigkeit zu verbessern (zuvor wurde der Emulator gerade angehalten).
  • Für Linux-Nutzer: Der Einfachheit halber können Sie mit der neuen Befehlszeilenoption -stdouterr-file <file-name> sowohl stdout als auch stderr in eine Datei weiterleiten.
  • Das Problem, dass SO_REUSEADDR falsch verwendet wurde, wurde behoben. Weitere Informationen finden Sie in den Commit-Details.
  • Es wurde ein langjähriges Problem mit dem Windows-Emulator behoben, bei dem Unterprozesse wie ADB-Befehle nicht gestartet wurden, wenn der Nutzername Leerzeichen enthielt.
  • Ein Problem wurde behoben, bei dem die Initialisierung von RCU in HAXM-vCPU-Threads fehlte. Diese Fehlerkorrektur kann möglicherweise einige Abstürze und Race-Bedingungen beheben.
  • Ein Absturz wurde behoben, der bei bestimmten Mustern beim Speichern und Laden von Snapshots aus der Snapshot-Benutzeroberfläche mit aktuellen Android Q-System-Images aufgetreten ist.
  • Ein Problem wurde behoben, bei dem die virtuelle Szenenkamera leer war, wenn der Emulator aus einem Snapshot initialisiert wurde, wenn beim Speichern des Snapshots ein AR-Makro wiedergegeben wurde.
  • Bei einigen Nutzern mit Remote Desktop-Einrichtungen wurde beim Starten des Emulators unter Linux ein schwarzer Bildschirm angezeigt. Dieses Problem wurde behoben. 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 AVDs auf Fernsehern angezeigt wurden.
  • Es wurde ein Problem behoben, bei dem das erweiterte Steuerfenster jedes Mal angezeigt wurde, wenn der Emulator immer im Vordergrund stand, wenn der Emulator gedreht wurde.

Hardwareprofile für faltbare Geräte

Der Emulator enthält jetzt Hardwareprofile für faltbare Geräte. Wenn Sie diese neuen Hardwareprofile verwenden möchten, müssen Sie Android Studio 3.5 Canary 10 oder höher verwenden.

Es gibt zwei Profile faltbarer Hardwareprofile, mit denen Sie ein AVD erstellen können:

  • 7,3" faltbares Smartphone: 1536 × 2152 aufgeklappt, 4,6" 840 × 1960 (zugeklappt)
  • 8" faltbares Display: 2200 × 2480 aufgeklappt, 6,6", 1480 × 2480 (zugeklappt)

Wenn Sie den Emulator mit einem dieser Hardwareprofile ausführen, können Sie das Gerät mithilfe der Aktionen zum Aus- und Einklappen in der Symbolleiste des Emulators, mit Konsolenbefehlen oder den folgenden Tastenkombinationen auf- und zuklappen:

  • Fold: Ctrl + F (Command + F unter macOS)
  • Aufklappen: Ctrl + U (Command + U unter macOS)

AR-Makros

Der Emulator enthält jetzt AR-Makros, mit denen Sie gängige AR-Aktionen testen können. Sie können beispielsweise ein Makro verwenden, um alle Sensoren des Geräts auf ihren Standardzustand zurückzusetzen.

Weitere Informationen finden Sie unter Gängige 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 (dazu gehören die meisten Intel-, NVIDIA- und AMD-GPUs ab 2014) verwenden.

Um Vulkan-Unterstützung zu aktivieren, müssen Sie der Datei ~/.android/advancedFeatures.ini die folgenden Funktions-Flags hinzufügen. Erstellen Sie die Datei, falls sie noch nicht vorhanden ist:

  • Vulkan = on
  • GLDirectMem = on

Erste Unterstützung für ROM-Entwickler

ROM-Entwickler, die die sdk_phone_x86- oder sdk_phone_x86_64-Ziele (userdebug, eng-Varianten) im AOSP-master-Zweig erstellen, können jetzt einen Vulkan-fähigen Emulator ausführen.

Diese Unterstützung ist noch experimentell und richtet sich hauptsächlich an Entwickler, die an System-Images, Treibern und Spiel-Engines arbeiten. Viele Erweiterungen fehlen noch. Der HOST_COHERENT-Arbeitsspeicher wird jedoch unterstützt und Sie sollten jetzt die Anleitungsbeispiele für die Vulkan API ausführen können.

Wenn Sie Linux verwenden, können Sie dies mithilfe der folgenden Befehle ausprobieren:

mkdir aosp-master
cd aosp-master
repo init -u https://android.googlesource.com/platform/manifest -b master --depth=1
repo sync -c -j12
. build/envsetup.sh
lunch sdk_phone_x86_64-userdebug
make -j12
emulator -no-snapshot -feature Vulkan,GLDirectMem

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 eine vollständige Möglichkeit zum Rendern der Android-UI mit den Skia Vulkan APIs bereitzustellen.

Wenn Sie eine NVIDIA- oder AMD-GPU haben, die Vulkan unterstützt, können Sie mit den folgenden Befehlen das Skia-Rendering mit einem kompatiblen System-Image (Android Q Beta 3 und höher) testen:

adb shell
su
setprop debug.hwui.renderer skiavk
stop
start

macOS-Unterstützung für Vulkan

Die macOS-Unterstützung ist noch experimentell, aber der Emulator umfasst 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 dem Gast manchmal nicht zuordnen und den Emulator heruntergefahren. Dieses Problem wird in einem kommenden 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 einer Vielzahl von Ausführungskontexten ermöglichen. Bei unseren CI- und Remote-Desktop-Nutzern treten seit Langem die folgenden Probleme auf:

  • Das programmatische Senden von Eingabebefehlen an den Emulator erfordert entweder das Ausführen von ADB-Shell-Befehlen, die einen hohen Aufwand verursachen können, oder die Verwendung der Telnet-Konsole. Diese ist schneller, funktioniert aber möglicherweise nicht mit bestimmten Netzwerkkonfigurationen.
  • CI-Nutzer führen Emulatoren häufig monitorlos aus. Dadurch ist es unter Umständen schwierig, Probleme zu erkennen, bei denen der Bildschirm sichtbar oder interaktiv sein muss.
  • Remote Desktop-Nutzer können oft nicht mit dem Emulator interagieren, wenn sie Host-GPU-Rendering verwenden, da das GPU-Rendering häufig an die nicht virtuellen Bildschirme des Hosts gebunden ist.

Zur Behebung dieses Problems stellt der Emulator beim Ausführen auf einem Linux-Computer jetzt einen gRPC-Dienst bereit. gRPC ist ein allgemeines RPC-Framework, das über HTTP funktioniert.

Standardmäßig ist der gRPC-Dienst des Emulators deaktiviert. Sie können ihn jedoch mit der folgenden Befehlszeilenoption aktivieren, wobei <port> der Port ist, über den der Emulator gRPC-Anfragen verarbeiten soll (in der Regel 5556):

-grpc <port>

Sobald der Dienst gestartet wurde, können gRPC-Befehle von Clients ausgegeben werden. Mit den aktuellen Befehlen können sowohl Eingabeereignisse gesendet als auch Screenshots empfangen werden. Diese Befehle helfen bei der Lösung der folgenden Probleme:

  • Eingabebefehle können mit geringem Aufwand über HTTP an den Emulator gesendet werden. HTTP ermöglicht außerdem das Senden von Befehlen in zusätzlichen Netzwerkkonfigurationen.
  • Screenshot-Befehle können gesendet werden, um den aktuellen Bildschirm abzufragen, auch wenn der Emulator monitorlos ausgeführt wird. Zur Interaktivität können Eingabeereignisse auch zurück an den Emulator gesendet werden.
  • Remote Desktop-Nutzer können den Emulator monitorlos auf dem Hauptbildschirm mit GPU-beschleunigtem Rendering ausführen und gRPC verwenden, um Screenshots abzurufen und Eingabeereignisse zu senden, um mit dem Emulator zu interagieren.

Eine vollständige Liste der verfügbaren Befehle findest du in diesem Protokollpuffer.

Um Ihnen den Einstieg in gRPC zu erleichtern, haben wir einige Beispielclients zur Verfügung gestellt.

Dazu gehören derzeit die folgenden Beispiele:

  • Ein Go-basierter Dienst, mit dem Emulatorstatus abgefragt werden können.
  • Eine React-Anwendung, 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:

Monitorloser Emulator-Build

Die Einrichtung des Emulators mit Docker und anderen Workflows für kontinuierliche Integration (Continuous Integration, CI) war schwierig, da das System implizit davon ausgeht, dass das System Qt und die Abhängigkeiten der gemeinsam genutzten Bibliothek (und andere Probleme) unterstützen kann.

Als ersten Schritt zur Lösung dieses Problems haben wir eine Variante des Emulator-Launchers mit ausführbaren QEMU-Dateien eingeführt, die nicht von Qt abhängig ist. Unter Linux gibt es noch einen Link zu libX11, wir hoffen aber, diesen bald zu entfernen.

Wenn Sie den monitorlosen Emulator verwenden möchten, führen Sie ihn wie gewohnt über die Befehlszeile aus, ersetzen Sie jedoch den Binäraufruf des Emulators durch emulator-headless. Weitere Informationen finden Sie im Release-Update 28.1.8 Canary.

  • Behoben: Twitching und falsche Frame-Anzeige auf Intel-GPUs beim Ausführen von Android Q-Systembildern.
  • Probleme mit einem schwarzen Bildschirm bei Verwendung von Android Q-Systembildern mit Pixel 2 XL-Skins wurden behoben.
  • Zum Starten des Emulators werden jetzt die neuesten BIOS-Binärdateien verwendet. Durch diese Änderung können Fehler durch „Anfrage zum Herunterfahren von vCPUs“ reduziert werden, die manchmal beim Starten des Emulators unter Windows auftreten.
  • Eine Fehlerkorrektur für das Problem „falsche Anzeige beim Fortsetzen von Android Q-System-Images aus einem Snapshot“ wurde rückportiert.
  • Bei Nutzern sind aufgrund einer inkompatiblen Änderung der ADB in Version 28.0.2 der Plattformtools Probleme mit nicht autorisierten Emulatoren aufgetreten. Sie können ADB jetzt sicher ab Plattformtools 28.0.2 mit dem Emulator verwenden. Wenn Sie Probleme mit „nicht autorisierten“ Emulatoren haben, führen Sie die folgenden Schritte zur Fehlerbehebung aus:
    1. Beende alle Emulatoren.
    2. Löschen Sie sowohl die ~/.android/adbkey- als auch die ~/.android/adbkey.pub-Datei.
    3. Führen Sie den folgenden Befehl aus: adb kill-server
    4. Führen Sie den folgenden Befehl aus: adb devices
    5. Löschen Sie die AVD-Daten.
    6. Starten Sie den Emulator neu.

28.0.23 (29. Januar 2019)

Dieses Update enthält die folgenden Verbesserungen und Fehlerkorrekturen:

Audioeingabe durch den Host ist standardmäßig deaktiviert

In einem aktuellen Beitrag auf Reddit wurde beschrieben, dass das Android-Gastbetriebssystem immer den Ton des Hostmikrofons nutzt und so dazu geführt hat, dass "Ok Google" unerwartet funktioniert. Das tut uns leid. Wir werden gemeinsam mit dem Android-Team dafür sorgen, dass auch die Hotword-Erkennung im Systemimage deaktiviert ist.

Daher haben wir folgende Änderungen vorgenommen:

  • Die tatsächlichen Host-Audiodaten werden jetzt standardmäßig geschwächt. Wenn der Gast das Mikrofon verwendet, wird anstelle des Tons des Organisators stummgeschaltet.
  • Wenn Sie die Host-Audiodaten verwenden möchten, können Sie diese Option jetzt aktivieren. Dazu rufen Sie Erweiterte Steuerelemente > Mikrofon auf und aktivieren Virtuelles Mikrofon verwendet Host-Audioeingabe. Diese Option wird bei jedem Neustart des Emulators automatisch deaktiviert.

Updates zur Prüfung der CPU-Nutzung

Bei unseren Untersuchungen zu Project Marble haben wir festgestellt, dass eine hohe CPU-Auslastung im Emulator im Allgemeinen in die folgenden drei Kategorien eingeteilt wird:

Bei Inaktivität: Automatische App-Updates in Play Store-Bildern

Wir haben festgestellt, dass alle installierten Apps in zufälligen Intervallen aktualisiert werden, auch wenn der Nutzer nicht angemeldet ist. Während des Vorgangs wird die CPU-Nutzung auf die Anzahl der Kerne × 100% (in der Regel etwa 400%) in GMSCore und dex2oat berechnet. Sie können dieses Problem umgehen, indem Sie automatische App-Updates in der Play Store App deaktivieren.

Bei Inaktivität: Hotword-Erkennung

Wenn auf dem Startbildschirm keine App im Vordergrund angezeigt wird, kann die CPU-Nutzung stark beansprucht werden (ca. 25% mit Spitzen bis zu 50%). Der Grund dafür ist die Hotword-Erkennung, die den Host ständig anpingt. Sie können dieses Problem nicht umgehen, indem Sie die Host-Audioeingabe deaktivieren, da die CPU-Kosten hauptsächlich durch die Zeit verursacht werden, die vom Host zum Gast übertragen wird. Sie können dieses Problem jedoch umgehen, indem Sie die Mikrofonberechtigungen der Google App widerrufen.

Bei Aktivität, manchmal im Leerlauf: Animationen

Die dritte Ursache für eine hohe CPU-Auslastung sind Animationen. Wir haben festgestellt, dass wir durch die Optimierung des Grafiktreiber-Stacks die CPU-Nutzung auch dann reduzieren können, wenn der Emulator nicht inaktiv ist. Im Rahmen von Project Marble werden wir schrittweise Grafiktreiber-Optimierungen einführen.

28.0.22 (21. Dezember 2018)

Dieses Update enthält die folgenden Verbesserungen und Fehlerkorrekturen:

  • Ein seit Langem bestehendes Problem wurde behoben, bei dem der Mac-Emulator beim Speichern mit Quickboot in einigen Einstellungen neu startete oder zu Kernel-Panic führte. (Problem 120951634)
  • Wenn Sie eine zugeordnete Datei als RAM-Snapshot verwenden, hebt der Emulator die Zuordnung der Dateizuordnung jetzt explizit beim Beenden auf.

28.0.20 (11. Dezember 2018)

Dieses Update enthält die folgenden Verbesserungen und Fehlerkorrekturen:

  • Es wurde ein Problem unter Windows behoben, bei dem der Emulator beim Laden von Snapshots mit bestimmten Intel-GPU-Modellen einfror.
  • Es wurde ein Problem behoben, das bei Verwendung eines nicht standardmäßigen ANDROID_SDK_HOME-Standorts zu einem ADB-Gerätestatus von unauthorized führte.
  • Es wurde ein Problem unter Windows behoben, bei dem der Emulator beim Starten von System-Images mit deaktivierter CPU-Beschleunigung abstürzte.
  • Das Problem mit der verpixelten Anzeige des Emulators wurde behoben. Das Downsampling sollte jetzt funktionieren.
  • Unter macOS 10.14 und höher konnte die Mauslook-Steuerung für die virtuelle Szenenkamera aufgrund einer Interaktion mit neuen Sicherheitseinstellungen für Bedienungshilfen zu empfindlich werden.
  • Ein Fehler bei der Zeitzonenberechnung wurde behoben, der dazu führen konnte, dass sich die Uhr des Emulators sporadisch änderte.
  • Rendering-Fehler in verschiedenen Cocos2d- und Unreal-Engine-Anwendungen wurden behoben.
  • Im Emulator wird Unterstützung für WLAN-Peer-to-Peer hinzugefügt. Zwei Emulatoren können jetzt direkt über WLAN miteinander kommunizieren, wenn sie das neueste Pie Play Store-Image verwenden. Wenn Sie WLAN-Peer-to-Peer verwenden möchten, starten Sie zwei AVDs mit denselben Argumenten -wifi-server-port und -wifi-client-port:
    • emulator @<server-avd-name> -wifi-server-port 9999
    • emulator @<client-avd-name>-wifi-client-port 9999
  • Unterstützung für weitere Webcams unter Windows wurde hinzugefügt, da inkompatible Frame-Größen genutzt und die Größe dynamisch an die Kameraeinstellung im Android-Gast angepasst wird.

28.0.16 (November 2018)

Dieses Update umfasst mehrere neue Funktionen und Verbesserungen bestehender Funktionen sowie Fehlerkorrekturen.

Ressourcennutzung

Der Emulator verwendet jetzt insgesamt weniger RAM, insbesondere wenn System-Images mit API-Level 28 oder höher verwendet werden. Diese System-Images beinhalten eine verbesserte Arbeitsspeichernutzung für Gast-Grafiktreiber.

Darüber hinaus haben wir die Ressourcennutzung in den folgenden Bereichen verbessert:

  • Geringere Nutzung des Emulator-Arbeitsspeichers bei Tests mit langer Ausführungszeit. Wenn bei Tests mit langer Ausführungszeit weiterhin Probleme mit der Arbeitsspeichernutzung auftreten, erstellen Sie im Issue Tracker ein Problem, das Ihren Anwendungsfall beschreibt.
  • Geringere CPU-Auslastung beim Ausführen von Apps mit Animationen.
  • Es wurde ein Problem 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. Ihre Änderungen am virtuellen Gastlaufwerk werden beim Beenden verworfen.

Wenn Sie mehrere Instanzen desselben AVD gleichzeitig ausführen möchten, starten Sie mit dem Flag -read-only über die Befehlszeile alle Instanzen nach der ersten Instanz.

Diese Funktion wird durch Kopieren der QCOW2-Dateien ermöglicht, die mit den beschreibbaren Teilen des Android-Images verknüpft sind. Um Ihnen die Verwaltung des Speicherplatzes zu erleichtern, haben wir auch das qemu-img-Befehlszeilentool gebündelt, damit Sie QCOW2-Dateien vorab festschreiben können, bevor Sie mehrere Instanzen starten.

Wenn sie zusammen mit der Funktion Dateigestützte Gast-RAM-Snapshots verwendet werden, teilen sich mehrere AVD-Instanzen den primären AVD-Quickboot-Snapshot als gemeinsame Quelle des Copy-on-Write-Gast-RAM. Diese Eigenschaft bedeutet, dass die Instanzen einen Großteil ihres RAM-Speichers gemeinsam nutzen. Mit dieser Funktion können Sie Tests ausführen, bei denen mehrere Geräte parallel ausgeführt werden müssen.

Wir danken Ihnen für Ihr Feedback zu möglichen Anwendungsfällen, die Teil Ihres normalen interaktiven oder CI-Workflows sind. Erstellen oder bewerten Sie Probleme im Issue Tracker.

Dateigestützte Snapshots von Gast-RAM

Durch die Vorabzuweisung und Zuordnung von Gast-RAM als Datei kann der Emulator Quickboot-Snapshots während der Laufzeit speichern, anstatt die gesamte Arbeit beim Beenden zu erledigen. Wenn Sie beim Schließen der Emulatoren derzeit lange Zeit sparen, aktivieren Sie diese Funktion, um die Quickboot-Leistung zu verbessern. Standardmäßig wird ein Quickboot-Snapshot beim Beenden gespeichert und jedes Mal neu geladen, z. B. beim Aussetzen und Aktivieren eines echten Geräts.

Da der Android-Gast-RAM jetzt standardmäßig automatisch gespeichert wird, müssen Sie den Emulator anweisen, die Ä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 das Flag -no-snapshot-save oder -read-only, wenn Sie den Emulator über die Befehlszeile starten.
  • Rufen Sie Erweiterte Steuerelemente > Snapshots > Einstellungen auf und setzen Sie Aktuellen Status automatisch speichern auf Quickboot? auf Nein.
  • Sie müssen den Emulator neu starten, nachdem Sie diese Option ausgewählt haben. Wenn der Emulator für das automatische Speichern eingestellt ist, können Sie den folgenden Befehl ausführen, um einen Prüfpunkt festzulegen:
    adb emu avd snapshot remap 0
    
    Nachdem Sie diesen Befehl ausgeführt haben, bleibt der Quickboot-Snapshot des Emulators an diesem Checkpoint. Führen Sie denselben Befehl noch einmal aus, um den Emulator von Ihrem Checkpoint zu laden.

Snapshots, die über die Snapshot-UI aufgenommen und geladen werden, wie zuvor ohne Dateizuordnung funktionieren.

Da dies eine große Änderung an der Funktionsweise von Quickboot darstellt, würden wir uns sehr über Feedback dazu freuen, ob Quickboot-Leistung verbessert wird und welche Art von Problemen bei der Verwendung auftreten kann. 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 über die Befehlszeilenoption -snapshot oder über einen Snapshot im AVD-Manager), deaktiviert der Emulator sowohl die automatische Speicherung für Quickboot-Snapshots als auch das Speichern von Quickboot-Snapshots beim Beenden. So verringern Sie die Wahrscheinlichkeit, dass der Quickboot-Snapshot unbeabsichtigt überschrieben wird, und vermeidet langsame Fallback-Pfade, die keine dateigestützten Quickboot-Snapshots verwenden.

QEMU 2.12

Wir haben unsere QEMU-Variante von QEMU 2.9 auf QEMU 2.12 umgestellt. Dieses Update umfasst die folgenden QEMU-Änderungen:

Hier sind einige der wichtigsten Änderungen, die sich auf den Android-Emulator auswirken:

  • x86: gdbstub bietet jetzt Zugriff auf SSE-Register.
  • Laufwerk-Images: Die Image-Sperre wird standardmäßig hinzugefügt und aktiviert. Mehrere QEMU-Prozesse können nicht in dasselbe Image schreiben, solange der Host OFD- oder POSIX-Sperren unterstützt, sofern keine anderen Optionen angegeben sind.
  • qemu-img: qemu-img resize unterstützt die Vorabzuweisung der neuen Teile des Bildes.
  • Das Verkleinern von QCOW2 wird jetzt in qemu und qemu-img unterstützt.

Barrierefreiheit

  • Es wurden Probleme mit Screenreadern behoben und die Unterstützung dieser Tools in den UI-Optionen „Bildschirmaufzeichnung“ und „Snapshot“ wurde verbessert.
  • Die Quick Boot-Benachrichtigungssymbole wurden für farbenblinde Nutzer zugänglicher.

Grafik

  • Es wurde ein Problem mit dem außerhalb des gültigen Arbeitsspeichers behoben, das bei OpenGL ES-Vertex-Array-Zeigern auftreten konnte.
  • Einige ältere GPUs haben OpenGL 2.1 oder höher nicht unterstützt (was erforderlich) oder andere Zuverlässigkeitsprobleme auftraten. Diese Probleme können dazu führen, dass der Emulator beim Start abstürzt, einfriert oder bei der Standard-GPU-Einstellung unbrauchbar ist. Der Emulator wechselt jetzt automatisch zum Swiftshader-Renderer, wenn er erkennt, dass diese GPUs verwendet werden.
  • Es wurde ein Problem behoben, bei dem der Emulator nicht den richtigen Framebuffer übergibt, wenn FBO != 0 zum Zeitpunkt von eglSwapBuffers gebunden wurde.
  • Ein Problem wurde behoben, bei dem die virtuelle Android-Anzeige 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 Umgebungsvariablen mit der Qt-Skalierung.
  • Der Emulator stürzte in einigen Situationen ab, wenn GLES1-Anwendungen aus einem Snapshot geladen wurden. Dieses Problem wurde behoben.
  • Nebenläufigkeitsprobleme in OpenGL und dem Starten von Rendering-Threads wurden behoben, die dazu führen konnten, dass Daten doppelt freigegeben oder beschädigt wurden.
  • Der Android-Emulator unterstützt jetzt ASTC LDR-komprimierte Texturen (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 das Funktions-Flag GLESDynamicVersion zu verwenden.
  • -gpu guest (Software-Rendering im Gastmodus) wurde eingestellt. System-Images für API-Level 28 oder höher wechseln jetzt automatisch zur Verwendung von Swiftshader (-gpu swiftshader_indirect).
  • Wenn der Emulator mit dem Flag -no-window über die Befehlszeile gestartet wird, ist der Standard-Renderer jetzt Swiftshader.

Standort

  • Der Emulator kann jetzt die Lage zusammen mit der Breiten- und Längengradposition aktualisieren. Der virtuelle Sensor des Magnetometers passt sich dynamisch an den magnetischen Norden an, indem er bei der Wiedergabe einer GPX- oder KML-Datei eine Bewegung ableitet.
  • Die Gerätegeschwindigkeit kann jetzt auf der Seite „Standort“ festgelegt werden.
  • Bei der Wiedergabe einer GPX- oder KML-Datei wird die Geschwindigkeit automatisch eingestellt und am Ende der Wiedergabe auf null gesetzt.
  • Die Höhe ist nicht mehr auf -1.000 bis +10.000 Meter beschränkt.
  • Ein Problem wurde behoben, bei dem der virtuelle GPS-Standort nur dann regelmäßig aktualisiert wurde, wenn das Fenster für erweiterte Steuerelemente mindestens einmal geöffnet wurde.

Kamera

Unter Windows werden jetzt mehr Webcams unterstützt, da der Emulator die Größe der Kameraframes dynamisch anpasst, die von der Webcam geliefert werden. Diese Funktion verhindert auch, dass Fehler bei der Frame-Übermittlung den Emulator hängen.

Play Store

Um Probleme zu beheben, bei denen der Speicherplatz auf Play Store-Images knapp wird, ändert der Emulator die Größe der Nutzerdatenpartition jetzt automatisch auf 6 GB, wenn er mit einem neuen Play Store-AVD ausgeführt wird.

Allgemeine Qualitätsverbesserungen und Fehlerbehebungen

  • Einige Nutzer haben gemeldet, dass der Emulator langsam ausgeführt wird. Wir haben eine mögliche Ursache gefunden, bei der das temporäre Verzeichnis für den Emulator am Ende zu viele veraltete Dateien enthält. Als Behelfslösung speichert der Emulator keine Dateien der ADB-Aktivitätsprüfung mehr in diesem Verzeichnis. Es kann jedoch auch hilfreich sein, den Inhalt des 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>/*
  • Wenn der Emulator nicht gestartet werden kann, weil nicht genügend kostenloser RAM verfügbar ist, wird eine Fehlermeldung angezeigt. Wenn Sie Windows verwenden und feststellen, dass kein RAM verfügbar ist, Sie den Emulator aber trotzdem nicht starten können, wurde die Commit-Gebühr möglicherweise überschritten. Hilfe zu diesem Problem finden Sie auf der Seite Fehlerbehebung für Emulator.
  • Die Befehlszeilenoption -sysdir überschreibt jetzt das abgeleitete Systembildverzeichnis korrekt.
  • Das virtuelle Modem unterstützt jetzt die +MAI-Abfrage für Modellaktivitätsinformationen.
  • Verschiedene Probleme mit Speicherlecks, Speicherschäden und CPU-Nutzung wurden behoben. Wenn Abstürze, Speicherlecks oder eine andere hohe Ressourcennutzung auftreten, erstellen Sie im Issue Tracker ein Problem.
  • Ein Problem wurde behoben, das unter macOS 10.14 wieder auftrat, bei dem die Verwendung von Bluetooth-Headsets mit dem Emulator den Ton global verschlechterte. Um dies zu verhindern, vermeidet der Emulator die Verwendung von Bluetooth-Audio, wenn er unter macOS ausgeführt wird. (Problem 37070892)
  • Unter Windows wurde die Uhr des Emulators nicht in der richtigen Zeitzone angezeigt. Dieses Problem wurde behoben.
  • Der langsame Emulator wurde behoben. Er hängt bei Linux-Systemen mit rotierenden Festplatten (HDDs) ab.
  • Einige Kompilierungswarnungen wurden behoben, die unter macOS zu Stackbeschädigungen führen konnten.
  • Behebung von Problemen, die zu irreführenden Berichten über das Aufhängen geführt haben konnten.
  • Es wurde ein Problem beim Löschen von Thread-Pools behoben, das einen Absturz verursachen konnte, wenn einer der Threads nicht erfolgreich erstellt wurde.
  • Unter macOS wurden die Timer unzuverlässig, was zu Aufhängen und anderen ungewöhnlichen Verhaltensweisen führte. Dieses Problem wurde behoben. Wenn der Emulator unter macOS hängt, erstellen Sie ein Problem in der Problemverfolgung.
  • Ein Problem wurde behoben, bei dem durch das Schließen des Emulators die Benutzeroberfläche deaktiviert, aber der Emulator nicht geschlossen wurde.
  • Probleme mit sporadischen Abstürzen, einschließlich eines Abbruchs aufgrund des Öffnens zu vieler /dev/urandom-Instanzen, wurden behoben.
  • Es wurde ein Problem behoben, bei dem der Emulator nach dem ersten Mal nicht gestartet wurde, wenn ADB zwangsweise beendet wurde.
  • Der MIPS-Build wurde entfernt. Wenn Sie weiterhin MIPS benötigen, erstellen Sie ein Problem in der Problemverfolgung.
  • ADB-Verbindungen konnten beim Laden des Snapshots beschädigt werden.
  • Es wurde ein Problem behoben, bei dem im Emulator-Fenster nach dem Fortsetzen eines Snapshots ein Afterimage oder ein Teleport aus dem Bildschirm angezeigt wurde, bei dem sich die Geräteausrichtung von der Standardausrichtung des AVDs unterschied.
  • Probleme mit Abstürzen beim Speichern von Snapshots wurden behoben.
  • Unter Linux können btrfs-Dateisysteme extreme Verlangsamungen verursachen, da der Emulator automatisch Snapshots speichert und Copy-on-Write für seine virtuellen Laufwerkgeräte verwendet. Wir empfehlen, das Verzeichnis ~/.android/avd zu bereinigen und den folgenden Befehl im leeren Verzeichnis ~/.android/avd auszuführen:
    chattr +C
    
    Dadurch werden neue Snapshots in einem Ordner erstellt, in dem Copy-on-Write deaktiviert ist.

HAXM 7.3.2

Wir möchten noch einmal auf HAXM 7.3.2 hinweisen, da sie installiert werden muss, damit aktuelle System-Images ordnungsgemäß im Emulator 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.

Diese Version von HAXM hat folgende Probleme behoben:

  • Das Problem mit zufälligen Abstürzen von Gastbetriebssystemen, die einen aktuellen Linux-Kernel (>= 4.6) verwenden, wurde behoben. Beispiel: Ubuntu 18.04 (#39, #74).
  • Ein Fehler im x86-Anweisungsemulator wurde behoben, der zu einem Hostabsturz führen konnte (#93).

Einstellung von 32-Bit-Windows

Aufgrund der geringen Nutzung und hohen Wartungskosten planen wir, die 32-Bit-Version des unter Windows ausgeführten Android-Emulators einzustellen. Wir werden einen Übergangsplan für die 32-Bit-Version des Android-Emulators einführen, bevor diese Version entfernt und eingestellt wird. Wir freuen uns aber über Feedback oder Bedenken hinsichtlich dieser zukünftigen Änderung.

Teilen Sie uns im Issue Tracker mit, ob Sie derzeit die 32-Bit-Version des Android-Emulators unter Windows verwenden und uns mitteilen, wie wir in Zukunft am besten mit Ihnen zusammenarbeiten können.

27.3.10 (August 2018)

Dieses Update umfasst die folgende Fehlerkorrektur:

Fehlerbehebung bei der Konfiguration der RAM-Größe

Einige Nutzer haben gemeldet, dass der Emulator langsam ausgeführt wird. Wir haben eine mögliche Ursache dafür gefunden, dass die AVD-RAM-Größe in der config.ini-Datei des AVDs nicht richtig festgelegt war.

Um dies zu umgehen, erhöht der Emulator den minimalen RAM-Level für Images, die API-Level 26 oder höher verwenden, auf die Standardeinstellung von Android Studio von 1.536 MB. Wenn die config.ini-Datei Ihrer AVD-Datei nicht hw.ramSize in Megabyte enthält, erstellen Sie ein Problem in der Problemverfolgung. Die Datei config.ini finden Sie unter folgendem Pfad:

~/.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 bei der Diagnose, warum die Windows-Hypervisor-Plattform (WHPX) nach der Aktivierung eines WHPX-Emulators nicht initialisiert werden konnte. Um Ihnen die Diagnose dieser Probleme zu erleichtern, haben wir informativere Fehlermeldungen hinzugefügt. Sie können diese Fehlermeldungen aktivieren, indem Sie den Emulator mit dem Flag -verbose über die Befehlszeile ausführen.

Allgemeine Fehlerbehebungen

  • OpenGL-Fehler, die beim Laden eines Schnappschusses in der Kamera-App auftraten, wurden behoben.

27.3.8 (Juli 2018)

Dieses Update umfasst mehrere neue Funktionen und Verbesserungen bestehender Funktionen sowie 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 ein Steuerelement in den erweiterten Einstellungen im Dialogfeld „Virtuelle Gerätekonfiguration“, über das Sie angeben 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 Steuerelemente 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 Schnellstart-Snapshots, den sich zuvor im Bereich Einstellungen befand.

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 umfasst Fehlerbehebungen und eine verbesserte Unterstützung für große Arbeitsspeichermengen. Außerdem werden bei diesem HAXM-Update und Emulator 27.3 und höher die Inhalte von Snapshots bei Bedarf in den RAM geladen, anstatt beim Start des virtuellen Geräts den gesamten Snapshot zu laden. Durch diese Änderung sollte das Laden eines Snapshots deutlich verkürzt werden.

Weitere Informationen finden Sie unter VM-Beschleunigung konfigurieren.

27.2.9 (Mai 2018)

Dieses Update umfasst mehrere neue Funktionen und Verbesserungen bestehender Funktionen sowie Fehlerkorrekturen.

Bildschirmaufzeichnung

Sie können jetzt mit dem Android-Emulator Video und Audio aufzeichnen und die Aufnahme in einer WebM- oder animierten GIF-Datei speichern.

Die Steuerelemente für die Bildschirmaufzeichnung befinden sich im Fenster Erweiterte Steuerelemente auf dem Tab Bildschirmaufzeichnung.

Tipp:Sie können die Steuerelemente für die Bildschirmaufzeichnung auch öffnen, indem Sie Strg + Umschalt + R bzw. Befehlstaste + Umschalt + R auf dem Mac drücken.

Um mit der Bildschirmaufzeichnung zu beginnen, klicken Sie auf dem Tab Bildschirmaufzeichnung auf die Schaltfläche Aufzeichnung starten. Um die Aufzeichnung zu beenden, klicken Sie auf Aufzeichnung beenden.

Steuerelemente zum Abspielen und Speichern des aufgezeichneten Videos finden Sie unten auf dem Tab Bildschirmaufzeichnung. Wählen Sie zum Speichern des Videos unten auf dem Tab im Menü WebM oder GIF aus und klicken Sie auf Speichern.

Mit dem folgenden Befehl in der Befehlszeile können Sie auch eine Bildschirmaufzeichnung mit dem Emulator aufzeichnen und speichern:

adb emu screenrecord start --time-limit 10 [path to save video]/sample_video.webm

Screenshots

Mit einem der folgenden Befehle können Sie Screenshots über die Befehlszeile erstellen:

  • screenrecord screenshot [destination-directory]
  • adb emu screenrecord screenshot [destination-directory]

Screenshots werden im PNG-Format gespeichert.

Virtuelle Szenenkamera und ARCore

Das Entwickeln und Testen von Augmented Reality-Apps (AR) mit ARCore ist mit der neuen virtuellen Szenenkamera jetzt noch einfacher. Sie können Ihre AR-Erlebnisse in einer virtuellen Umgebung testen.

Informationen zum Verwenden der virtuellen Szenenkamera im Emulator finden Sie unter AR-Apps im Android-Emulator ausführen.

Bilder aus dem Google Play Store auf Pixel-Geräten

Der Google Play Store ist jetzt für Bilder von Pixel- und Pixel 2-Geräten aktiviert. Dies wird im AVD Manager in Android Studio 3.2 und höher durch das Google Play-Logo in der Spalte Play Store angezeigt. AVDs mit aktiviertem Google Play Store haben im Dialogfeld Erweiterte Steuerelemente den Tab Google Play, der eine praktische Schaltfläche zum Aktualisieren der Google Play-Dienste auf dem Gerät enthält.

Snapshots

Sie können jetzt einen Quick Boot-Snapshot laden, ohne den Emulator neu zu starten. Zum Laden eines Snapshots öffnen Sie das Fenster Erweiterte Steuerelemente auf der Seite Einstellungen und klicken auf die Schaltfläche Jetzt laden.

Wir haben viele Verbesserungen am Laden und Speichern von Snapshots vorgenommen, um die Ressourcennutzung effizienter zu gestalten und die Zeit zu minimieren, die jeder Vorgang in Anspruch nimmt. Sollten weiterhin ungewöhnlich lange Speichervorgänge auftreten, melden Sie ein Problem und geben Sie dabei Details zur CPU, zum RAM und zu den Einstellungen der ausgeführten Antiviren-, Firewall- oder Sicherheitssoftware an.

Rendering mit Skia

Wenn Sie Images für API 27 oder höher verwenden, kann der Emulator die Android-UI mit Skia rendern, was reibungsloser und effizienter gerendert werden kann.

Vorerst kannst du Skia nur verwenden, wenn du es ausdrücklich aktivierst.

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 der Android Emulator jetzt Media Foundation als Webcam-Back-End, was die Leistung und Framerate für Webcam-Aufnahmen auf bis zu 720p und 30 fps erheblich verbessert.

Auf einem Mac können Sie Webcam0 und Webcam1 jetzt zusammen verwenden.

Sonstiges

Die Befehlszeilenoption -phone-number-prefix wurde in -phone-number [number] geändert, sodass die vollständige Telefonnummer festgelegt werden kann.

Du kannst 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 startet.
  • Verschiedene Ursachen für Abstürze und hängen gebliebene Abstürze wurden behoben.
  • Um Abstürze und hängende Elemente zu vermeiden, die durch zu wenig freien Speicherplatz entstehen, prüft der Emulator jetzt beim Start, ob genügend freien Speicherplatz vorhanden ist, und startet nur dann, wenn mindestens 2 GB kostenlos sind.
  • Es wurde ein Problem behoben, das das Rendern einiger Unity-Spiele verhinderte.
  • Ein DNS-Problem wurde behoben, bei dem der Emulator keine Verbindung zum Netzwerk herstellen konnte.
  • Es wurde ein Problem behoben, bei dem Ä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äß heruntergefahren wurden.
  • Es wurde ein Problem behoben, bei dem die Schaltflächen zum Drehen und andere Teile der UI nicht mehr reagierten, wenn das Fenster für erweiterte Steuerelemente nicht geöffnet war.
  • Es wurde ein Problem behoben, bei dem das Kopieren und Einfügen auf dem Host nur funktionierte, wenn das Dialogfeld für erweiterte Steuerelemente mindestens einmal geöffnet wurde.
  • Das Rechteck zur Größenanpassung des rahmenlosen Emulators wurde aktualisiert, um dem visuellen Design des Emulators besser zu entsprechen.
  • Bei aktiviertem Flugmodus sind Telefon und SMS jetzt ordnungsgemäß deaktiviert.
  • Nach dem Laden eines Snapshots wurden die SMS- und Mobilfunkfunktionen deaktiviert. Dieses Problem wurde behoben.
  • Du erhältst dann keine falschen Warnmeldungen mehr zu “Unable to open... \pstore.bin. Permission denied.”
  • Es wurde ein Problem behoben, bei dem die Neupositionierung des AVD auf einigen Mac-Bildschirmen nicht möglich war.
  • Probleme mit Flimmern und leeren Bildschirmen auf neueren MacBook Pro-Computern bei Ausführung von AVDs mit Pixel 2 XL-Skins wurden behoben.
  • Probleme mit leeren Bildschirmen beim Wechsel in den gezoomten Modus bei aktivem rahmenlosem Emulator behoben.
  • Ein Problem wurde behoben, durch das der Geräte-Skin und der Emulator-Inhalt beim Heranzoomen nicht mehr synchron gescrollt wurden.

Wenn weiterhin Abstürze oder andere Instabilitäten auftreten, melden Sie ein 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)
  • Standorte, die an einen Emulator gesendet wurden, wurden an alle gesendet. (Problem 73450633)
  • Der über die Konsole festgelegte GPS-Standort wurde durch Werte überschrieben, die in der grafischen Benutzeroberfläche unter Erweiterte Steuerelemente > Standort festgelegt wurden. (Problem 73471760)

Wenn weiterhin Abstürze oder andere Instabilitäten auftreten, melden Sie ein Problem.

Mit diesem Update, einem aktuellen System-Image und einer Vorabversion von Android Studio können Sie den Android-Emulator verwenden, um mit ARCore entwickelte Augmented-Reality-Apps auszuführen. Ausführliche 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 mit einer angeschlossenen Webcam aufgenommen werden.

    Damit Android 8.1 (API-Level 27) und höher mit Systemimages verwendet werden kann, muss jede angeschlossene Webcam in der Lage sein, 720p-Frames zu erfassen.

  • Fehlerkorrekturen

    • Es wurde ein Problem behoben, bei dem bei Webcam-Aufnahmen manchmal ein verzerrtes oder nur grünes Bild ausgegeben wurde.
    • Es wurde ein Problem behoben, bei dem die folgende Meldung auch dann angezeigt wurde, wenn kein Aufhänger aufgetreten ist: "Emulator: FEHLER: hat einen hängenden Thread 'Qt-Ereignisschleife' erkannt. Keine Antwort für 15.000 ms“.

Wenn weiterhin Abstürze oder andere Instabilitäten auftreten, melden Sie ein Problem.

27.1.7 (Februar 2018)

  • Frameless-Emulator-Fenster:

    Emulatoren mit Geräte-Skin-Dateien werden jetzt standardmäßig ohne einen umgebenden Window Frame angezeigt. Wenn der umgebende Fensterrahmen angezeigt werden soll, aktivieren Sie im Bereich „Einstellungen“ des Fensters Erweiterte Steuerelemente die Option Fensterrahmen um Gerät zeigen.

  • Verbesserungen beim Quick Boot, um die Arbeit mit AVD-Snapshots effizienter zu gestalten:

    • Sie können jederzeit einen AVD-Snapshot speichern. Klicken Sie dazu im Dialogfeld Erweiterte Steuerelemente im Bereich „Einstellungen“ auf die Schaltfläche Jetzt speichern.
    • Der Emulator reduziert in vielen Fällen die Zeit zum Speichern eines Snapshots, da nur der Unterschied zwischen dem aktuellen Status und dem zuvor gespeicherten Snapshot gespart wird.

    Weitere Informationen findest du in der Kurzanleitung.

  • Der Emulator wurde aktualisiert und verwendet nun QEMU 2.9.

    Hier einige Verbesserungen:

    • Optimierte E/A-Funktionen und präzisere E/A-Thread-Sperre für bessere Leistung.
    • Fehler seit QEMU 2.8 (26.1.4) behoben
    • Neue Implementierung des HAXM-Back-Ends

    Eine vollständige Liste der Änderungen finden Sie im QEMU 2.9-Änderungsprotokoll.

  • Swiftshader-Implementierung entsprechend OpenGL ES 3.0:

    Der Swiftshader-Renderer des Emulators ist jetzt vollständig mit OpenGL ES 3.0 kompatibel. Details zum Swiftshader-Renderer finden Sie unter Einstellungen > Erweitert von Erweiterte Steuerelemente.

  • Fehlerkorrekturen

    • Es wurde ein Problem behoben, bei dem die Freigabe der Zwischenablage nur funktioniert, wenn die Option Freigabe der Zwischenablage aktivieren deaktiviert und aktiviert war.
    • Ein Problem wurde behoben, das beim Rendern des Swiftshader-Back-Ends mit AVDs mit niedriger Auflösung auftrat.

27.0.5 (Januar 2018)

  • ANGLE für das Rendering unter Windows ist jetzt standardmäßig deaktiviert.

    Wenn ANGLE besser funktioniert, können Sie ihn mit dem Befehlszeilen-Flag -gpu angle_indirect wieder aktivieren. Alternativ kannst du das Fenster mit den erweiterten Steuerelementen öffnen, Einstellungen > Erweitert aufrufen und dann ANGLE D3D11 als OpenGL ES-Renderer-Einstellung auswählen.

  • Es wurde ein Problem behoben, bei dem bei der Eingabe von „Umschalttaste + B“ kein großes B-Zeichen eingegeben wurde.

27.0.2 (Dezember 2017)

  • Die neue Schnellstartfunktion ermöglicht schnellere Emulatorstartzeiten, basierend auf einem Snapshot Ihrer AVD-Instanz.

    Quick Boot ist standardmäßig für alle AVDs aktiviert. Obwohl ein AVD beim ersten Start einen Kaltstart ausführen muss (wie beim Einschalten eines Geräts), erfolgen alle nachfolgenden Starts aber schnell und das System wird in den Zustand zurückversetzt, in dem Sie den Emulator geschlossen haben (ähnlich wie beim Aktivieren eines Geräts).

    Wenn Sie festlegen möchten, wann der Emulator einen Snapshot speichert, öffnen Sie das Fenster Erweiterte Steuerelemente des Emulators und klicken Sie auf Einstellungen. Hier können Sie eine der folgenden Einstellungen für Save schnellen Boot-Status beim Beenden speichern auswählen:

    • Ja: Beim Schließen des Emulators immer den Quick Boot-Snapshot speichern. Das ist die Standardeinstellung.
    • Nein: Niemals den Schnellstart-Snapshot speichern, sondern immer einen Kaltstart durchführen.
    • Fragen: Sie geben an, ob beim Schließen des Emulators der Quick Boot-Snapshot gespeichert werden soll.

    Ihre Auswahl gilt nur für das derzeit geöffnete AVD.

    Weitere Informationen finden Sie in der Kurzanleitung zum Schnellstart.

  • Unterstützung für Mac OpenGL ES 3 wurde hinzugefügt (für System-Images mit API-Level 24 oder höher, Google APIs und x86 ABI).

  • Für zusätzliche Stabilität in Apps mit OpenGL ES 2 und höher verwendet der Emulator jetzt das OpenGL-Kernprofil, sofern verfügbar.

  • Neue Optionen für das Rendering mit Swiftshader / ANGLE:

    • -gpu swiftshader_indirect: Schnellere, stabilere Variante von Swiftshader, die mit Schnellstart funktioniert.
    • -gpu angle_indirect (nur Windows): Stabilere Variante von ANGLE D3D, die auch mit Schnellstart funktioniert.

    Die älteren Optionen „-gpu swiftshader“ und „-gpu angle“ wurden eingestellt. Im Fenster „Erweiterte Steuerelemente“ werden für die Optionen „SwiftShader“ und „ANGLE“ für die OpenGL ES-Renderer-Einstellung unter Einstellungen > Erweitert jetzt die *_indirect-Varianten verwendet.

  • Verschiedene weitere Fehlerkorrekturen.

26.1.4 (August 2017)

Dies ist eine Nebenversion mit Fehlerkorrekturen und den folgenden Verbesserungen der GPU-Konfiguration:

  • Bootanimation bei Ausführung auf dem ANGLE-Renderer aktivieren
  • 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 System-Images von Android 8.0 zu verwenden. Sie sind Höhenkonform mit separaten vendor.img-Partitionen.
  • Das neue HAXM 6.2.0 ist jetzt verfügbar (siehe SDK Manager) und enthält die folgenden Updates:
    • Verbesserte Arbeitsspeichernutzung. Der von HAXM angepinnte Spitzenarbeitssatz des Arbeitsspeichers entspricht nicht mehr der Größe des AVD-RAM. Stattdessen wird der Arbeitsspeicher nach Bedarf per Seiten abgerufen. Dies sollte dazu beitragen, dass der Emulator auf Maschinen mit weniger RAM zuverlässiger ausgeführt wird.
    • Der Emulator mit HAXM 6.2.0 kann jetzt unter macOS schneller starten, wodurch eine lange Initialisierungsphase übersprungen wird.
  • Verbesserungen an der GPU-Konfiguration
    • Probleme mit einem schwarzen Bildschirm beim Start behoben, wenn Software-Rendering auf Gastseite durch einen Rückgriff auf das hostseitige Software-Rendering mit Swiftshader ausgeführt wurde. Die neuesten Versionen der System-Images für die API-Level 19 bis 25 mit Google APIs sollten das Rendering auf Gastseite ermöglichen.
    • Es wurde ein Problem behoben, bei dem der Emulator auf einen Software-Renderer umgestellt wurde, weil ältere Intel-GPUs erkannt wurden, der Emulator aber tatsächlich auf einer einzelnen GPU ausgeführt wurde. Welche GPUs auf ANGLE- oder Swiftshader-Rendering umgestellt werden, wird so bestimmt:
      • Ältere Intel-iGPUs haben Treiberprobleme sowohl bei OpenGL als auch bei ANGLE D3D-Treibern. Nutzer mit Intel HD Graphics 3xxx und älter verwenden Swiftshader.
      • Einige Nutzer berichteten, dass API-Level 25-Bilder aufgrund eines Fehlers, durch den „Pixel Launcher ständig stoppt“, nicht verwendet werden konnten. Dies scheint ein Treiberproblem bei einigen Intel HD 4xxx-Modellen zu sein. Sie werden also automatisch auf ANGLE umgestellt.
    • Für optimale Ergebnisse mit GPU-Emulation empfehlen wir entweder die Verwendung einer eigenständigen NVIDIA- oder AMD-GPU oder einer neueren Intel GPU (Iris, HD 5xxx, HD 5xx/6xx).
    • Der Emulator konnte nicht gestartet werden (die OpenGL-Emulation konnte nicht initialisiert werden), wenn das AVD mit hw.gpu.mode=host konfiguriert und der Emulator in einem Remote Desktop-Client gestartet wurde. Dieses Problem wurde behoben.
    • Die Einstellungen für „OpenGL ES API-Level (Neustart erforderlich)“ wurden klarer formuliert. Es wurde eine Option zum Downgrade von OpenGL ES 3 auf OpenGL ES 2 hinzugefügt, wenn Probleme auftreten oder Tests auf niedrigeren OpenGL ES API-Levels durchgeführt werden müssen.
    • Der Mesa-Renderer wurde eingestellt. hw.gpu.mode=mesa wird 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 unter macOS standardmäßig für 32-Bit-x86-Images aktiviert, um die Leistung und die macOS-Kompatibilität zu verbessern. Sollten dabei Probleme auftreten, senden Sie bitte einen Fehlerbericht und hängen Sie HVF = off an ~/.android/advancedFeatures.ini an (erstellen Sie diese Datei, falls sie noch nicht vorhanden ist).
    • Es wurden Probleme ohne Internet bzw. Fehler beim Anhängen des Debuggers bei der Verwendung von Hypervisor.framework behoben.
    • Um die Kompatibilität und Leistung von Webcam-Aufnahmen zu verbessern, wurde die QTKit-basierte Kameraaufnahme durch eine gepufferte auf AVFoundation basierende Kamera ersetzt.
  • Unterstützung für WLAN in einigen System-Images hinzugefügt (derzeit nur API-Level 25). Es ist ein Zugangspunkt namens „AndroidWifi“ verfügbar und Android stellt automatisch eine Verbindung her. Die WLAN-Unterstützung kann deaktiviert werden, indem Sie den Emulator mit dem Befehlszeilenparameter -feature -Wifi ausführen.
  • Einige Nutzer äußerten Bedenken, dass die Play Store-System-Images mit fester Größe nicht genügend Speicherplatz hätten. Daher haben wir die Größe standardmäßig auf 2 GB erhöht (von 800 MB).
  • Eine Tastenkombination (Strg + Umschalttaste + U) wurde hinzugefügt, um die Seite mit der Benutzeroberfläche zur Meldung von Fehlern direkt über die Seite mit den Einstellungen zu öffnen.
  • Ein Problem wurde behoben, bei dem der Emulator nicht gestartet wurde, wenn eine ältere CPU mit Intel x86 EPT, aber ohne UG verwendet wurde, wenn mehr als ein Kern konfiguriert war.
  • Ein Problem wurde behoben, bei dem HyperV nicht korrekt erkannt wurde, wenn der Emulator selbst in einem Xen-Hypervisor ausgeführt wurde.
  • Es wurde ein Problem 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 Steuerelementen kann jetzt eine benutzerdefinierte HTTP-Proxy-Konfiguration definiert werden. Klicken Sie dazu auf das Dreipunkt-Menü und dann auf Einstellungen und Proxy. Standardmäßig verwendet der Emulator die HTTP-Proxy-Einstellungen von Android Studio. Auf diesem Bildschirm können Sie jedoch eine manuelle Proxy-Konfiguration festlegen.

  • VNC-Unterstützung für GPUs im Gastmodus hinzugefügt, sodass der Emulator aus der Ferne angesehen und gesteuert werden kann. Sie können beispielsweise den Emulator starten und VNC folgendermaßen auf Port 5901 überwachen lassen:

    1. Ausführung: emulator -gpu guest -avd avd_name -no-window -qemu -vnc :1
    2. Öffnen Sie einen VNC-Viewer, z. B. Tightvnc, um eine Verbindung zu Port 5901 herzustellen.

      • Um den integrierten Client für die Bildschirmfreigabe von Mac zu verwenden, ist beim Starten des Emulators ein VNC-Passwort erforderlich. Verwenden Sie den folgenden Befehl, um ein Passwort festzulegen:

        emulator -gpu guest -avd avd_name -no-window -qemu -vnc :1,password -monitor stdio

        Geben Sie dann change vnc password in der Konsole und ein Passwort ein.

    Android O wird derzeit für den VNC-Modus nicht unterstützt.

  • Auf dem Hilfebildschirm der erweiterten Steuerelemente wurde die Schaltfläche Fehler melden hinzugefügt. Klicken Sie dazu auf das Dreipunkt-Menü und dann auf Hilfe und Emulatorhilfe. Wenn Sie auf Fehler melden klicken, wird ein Dialogfeld geöffnet, in dem Sie die Details des Fehlerberichts wie den Screenshot, die AVD-Konfigurationsinformationen und ein Protokoll des Fehlerberichts sehen können. Sie können den Bericht dann für sich selbst speichern oder Emulatorprobleme melden.

  • Gyroskopsensor wurde zum Emulator- und Bereich für virtuelle Sensoren hinzugefügt. Dies erfordert ein Systemimage mit Gyroskopunterstützung (derzeit API-Level 24 und 25).

  • Das vom Host bevorzugte DNS wurde der Qemu-DNS-Liste unter Windows hinzugefügt, wenn mehrere virtuelle Netzwerkschnittstellen auf dem Host mehrere DNS-Adressen einführen, die für den Emulator nicht funktionieren.

  • Zusätzliche experimentelle macOS Hypervisor.Framework-Unterstützung für 32-Bit-x86-Images unter macOS 10.10 und höher über Server-Flags, die die Startzeit und Leistung verbessern sollten.

    • Wenn Probleme auftreten, fügen Sie die Zeile HVF = off in ~/.android/advancedFeatures.ini ein.
  • 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 = off in ~/.android/advancedFeatures.ini hinzu.
  • Der Emulator verwendet jetzt für das gesamte Rendering außerhalb des sichtbaren OpenGL-FBOs, mit Ausnahme der Veröffentlichung von endgültigen Displaybildern. Dies sollte bei Problemen mit der Farbkonsistenz auf verschiedenen Plattformen helfen.

  • Wir haben Daten zu plötzlichen Emulator-Verlangsamungen gesammelt und festgestellt, dass das Problem möglicherweise auf eine Interaktion zwischen älteren Intel OpenGL-Treibern und Windows-Updates zurückzuführen ist. Daher ist bei Nutzern mit Intel HD 4000, 3000, 2000 (und zugehörigen GPUs) jetzt standardmäßig entweder ein D3D-Renderer (ANGLE) oder Swiftshader (Software-Renderer) eingestellt.

26.0.0 (März 2017)

Dieser Release ist mit API-Level 26 kompatibel. Außerdem wurden einige Leistungsverbesserungen und Fehlerkorrekturen vorgenommen.

Nebenversion 26.0.3 (Mai 2017)

  • Fügt Feature-Flags hinzu, die online aktualisierbar sind, um Probleme aufgrund problematischer Hardwarekonfigurationen schnell zu beheben. Dies ermöglicht Google, Fehlerbehebungen und Funktionen bereitzustellen, die von Nutzerkonfigurationen abhängig sind. Dazu werden serverseitige Flags aktualisiert. Wenn Sie Probleme mit einer bestimmten Hardware feststellen, melden Sie einen Fehler, damit wir das Problem untersuchen können.
  • Neue Unterstützung für die Dreheingabe für System-Images von Android Wear API-Level 25. Um den Drehknopf auf einem Wear-Gerät zu emulieren, klicken Sie im erweiterten Fenster auf den Tab Drehknopf.
  • Die Größe des Crash Reporting-Dialogfelds kann jetzt angepasst werden. Das Feld Wann sollen Absturzberichte gesendet werden wird nicht mehr ohne Eingabe an Fragen zurückgesetzt.
  • Für den 32-Bit-Emulator muss jetzt die maximale AVD-RAM-Größe kleiner oder gleich 512 MB sein, damit im virtuellen Adressraum von 2 GB für den Emulator kein Speicherplatz frei wird.
  • Absolute Pfade in Emulator-Images werden unterstützt.
  • Fügt im erweiterten Fenster einen neuen Tab für Google Play Store-Bilder hinzu, auf dem die Version der Play-Dienste und eine Schaltfläche zum Suchen nach Updates für Play-Dienste angezeigt werden.
  • Fügt ein Drop-down-Menü zur Auswahl des OpenGL-Renderers auf der Seite „Emulator-Einstellungen“ hinzu. Wenn auf einem Windows-Computer Probleme mit dem OpenGL-Treiber auftreten, verwenden Sie die Option ANGLE (D3D11) oder ANGLE (D3D9) (Neustart erforderlich). Wenn auf einem Computer ohne Windows Probleme mit dem OpenGL-Treiber auftreten, verwenden Sie den Swiftshader-Software-Renderer (Neustart erforderlich).
  • Behebt einen seltenen Absturz beim Beenden, wenn der Emulator sowohl exit- als auch minimize-Befehle empfängt.
  • Ein Skalierungsproblem beim Ändern der Anzeige auf einem Mac-Computer wurde behoben. (Problem 268296)
  • Behebt ein Problem, bei dem der Emulator 300% der CPU einhält und diese zurückhält, nachdem der Hostcomputer aus dem Ruhemodus fortgesetzt wurde oder der Emulator lange Zeit ausgeführt wurde.
  • Behebt einen Absturz beim Herunterfahren des Emulators.

Updates für HAXM v6.1.1 (März 2017)

Hinweis: HAXM v6.1.1 ist seit dem 30. März über den SDK-Manager für Mac-Nutzer und bald auch für Windows-Nutzer verfügbar.

Version 26.0.0 des Android-Emulators unterstützt HAXM v6.1.1 mit den folgenden Updates:

  • Aktiviert die PMU-Emulation (Performance Monitoring Units). (Problem 223377)
  • Probleme mit der parallelen Verwendung von VirtualBox und Docker auf Macs wurden behoben. (Problem 197915)
  • Überarbeitet die Fehlermeldung bei der Installation, die angezeigt wird, wenn das Installationsprogramm Intel VT-x unter Windows nicht erkennt. Das liegt in der Regel daran, dass Hyper-V aktiviert ist.
  • Bietet Unterstützung für die Beschleunigung des Android-Emulators in einer Hyper-V-basierten Windows-VM. Für dieses Update muss die Hyper-V-Hostinstanz (die Instanz, die die Windows-VM/-Gast verwaltet wird) die neueste 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 Platform-Tools 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. Mit einer Host-GPU mit übereinstimmenden OpenGL-Desktop-Treibern besteht der Emulator jetzt 100% der mustpass-Liste unter Android CTS dEQP-GLES2. Dies wurde für Images mit 24 × 86 API-Level (Version 11 und höher) veröffentlicht und wird bald für alle System-Images verfügbar sein.
  • Verbesserte Videowiedergabe Der Emulator speichert jetzt alle Video-Farbzwischenspeicher im freigegebenen Host-/Gastspeicher und führt die erforderliche endgültige YUV- in RGB-Konvertierung in der GPU durch. 1080p30 sollte mittlerweile von den meisten Systemen in Reichweite sein. Dies wurde für Images mit 24 × 86 API-Level (Version 11 und höher) veröffentlicht und wird bald für alle System-Images verfügbar sein.
  • Der Emulator hebt sich jetzt korrekt aus der adb devices-Liste beim Beenden auf 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)

Mit dieser Version wird der Android-Emulator getrennt von den SDK-Tools veröffentlicht. Diese Version enthält eine Reihe von Leistungsverbesserungen, neue Funktionen und Fehlerkorrekturen.

Kleinere Version 25.3.1 (März 2017)

  • Ein Absturz bei einigen GPU-Konfigurationen durch die standardmäßige Deaktivierung von GLAsyncSwap wurde behoben. 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 dazu, dass der Emulator bei einigen unbekannten Maschinenkonfigurationen fehlschlägt. Sie können sie manuell aktivieren, indem Sie die Datei android_sdk/emulator/lib/advancedFeatures.ini öffnen und GLAsyncSwap = on festlegen.

Abhängigkeiten

  • Android SDK Platform-Tools Version 24 oder höher.
  • Android SDK Tools, Version 25.3.0.

Neue Funktionen und Fehlerkorrekturen

  • Aktualisierung des Emulationsmoduls auf QEMU 2.7, einschließlich aller aktuellen Fehlerbehebungen, Leistungsverbesserung und neuer Funktionen.
  • Neue IPv6-Unterstützung.
  • Der Emulator verwendet SwiftShader jetzt 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 ein Vielfaches schneller, hat eine geringere Latenz und bietet eine bessere Multithread-Leistung. Dies führt zu einer Reihe von Leistungsverbesserungen für den Emulator:
    • Verbesserte ADB-Drück-/Pull-Geschwindigkeit.
    • Bessere Unterstützung für die 3D-Beschleunigung.
    • Verbesserte Reaktionsfähigkeit des Emulators insgesamt
    • Verbesserte Grafikleistung.
  • Der Emulator verwendet jetzt GPU-seitige Puffer (glBindBuffers/glBufferData), wenn der Gast sie anfordert. Dadurch wird bei einigen Apps der CPU-Aufwand reduziert.
  • Verbesserte Audio-Unterstützung.
  • Schnellere Laufwerk-E/A: Der Emulator verwendet jetzt separate Threads zum Weiterleiten von Laufwerk-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 für zufälligen Zugriff). Dies reduziert auch die Anzahl der Leerungen auf dem Laufwerk, was zu einer deutlich geringeren physischen Gerätelast führt.
  • Der Emulator verwendet jetzt dünnbesetzte Dateien für das Starten von Laufwerken auf Windows-Computern, wodurch sowohl der erste Start als auch der Start von Daten zum Löschen der Daten beschleunigt werden. Beim Erstellen oder Zurücksetzen eines AVDs schreibt der Emulator jetzt 100–200 MB Daten auf das Laufwerk statt 2 GB oder mehr.
  • Verschiedene Verbesserungen der Benutzeroberfläche:
    • Der Emulator verwendet jetzt Qt 5.7.0, die Fehlerkorrekturen und Leistungsverbesserungen enthält.
    • Bei der Initialisierung der Benutzeroberfläche wird nicht mehr versucht, alle ausführbaren Dateien des Emulators als Qt-Plug-ins zu laden. Daher ist sie deutlich kürzer, insbesondere auf HDDs.
    • UI-Interaktionen sind jetzt schneller und flüssiger, einschließlich Drehung, Anpassung der Fenstergröße und erweiterten Steuerelementen zum Laden und Schließen des Fensters.