In Android Studio ist der Android-Emulator enthalten.
Vor Version 25.3.0 des Emulators wurden Emulator-Versionen im Rahmen des SDK-Tools.
Überprüfen Sie die SDK-Manager für Updates
Informationen zum Herunterladen früherer Versionen des Android-Emulators finden Sie in der Emulator-Downloadarchiv
Versionshinweise für Emulator-Versionen vor 25.3.0 finden Sie in der Versionshinweise zu Android SDK Tools
Bekannte Probleme und Fehlerbehebungen finden Sie in der Emulator-Fehlerbehebung.
34.2.16 (9. Juli 2024)
- [Fehlerkorrektur] Beim Auf- und Zuklappen von Pixel Fold bleibt die Benutzeroberfläche hängen
- [Fehlerkorrektur] Falsche Anzeige der Android-Version als Android Vanilla Ice Cream Vorschau anstelle von API 35 auf Mac M1.
- [Fehlerkorrektur] Problem 296162661: HasSystemFeature FEATURE_SENSOR_HINGE_ANGLE gibt im Pixel C-Tablet-Emulator „true“ zurück
34.2.15 (31. Mai 2024)
- Verschiedene Absturzfehler im Zusammenhang mit dem Swangle-Modus und der Bereinigung von Werbetreibenden
34.2.14 (20. Mai 2024)
Mit Android Studio Jellyfish Stable Patch 1 getestet.
- [Fehlerkorrektur] Snapshot hängt manchmal im eingebetteten Emulator ab
- [Fehlerkorrektur] „Nein“ und „Abbrechen“ Schaltflächen im Snapshot funktionieren nicht richtig
- [Fehlerkorrektur] Tasten der Richtungstasten funktionieren nicht
- [Fehlerkorrektur] Es wurde ein Problem behoben, das unter Windows verhinderte, dass der Emulator unter bestimmten Bedingungen gestartet wurde, wenn GPU-Modi mit ANGLE verwendet wurden, und dass im Protokoll die Fehlermeldung „Fehler beim Initialisieren der GL-Emulation“ zurückgegeben wurde. Wenn Sie den Emulator über die Befehlszeile mit der Option
-gpu swangle_indirect
starten, wird dieser Fehler möglicherweise auch mit dieser Version generiert. Wenn du den Emulator weiterhin über eine Befehlszeile unter Windows mit Softwaregrafik-Rendering mit dieser Version starten möchtest, verwende-gpu swiftshader_indirect
- [Fehlerkorrektur] Standortverknüpfung auf der Tastatur lädt eine unbrauchbare Karte
- [Fehlerkorrektur] Beim Festlegen des Standorts wird die Option "Route speichern" Dialogfeld fehlt
34.2.13 (30. April 2024)
Mit Android Studio Jellyfish Stable getestet.
- Aktualisierung auf Qt 6.5.3
- Kompatibilität mit den Google Maps API-Updates, die in den Standortfunktionen in den erweiterten Steuerelementen des Emulators abgeschlossen.
- Schwerwiegende Abstürze behoben
- Verschiedene Korrekturen an Pixel-AVDs
- Grafikbibliothek aktualisieren, die für das Software-Rendering verwendet wird
- [Fehlerkorrektur]Problem 225541819 Starten des Chrome-Absturz-Emulators unter x86_64
- [Fehlerkorrektur]Problem 314614435
-http-proxy
-Switch wurde falsch geparst.
34.1.20 (1. April 2024)
Mit Android Studio Iguana Stable getestet.
- [Fehlerkorrektur] Problem #314614435: Problem behoben, bei dem der Schalter
-http-proxy
falsch geparst wurde
34.1.19 (7. März 2024)
Mit Android Studio Iguana Stable getestet.
- [Fehlerkorrektur] Problem Nr. 312677259: Eingebettetes Display im eingebetteten Emulator nach der Größenanpassung des Fensters wurde behoben.
34.1.18 (29. Februar 2024)
Mit Android Studio Iguana Stable getestet.
- Der Emulator wurde um folgende Geräte erweitert:
<ph type="x-smartling-placeholder">
- </ph>
- Google Pixel Fold
- Pixel Tablet
- 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 innerhalb von Android-Instrumentierungstests sicher mit dem vom Android-Emulator gehosteten gRPC-Endpunkt interagieren.
- Diverse Fehlerkorrekturen
<ph type="x-smartling-placeholder">
- </ph>
- Fehlerkorrektur: Verbesserungen bei der Nutzerfreundlichkeit von faltbaren Geräten
- Fehlerkorrektur: Position des Emulators nach der Drehung anpassen
- Absturzkorrekturen
33.1.24 (28. Dezember 2023)
Mit Android Studio Hedgehog Stable und Iguana Beta 1 getestet.
- Ein Problem mit der Webcam im Emulator wurde behoben, durch die Bildschirmaufzeichnungen im MP4-Format nicht möglich sind.
- Ein Absturz des Emulators beim Aufklappen des Pixel Fold AVD während einer Bildschirmaufzeichnung wurde behoben.
- Problem behoben, bei dem Pixel Fold bei getrennter Tastatur ein anderes Design für das Smartphone anzeigt und nicht verwendbar ist (Fehler unter Windows, Mac Intel und Linux behoben)
- Ein Fehler bei der Darstellung von virtuellen Sensoren im Standalone-Modus wurde behoben (unter Windows, Mac Intel und Linux)
- Fehlerkorrekturen für Abstürze, insbesondere beim Schließen des Emulators, wurden behoben.
33.1.23 (30. November 2023)
Mit Android Studio Giraffe Patch 4 und Hedgehog Stable getestet.
- Neue faltbare Implementierung zur besseren Emulation von Pixel Fold, funktioniert mit der neuesten API 34
- Upgrade für Grafik-Backend: Wir haben das gfxstream-Protokoll für unser Grafik-Backend implementiert. Diese Verbesserung verbessert die Grafikleistung insgesamt und die Stabilität deines Systems. Neu: Unterstützung von Vulkan 1.3, beginnend mit System-Image mit API 34
- Funktionsanfrage: Option zum Deaktivieren der Touch-Geste zum Zoomen auseinander- und zusammenziehen oder zur Neuzuweisung des Hotkeys
- [Fehlerkorrektur] Problem #302562962 Behebung des Absturzes der Webcam im Emulator bei Verwendung von MacOS Sonoma
- [Fehlerkorrektur] Problem #293503871 Problem mit der Funktion "Mikrofon" behoben Einstellung wird nicht gespeichert, wenn der Emulator neu gestartet wird.
- [Fehlerkorrektur] Problem #270386314 Animationsfehler behoben, bei dem die Seitenleiste geöffnet bleibt, nachdem der AVD-Bildschirm minimiert wurde
- [Fehlerkorrektur] Problem #154896775 Tool zur Korrektur von Fehlern
32.1.15 (29. August 2023)
Mit Android Studio Giraffe Patch 1 und Hedgehog Canary 16 getestet.
- GAS-Hardwareanforderungen für Sensoren im AAE-Emulator erfüllen
- [Fehlerkorrektur] Problem #266201208 Hebräische SMS wird mit API 33 nicht gesendet
- [Fehlerkorrektur] Problem #257097404 Im Emulator wird nach der Aktivierung des Hosts in API 29 und 30 nicht die richtige Zeit angezeigt
- [Fehlerkorrektur] Problem #228201899 Google Maps wird in den erweiterten Steuerelementen des Android-Emulators nicht angezeigt
32.1.14 (27. Juni 2023)
Mit Android Studio Hedgehog Canary 8, Giraffe Beta 5 und Flamingo getestet Stabil.
- Kameraausrichtungen im Emulator korrigieren und Verzerrungen.
- [Fehlerkorrektur] Problem 257097404 "Emulator zeigt nach dem Aufwachen des Hosts nicht die richtige Zeit an." Dieser Fehler ist noch reproduzierbar für API 29 und API 30.
- [Fehlerkorrektur] Problem 243456582 „Android-Versionen nach API 30 starten im Emulator auf Mac M1-Maschinen“
32.1.13 (22. Mai 2023)
Getestet mit Android Studio Hedgehog Canary 2, Giraffe Beta 1 und Flamingo Stable.
- Unterstützung für Pixel Fold und Pixel Tablet AVDs hinzufügen.
- gLinux-Absturzproblem verbessern
- [Fehlerkorrektur] Problem #215231636 "Emulator mit API über API 30 funktioniert nicht auf Intel-Prozessor der 12. Generation"
- [Fehlerkorrektur] Problem #275397905 Highlevel des Absturzes im Android Emulator M1 beim Bewegen des Cursorfokus wiederholt.
- Bekanntes Problem beim AVD-Start: Problem 281725854 Weitere Informationen finden Sie unter Fehlerbehebung für den Emulator.
32.1.12 (21. März 2023)
Getestet mit Android Studio Giraffe Canary 10, Flamingo RC und Electric Eel Patch 2.
- [Fehlerkorrektur] Problem #267647323 Netzwerk funktioniert nicht in Emulatoren, die in Android Studio gestartet wurden
- [Fehlerkorrektur] Problem #268498686 Emulator-Bildschirm flackert
- [Fehlerkorrektur] Problem #270034824 verschlechterte sich nach der Aktualisierung auf Version 33.1.1 die Leistung des Emulators.
- [Fehlerkorrektur] Problem #225541819 Starten des Chrome-Absturz-Emulators unter x86_64
- [Fehlerbehebung] Problem #257097404 Im Emulator wird nach dem Aufwachen des Hosts nicht die richtige 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.
- Optimierung der Netzwerkgeschwindigkeit
- Mausunterstützung im eingebetteten Emulator
- Virtio-snd-Verbesserungen
- Verwendung von Symlinks beim Entpacken des Android-Emulators während der Installation deaktivieren
- Absturz in Emulatorprüfung beheben
31.3.14 (13. Dezember 2022)
Getestet mit Android Studio Dolphin, Electric Eel RC1 und Flamingo Canary 9.
- [Fehlerkorrektur] AVD-Abstürze bei der Anmeldung im Play Store wurden behoben.
31.3.13 (27. Oktober 2022)
Getestet mit Android Studio Dolphin, Electric Eel Beta 2 und Flamingo Canary 5.
- [Fehlerkorrektur] Problem 249948338: Zeitzonenparameter funktioniert nicht
- [Fehlerbehebung] Problem #249366543:Die Option „-dns-server“ für den Emulator funktioniert nach API 31 nicht mehr
31.3.12 (10. Oktober 2022)
Getestet mit Android Studio Dolphin und Electric Eel Beta 1.
Dieses Update enthält folgende Verbesserungen und Fehlerkorrekturen:
- [Fehlerkorrektur] Problem Nr. 247843000: Fehler bei der relativen AVD-Pfadbehandlung
- 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 folgende Verbesserungen und Fehlerkorrekturen:
- [Fehlerkorrektur] AVD im eingebetteten Emulator-Fenster stürzt ab
- [Fehlerkorrektur] Problem #183139207:Audioprobleme im Zusammenhang mit der Aktivierung des Mikrofons durch den Emulator
- [Fehlerkorrektur] Problem Nr. 229764024:AVD-Fehler mit fixierter Touch-Funktion, der zu Problemen mit dem Verhalten der Benutzeroberfläche führt
- [Fehlerkorrektur] Fehler beim Starten von API 33 AVD auf Mac M1.
- [Fehlerkorrektur] Problem #243053479: Langsame Netzwerkgeschwindigkeit nach Aktualisierung des Emulators
- [Fehlerkorrektur] Problem Nr. 244617627: Nicht funktionierender Google Maps-Standort unter Windows und Linux
- [Fehlerkorrektur] Problem #232971796: Nicht funktionierende Schaltfläche „Gerät anrufen“ auf der erweiterten Steuerung > Seite „Telefon“
- Android-Emulator auf minigbm aktualisieren
- Migration von Build-Skripts zu Python3
31.3.10 (18. August 2022)
Getestet mit Android Studio Dolphin Beta 5 und Electric Eel Canary 9.
Der Emulator kann jetzt als eigenständiges Tool heruntergeladen werden. Bei Problemen mit Probleme oder Abstürze dieser aktuellen stabilen Version Programmfehler melden und überlegen Sie, ob Sie eine frühere funktionstüchtige Version aus der Emulator-Download-Archive.
Dieses Update enthält folgende Verbesserungen und Fehlerkorrekturen:
- Bessere Unterstützung von Unicode-Pfaden unter Windows
- Besserer Umgang mit dem Herunterfahren des Emulators, sodass ein neuer Start desselben AVD möglicherweise erfolgreich zu sein.
- Aktualisiertes Design und Standardeinstellungen für faltbares AVD
- Aktualisierte Schaltflächen für den Wear-Emulator
- Verbesserungen beim gRPC-Audiostreaming
- Emulator-Konsolenbefehl mit anpassbarer Größe hinzugefügt
- Chrome-Korrektur für API 31
- [Fehlerkorrektur] Google-Konto-Authentifizierung mit GmsCore-Version 21.42.18 fehlgeschlagen
31.2.10 (20. April 2022)
Getestet mit Android Studio Dolphin Canary 8 und Chipmunk RC 1.
Dieses Update enthält folgende Verbesserungen und Fehlerkorrekturen:
- Dienstprogramm hinzufügen, um Vulkan-Funktionen mit Fallbacks zu laden
- [Fehlerkorrektur] gcc8-Build-Fehler beheben
31.2.9 (23. März 2022)
Getestet mit Android Studio Dolphin Canary 7.
Dieses Update enthält folgende Korrektur:
- [Fehlerkorrektur] Arbeitsspeicherauslastung beim Speichern von Snapshots auf M1 ignorieren
31.2.8 (7. Februar 2022)
Getestet mit Android Studio Bumblebee Patch 1 und Chipmunk Canary 6.
Dieses Update enthält folgende Verbesserungen und Fehlerkorrekturen:
- [Fehlerkorrektur] Anmeldung in Apps nicht möglich
- [Fehlerkorrektur] Problem Nr. 215368358: "ADB-Neustart" Auf der Intel-Plattform stürzt AVD mit „Anfrage zum Herunterfahren von VCPUs“ ab
31.2.7 (1. Februar 2022)
Getestet mit Android Studio Bumblebee Patch 1 und Chipmunk Canary 6.
Dieses Update enthält folgende Korrektur:
- [Fehlerkorrektur] Fehler beim Aufhängen des Emulators auf M1-Computern.
31.2.6 (20. Januar 2022)
Getestet mit Android Studio Arctic Fox, Bumblebee Beta 4 und Chipmunk Canary 6.
Dieses Update enthält folgende Verbesserungen und Fehlerkorrekturen:
- Wear OS-Emulatoren wurden Wear OS-Schaltflächen hinzugefügt.
- Alle Fahrzeugeigenschaften auf dem Tab „VHAL“ können bearbeitet werden.
- [Fehlerkorrektur] Google-Konto-Authentifizierung mit GmsCore-Version 21.42.18 fehlgeschlagen.
- [Fehlerkorrektur] Netshaper funktionierte nicht gut mit VirtioWifi.
- [Fehlerkorrektur] Der Befehl für die Mauskonsole für Ereignisse hat nicht funktioniert.
- KVM-Prüfung für lokale AVD-Erstellung hinzugefügt.
31.1.3 (18. Januar 2022)
Dieses Update enthält folgende Verbesserungen und Fehlerkorrekturen:
- Konsolenports für Fuchsia wurden aktiviert.
- Beim Ändern der Größe eines Multi-Display-Fensters wird die Ausrichtung ignoriert.
- WLAN: Unterstützung für das Herausfiltern von Unicast-Paketen basierend auf MAT Mac hinzugefügt Adresse.
- WLAN: Das Problem mit dem Absturz bei Verwendung von vmnet wurde behoben.
30.9.5 (15. Dezember 2021)
Dieses Update enthält folgende Verbesserungen und Fehlerkorrekturen:
- Neue Funktion zur einfachen Größenanpassung an ein Fenster in der Größe eines Desktops oder Tablets.
- Multi-Touch-Eingabe über kompatible Hostgeräte wird jetzt unterstützt.
- VirtioWifi: Unterstützung für Tap-Netzwerk hinzugefügt.
- Dreheingabe für Wear-System-Images aktiviert.
- Das Problem mit der gRPC-Audiokonfiguration wurde behoben.
- Die Wiedergabe des SensorReplay-Emulators wurde aktualisiert, um standardmäßige Android-Sensoren zu unterstützen.
- Der Emulator wurde per USB-Kabel mit USB-Passthrough mit Peripheriegeräten und Geräten verbunden.
30.4.5 (23. Februar 2021)
Dieses Update enthält folgende 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.
- Beschleunigen Sie das Vulkan-Rendering.
- Zusätzliche Unterstützung für die Snapshot-Fehlerbehebung bei einem Testfehler.
- virtio-gpu: Definitionen wurden aktualisiert, um die neuesten Blob-Ressourcen-Enums zu unterstützen.
- Snapshot-Unterstützung für ASG hinzugefügt Grafiktransporte ein.
- macOS: Unterstützung für die Entwicklung mit dem macOS SDK 11.1+ wurde hinzugefügt.
- KVMclock ist bei neueren System-Images standardmäßig aktiviert.
- Wear-Emulatoren unterstützen jetzt einen Herzfrequenzsensor.
- Vulkan-Back-End für die Libportability wurde entfernt.
- Unterstützung für weitere Funktionen im Modemsimulator hinzugefügt.
30.0.26 (16. August 2020)
Dieses Update enthält mehrere neue Funktionen, Verbesserungen vorhandener Funktionen, und Fehlerkorrekturen.
Faltbare Geräte sind mit virtuellem Scharniersensor und 3D-Ansicht kompatibel.
Scharniersensoren für faltbare Geräte werden jetzt unterstützt. Dazu ist ein zukünftiger Android 11-Systemimage und AVD-Konfiguration. 3D faltbare Ansicht und Scharnier sind jetzt in die bestehenden Voreinstellungen für faltbare Anzeigen integriert. Die folgenden kann beispielsweise mit der
config.ini
-Datei des faltbaren AVDs 7.3 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 Untertypparameter. Das
config.ini
Propertyhw.sensor.hinge.sub_type = hinge/fold
ist jetzt verfügbar. Weitere Informationen finden Sie in der Entwicklung für Android 11 mit Android Emulator Blogpost.Scharniersensor ist jetzt standardmäßig aktiviert.
Wenn ein faltbares Gerät konfiguriert ist, sendet der Emulator jetzt Scharnierwinkelsensoren Aktualisierungen und Statusänderungen für den Gast gesendet. Bestehende faltbare Geräte Winkel und Position des Scharniersensors beim Aus- und Aufklappen der Symbolleiste aktualisieren gedrückt.
Emulator für ARM64-Hosts
Der Quellcode des Linux-Emulators unterstützt jetzt die Cross-Kompilierung von x86_64 bis arm64 und ermöglicht das Ausführen von arm64-System-Images mit KVM-Virtualisierung. Derzeit Nur
-gpu swiftshader_indirect
(Swiftshader Arm64-Host-Rendering) ist unterstützt, aber ein kompatibler Satz von libEGL-/libGLESv2-Host-GPU-Bibliotheken durch Ersetzen von lib64/gles_swiftshader und anschließendem Neustart mit-gpu swiftshader_indirect
Möglicherweise funktionieren auch Snapshots nicht (add-no-snapshot
in die Befehlszeile. Anleitung:mkdir emu cd emu repo init -u https://android.googlesource.com/platform/manifest -b emu-master-dev --depth=1 repo sync -qcj 12 cd external/qemu pip install absl-py pip install urlfetch sudo apt-get install crossbuild-essential-arm64 python android/build/python/cmake.py --noqtwebengine --noshowprefixforinfo --target linux_aarch64
Apple Silicon wird derzeit unterstützt.
Virtio-GPU-Unterstützung
- Zusätzliche Unterstützung auf Hostseite für künftige kohärente BLOBs des virtio-gpu-Hosts Ressourcen.
- Aufgrund der Funktionsweise des Emulator-Renderings verarbeiten wir virtio-gpu virtqueue jetzt in im vcpu-Thread, da das Rendering sowieso auf andere Threads übertragen wird. Das virtio-gpu-Rendering wird in einem zukünftigen System-Image und Emulator aktiviert Version.
- In einem zukünftigen System-Image kann der Emulator alle Grafiken mit einem virtio-gpu-basierten Stack.
Weitere neue Funktionen und Verbesserungen
- USB-Passthrough ist jetzt unter Windows mit
-qemu -usb -device usb-host,vendorid=<usb-vendor-id>,productid=<usb-product-id>
verfügbar. Dies sollte auch unter Linux und macOS bereits gearbeitet) - WebRTC-Bibliotheken wurden auf M83 aktualisiert.
- Der Emulator unterstützt jetzt das Audiostreaming in Containern über WebRTC.
- Darwinn-Pipe-Endpunkt wurde entfernt.
- Die CUDA VPx-Decodierung für Videos ist jetzt verfügbar, wenn die CUDA VPx-Decodierung verfügbar ist in
Hardware über die Umgebungsvariable
ANDROID_EMU_MEDIA_DECODER_CUDA_VPX=1
. - Unter macOS sind SSE 4.1 und 4.2 jetzt im Android-Gastmodus verfügbar.
- Unter macOS ist INVTSC jetzt standardmäßig aktiviert. Dadurch kann die Zeitgenauigkeit verbessert werden des Gasts messen können.
- Wir verfolgen nun, welches erweiterte Steuerfeld vom Nutzer in den Messwerten ausgewählt wurde.
- Der Linux-Emulator verwendet jetzt die KVM-paravirtualisierte Uhr, wenn der Gast-Kernel Version ist >= 5.4 (R-System-Images oder höher).
- Der Emulator verwendet jetzt LZ4 zur Dekomprimierung von Gastkernen. Damit ist er kompatibel mit der modernen Kernel-Pipeline.
Konsolenbefehle zum Abrufen des AVD-Verzeichnisses des Emulators, der Discovery-Datei hinzugefügt Pfad im Anwendungsfall, in den Studio eingebettet ist, und Pfad zu Snapshots:
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>
Um Platz auf dem vertikalen Bildschirm zu sparen, haben wir eine Option zum Ausblenden Geräterahmen für die aktuelle AVD unter Erweiterte Steuerelemente > Einstellungen. Bis Geräteframes für alle AVDs global ausblenden, Funktions-Flag
NoDeviceFrame
, das durch Starten des Emulators aktiviert werden kann aus der Befehlszeile mit-feature NoDevice
-Frame aus oder fügen SieNoDeviceFrame = on
bis~/.android/advancedFeatures.ini
(Erstellen Sie diese Datei, wenn er existiert nicht bereits).Auf der Mobilfunkseite wurde ein Drop-down-Element hinzugefügt, mit dem die Messung aktiviert und deaktiviert werden kann ist dies bei älteren System-Images, die 5G nicht unterstützen, Ein/Aus-Schaltfläche für Meterdness.
- Zusätzlicher Konsolenbefehl für denselben Zweck:
gsm meter on|off
- Zusätzlicher Konsolenbefehl für denselben Zweck:
Toolchain / Build auf C++17 aktualisiert.
Fehlerkorrekturen: eingebetteter Emulator
- Die Zwischenablage sollte jetzt funktionieren.
- Ein Problem wurde behoben, durch das Großbuchstaben als Kleinbuchstaben ausgegeben wurden. im Emulator.
- Das Laden des Konsolentokens aus einem Unicode-Pfad in Windows wurde behoben.
SO_REUSEPORT
-Fehlermeldung unter Linux wurde behoben.- Ein Problem mit Snapshot-Beschädigung beim Senden von Snapshot-Befehlen über gRPC wurde behoben. und wenn Sie in Android Studio auf die Schaltfläche zum Speichern Emulator.
Bei Verwendung des in Studio eingebetteten Linux-Emulators stellte sich heraus, dass dieser Code über Chrome Remote Desktop ausgeführt wird, ist ein Fehler aufgetreten, bei dem
XDG_RUNTIME_DIR
nicht festgelegt ist, und kann dazu führen, dass der eingebettete Emulator aufgrund des Fehlers Emulator-Discovery-Dateien werden inXDG_RUNTIME_DIR
platziert. Sie können die Status des entsprechenden Problems mit dem Chrome-Problem Tracker.Als Behelfslösung greift der Emulator jetzt auf Erkennungsdateien in einem Möglicherweise ein anderes Verzeichnis, das auf der Nutzer-UID basiert:
/run/user/<uid>
.Eingebetteter Emulator: Geräte mit abgerundeten Ecken/Einkerbungen ändern sich jetzt um Platz für Ecken und Kerben zu schaffen. Dies erfordert einen Kaltstart dieser Emulatoren.
Der gRPC-Endpunkt unterstützt jetzt das Senden von SMS an das Gerät.
Allgemeine Fehlerkorrekturen
- Beim Ausführen des Windows-Emulators mit Riot sind Kompatibilitätsprobleme aufgetreten Vanguard aktiv. Der Windows-Emulator erkennt nun Vanguard Anti-Cheat- und Pop-ups wird eine Warnmeldung angezeigt, wenn Vanguard erkannt wird.
FD_SETSIZE
Fehler unter Windows wurde behoben. Wir verwenden jetztWSAEventSelect()
stattselect()
zum Herstellen nicht blockierender Verbindungen zu Loopback-Servern.- Unterstützung für F16C-CPUID-Funktion im Linux-Emulator mit behobenen Problemen hinzugefügt einige ARM64-Anwendungen durch NDK-Übersetzung; macOS/Windows in Bearbeitung.
- Die gpx/kml-Routenwiedergabe wurde korrigiert, um Zeitstempeln zu folgen.
- Das hüpfende Symbol bei der Einführung von macOS wurde behoben.
- Wenn
hw.audioInput=no
undhw.audioOutput=no
inconfig.ini
, Emulator-Audio ist nun ordnungsgemäß deaktiviert. - Es wurde ein Problem behoben, bei dem das Emulatorfenster minimiert wurde, während das erweiterte Fenster Fenster mit den erweiterten Steuerelementen geöffnet, aber nicht aktiv war, bleibt das Fenster mit den erweiterten Steuerelementen erhalten. wenn die Größe des Emulatorfensters angepasst wird. Die (bei einem aktiven Fenster mit erweiterten Steuerelementen) bei einem zukünftigen Update.
- Es wurde ein instabiler Fehler behoben, bei dem beim Start des Emulators keine WLAN-Verbindung hergestellt wurde.
- Problem behoben, durch das der Emulator Shell-Befehle mit langen oder unbefristeten Befehlen auslöste Zeitüberschreitungen.
- PC-Bios wurden mit Fehlerkorrekturen aktualisiert, um große Bilder, die an
-initrd
übergeben werden, besser zu unterstützen. im vorherigen BIOS eine sehr ineffiziente Methode verwendet. - Der Absturz während der Beendigung bei Verwendung der Option
-wifi-server-port
wurde behoben. - Der Emulator gibt jetzt eine Warnung aus, wenn nicht unterstützte Optionen an
-prop
übergeben werden (Nur qemu.*-Eigenschaften werden unterstützt.) - Wenn Sie den Emulator unter Windows erstellen, sollte die Wahrscheinlichkeit geringer sein, instabilen Fehlern beim Schreiben in Dateien. Weitere Informationen finden Sie im Windows-Build Anleitung.
- Die Zoom-Schaltfläche für faltbare AVDs wurde deaktiviert, was zu Problemen führte.
- Der Emulator meldet die Startzeit, die durch einen Geräteneustart verursacht wird, jetzt korrekt.
- Linux: Wenn unzureichende KVM-Berechtigungen vorhanden sind, druckt die Anleitung zur Fehlerbehebung jetzt schneller aus.
- Ein Problem wurde behoben, durch das der Emulator aktuelle System-Images nicht ohne von Beschleunigungen.
- Speicherbeschädigung oder Absturz beim Start über einen Detektor zum abgeschlossenen Bootmodus wurde behoben.
- Ein Speicherleck bei langen Bildschirmaufzeichnungen wurde behoben.
- Aktualisierung der Emulator-Symbole an das Branding von Studio 4.1.
- Die Erkennung von Remote-Sitzungen unter Windows wurde verbessert.
Fehlerkorrekturen: Grafik- und Video-Decodierung
- Das neueste Spiel von Asphalt 9 wurde mit einem schwarzen Bildschirm gerendert. Dieses Problem wurde behoben.
- Spam bezüglich Leeren des zugeordneten Zwischenspeichers mit
NULL
wurde entfernt. - Es wurde eine Race-Bedingung behoben, die beim Löschen des Vulkan-Status in einer Gast-Vulkan-App auftrat. geschlossen.
- Vulkan ASTC/ETC2-Emulations-Shader sind jetzt in libOpenglRender integriert Bibliothek. Dies ist zuverlässiger als das Lesen aus dem Dateisystem.
- In Vulkan wurde ein Problem behoben, bei dem bei Ausführung mit einer Vulkan 1.0-Instanz im
Host löschen, hat
vkGetImageMemoryRequirements2KHR
die zurückgegebene Das FeldpNext
derVkMemoryRequirements2
-Struktur. - Ein Speicherleck im Vulkan-Renderer wurde behoben.
- Eine kürzlich erfolgte Regression, bei der GLSL ES 1.00-Shader mit Variablennamen wie
isampler2D
konnte nicht kompiliert werden. - ANGLE-Shader-Übersetzer mit verschiedenen Fehlerkorrekturen aktualisiert, die mögliche Probleme beheben Fehler beim Kompilieren von Shadern unter Linux.
- Wir stürzen jetzt den Emulator ab, wenn der grundlegende Framebuffer Blit Shader nicht um das Phänomen im Auge zu behalten.
- ANGLE-Shader-Übersetzer wurde aktualisiert, um mit dem vorgelagerten ANGLE Schritt zu halten. Dadurch wurde Folgendes behoben:
Problem mit Speicherbeschädigung beim Übersetzen und ständigem Falten von OpenGL ES
Shadern mit nicht quadratischen Matrizen. Der Shader-Übersetzer ist jetzt
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 wurden nicht gefunden.
- Vulkan: Wir verwenden wieder den vordefinierten Loader, System Vulkan Loader verursachte bei einigen Konfigurationen Probleme. wird eine bessere Lösung Lösung.
- Problem bei der Verwendung von externem Vulkan-Speicher behoben, bei dem der Fehler möglicherweise hätte importierte nicht übereinstimmende Arbeitsspeichertyp-Indizes auf dem Host.
- Problem in der Emulation von
GL_ALIASED_POINT_SIZE_RANGE
behoben, bei dem die Aufzählung wird auf dem Host nicht unterstützt. - Ein Problem wurde behoben, bei dem Skia-Shader auf einigen Host-GPUs aufgrund
Fehler in Bezug auf
GL_EXT_shader_framebuffer_fetch
. - Da wir den D3D9-ANGLE-Renderer vor ein paar Versionen entfernt haben, Nutzer, die diesen Renderer aktiviert hatten, jetzt automatisch zu d3d11 ANGLE wechseln, UI-Einstellungen ausgewählt.
- Weitere Debug-Informationen wurden zur WGL-Initialisierung unter Windows hinzugefügt, um Trace-Fehler.
- Bei
hw.gltransport=virtio-gpu-pipe
wird die Leistung verbessert, wenn das Drehen nicht aktiviert wird auf dem Host bei Übertragungen vom Host zum Gast. - Zusätzliche Debugging-Protokollierung für den Fall, dass die OpenGLES-Emulation nicht initialisiert werden kann, wurde hinzugefügt.
- YouTube-Videos flimmerten oder wurden in der Momentaufnahme nicht angezeigt. Dieses Problem wurde behoben. laden.
- Wir sind vorerst auf Software-Decodierung für libvpx zurückgekehrt, da wir Probleme mit
CUDA-Hardware-Decodierung von libvpx. Wenn Sie eine unterstützte CUDA-Hardware-Decodierung haben
auf der Hostseite implementiert haben, kann die Hardware-Decodierung von libvpx über
die Umgebungsvariable
ANDROID_EMU_MEDIA_DECODER_CUDA_VPX=1
30.0.10 (30. April 2020)
Dieses Update umfasst Unterstützung für die direkte Ausführung des Emulators in Android Studio und virtuelle Geräte mit standardmäßig aktiviertem Freiform-Fenster-Modus.
Emulator in Android Studio ausführen
Der Android-Emulator kann jetzt direkt in Android ausgeführt werden. Studio verfügbar. Verwenden Sie diese Funktion, um Platz auf dem Bildschirm zu sparen, um schnell zwischen den Emulator und das Editorfenster über Hotkeys und organisieren Ihre IDE und den Emulator-Workflow in einem einzigen Anwendungsfenster verwalten.
Freiform-Fenstermodus
Sie können jetzt eine AVD erstellen, für die der Freiform-Fenstermodus aktiviert ist, indem Sie das 13,5"-Freeform-Hardwareprofil für Tablets, wenn Sie ein virtuelles Gerät in Android Studio Für dieses Hardwareprofil ist ein System-Image mit Android 11 erforderlich Entwicklervorschau 3 oder höher.
Bekannte Probleme
Die Größe von Fenstern mit freiem Format kann derzeit aufgrund von Problemen bei der Übertragung nicht angepasst werden Fenstermanager verschieben. Dieses Problem wird in einer zukünftigen Android 11-Version behoben. Release des System-Images.
30.0.0 (19. Februar 2020)
Dieses Update umfasst System-Images von Android 11 (API-Level 30) und verbesserte bei der Ausführung von ARM-Binärprogrammen.
Android 11-Systemimages
Sie können jetzt ein AVD erstellen, auf dem Android 11 ausgeführt wird. Dazu wählen Sie eine der Verfügbare System-Images für API-Level 30:
- x86: Umfasst sowohl x86- als auch ARMv7-ABIs.
- x86_64: Umfasst x86-, x86_64-, ARMv7- und ARM64-ABIs.
Unterstützung von ARM-Binärprogrammen in System-Images von Android 9 und 11
Wenn Sie den Android-Emulator nicht verwenden konnten, weil Ihre App ARM-Binärdateien abhängig sind, können Sie jetzt das x86-System-Image von Android 9 oder Android 11-System-Image zur Ausführung deiner App – es ist nicht mehr erforderlich, Ein bestimmtes System-Image herunterladen, um ARM-Binärdateien auszuführen Diese Geräte mit Android 9 und Android 11-System-Images unterstützen standardmäßig ARM und bieten im Vergleich zu Geräten mit vollständiger ARM-Emulation.
Bekannte Probleme
- Einige ARMv7-Binärdateien funktionieren nicht auf System-Images von Android 11 x86 und x86_64. Erwägen Sie die Entwicklung für ARM64, wenn Sie eine Ausrichtung auf Android 11 vornehmen.
29.0.11 (29. Mai 2019)
Dieses Update enthält folgende Verbesserungen und Fehlerkorrekturen:
- Windows: Der Emulator basiert jetzt auf der von uns versendeten
libgcc
-DLL mitlibgcc
statisch kompiliert wird. - Linux: Logcat-Unterstützung für die gRPC API wurde hinzugefügt. Weitere Informationen zu gRPC finden Sie unter gRPC-Streamingemulator (Linux).
- Der Emulator enthält jetzt einen monitorlosen Build für 32-Bit-x86-Gäste
(
qemu-system-i386
) Diese Funktion aktiviert x86-32-Bit-Images für API-Level 26. und niedriger, um mit dem monitorlosen Build ausgeführt zu werden. Beachten Sie, dass für 32-Bit-x86-Gäste mit Mit API 27 und höher verwendet der Emulator die 64-Bit-Engine (qemu-system-x86_64
) denn in diesen System-Images ist der Userspace zwar 32-Bit, der Kernel 64-Bit. Android Studio verwendet den Kernel, um Emulationsmodule auszuwählen. - Sie können jetzt benutzerdefinierte Qt-Bibliothekspfade mit der
ANDROID_QT_LIB_PATH
angeben Umgebungsvariable ein. - Sie können den Emulator jetzt mit früheren Binärdateien ausführen, die QEMU1 verwenden,
Ausführbare QEMU1-Dateien (
emulator[64]-[x86|arm|etc]
) werden im Emulator platziert -Verzeichnis. - Windows: Es wurde ein Problem behoben, das dazu führen konnte, dass der Emulator nicht ordnungsgemäß funktionierte. mit einer „Anfrage zum Herunterfahren von vCPUs“ beginnen. angezeigt.
- Ein Problem mit einer unnötigen Pipelinebarriere in emulierten, komprimierten Modellen wurde behoben. Texturen in Vulkan zu erstellen.
- Es wurde ein Fehler behoben, der bei HTTP-Proxy-Anfragen bei aufgeteilten Übertragungen auftrat. Codierung verwendet wurde. Weitere Informationen finden Sie in der Commit-Details.
29.0.9 (7. Mai 2019)
Dieses Update enthält folgende Korrektur:
- Windows: Ein Problem wurde behoben, bei dem die Kamera für virtuelle Szenen und die Webcam nicht um am Emulator zu arbeiten.
29.0.8 (6. Mai 2019)
Dieses Update enthält folgende Verbesserungen und Fehlerkorrekturen:
- Mehrere virtuelle Hardware-Displays werden jetzt unterstützt, wenn ein Gast anwesend ist. um jede Anzeige aufzuzählen und festzulegen. Mehrere virtuelle Hardware-Displays werden in einem zukünftigen Emulator-System-Image-Update enthalten sein.
- Neue Befehlszeilenoption hinzugefügt:
-delay-adb
. Mit dieser Option wird Verarbeitung von ADB-Paketen so lange, bis der Gast gestartet wurde (aus einem kalten . Mit dieser Option können Sie Probleme beheben, die auftreten können, wenn Sie das Emulator in einer CI-Umgebung, die den Emulator neu startet und gleichzeitig DDMS verwendet . - Ein Fehler wurde behoben, der beim Laden von Snapshots auftrat, wenn
glIsRenderbuffer
würde den falschen Wert zurückgeben. - Einige Probleme mit einem veralteten Status beim Neustart des Android-Gasts wurden behoben.
- Windows: Es wurden Probleme behoben, die verhinderten, dass der Emulator gestartet wurde, wenn der Der Windows-Nutzername enthielt Nicht-ASCII-Zeichen oder Leerzeichen.
Bekannte Probleme
- Die Snapshot-UI ist für Automotive-System-Images deaktiviert, da Snapshots werden derzeit für diese System-Images nicht unterstützt.
29.0.6 (1. Mai 2019)
Dieses Update enthält mehrere neue Funktionen, Verbesserungen vorhandener Funktionen, und Fehlerkorrekturen.
Unterstützung für QEMU1 und 32-Bit-Windows wird eingestellt
Zur besseren Wartung des Emulators werden QEMU1 und 32-Bit-Windows nicht mehr ausgeliefert Binärdateien. Wenn Sie Windows 32-Bit verwenden, können Sie kein Upgrade auf Version 29.0.6 durchführen.
Anforderungen an Android Q-Systemabbilder
Wenn Sie eine AVD ausführen möchten, die ein Android Q-System-Image verwendet, müssen Sie jetzt Version 29.0.6 (diese Release-Version) oder höher.
Verbesserungen an Project Marble
Mit diesem Update setzen wir unsere Arbeit an Project Marble fort. Initiative, die auf dem Android Developer Summit angekündigt wurde im November 2018. Weitere Informationen zu weiteren Verbesserungen bei Project Marble Informationen in früheren Versionen finden Sie unter Android Emulator: Project Marble Improvements.
Im Rahmen dieser Aktualisierung zielten die meisten unserer Bemühungen auf Project Marble darauf ab, die Emulator-Ressourcennutzung, z. B. durch Reduzierung der CPU-Auslastung des Emulators bei Inaktivität. Wir haben auch Änderungen vorgenommen, die die Arbeit mit dem Emulator in einem Umgebungen und wir haben allgemeine Qualitätsprobleme angegangen.
In den folgenden Abschnitten werden die Verbesserungen von Project Marble beschrieben, die in diesem Update enthalten:
Verbesserungen am Audioverhalten des Hosts
Ab Version 28.0.3 blockiert der Emulator die Audioeingabe. standardmäßig vom Host.
Wenn Sie die Audiodaten des Hosts verwenden möchten, können Sie diese Option aktivieren. Gehen Sie dazu zu Erweiterte Steuerelemente > Mikrofon und Aktivierung von Virtuelles Mikrofon verwendet Host Audioeingabe. Diese Option ist automatisch deaktiviert, wenn der Emulator neu gestartet.
Wenn Sie die Befehlszeile verwenden, können Sie Host-Audio auch mit der
-allow-host-audio
und können die folgenden ADB-Befehle verwenden, um
Host-Audiodaten ein- bzw. ausschalten:
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 auch ohne UI ausgeführt werden kann. Mit monitorlosen Builds können Sie Emulator für Docker- und CI-Workflows (Continuous Integration).
Mit diesem Update haben wir weitere Verbesserungen vorgenommen, damit der Emulator ausgeführt werden kann.
mit einer Mindestanzahl von Abhängigkeiten. Unter Linux werden monitorlose Builds nicht mehr
pulseaudio
- oder libX11
-Bibliotheken einschließen. Die systemabhängige freigegebene Datei
Bibliotheken, die nicht mit dem Emulator gepackt sind, auf den
folgende Liste:
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
Aktualisierung der Qt-UI-Bibliotheken auf Version 5.12 LTS
Dieses Update enthält die folgenden Verbesserungen gegenüber der Version von Qt 5.12 mit LTS-Unterstützung:
- Um Abstürze der
libpng
-Decodierung von Qt beim Starten eines bestimmten Systems zu vermeiden Bilder verwenden, verwendet der Emulator jetzt eine eigenelibpng
-Version, um PNG-Bilder zu decodieren. - Um Probleme mit einigen Linux-Installationen mit inkompatiblen Versionen zu beheben
von einigen Qt-abhängigen Bibliotheken ein Paket aus
libfreetype
,libsoftokn
,libsqlite3
undlibxkbcommon
mit dem Emulator. - Der Emulator verwendet jetzt die nativen Windowing-Bibliotheken der Plattform, überwachen Sie Dimensionen, anstatt die Qt-Bibliotheken zu verwenden, die unzuverlässige Ergebnisse.
Automatische CPU-Optimierungen nach Kaltstart
Um die CPU-Nutzung zu optimieren, führt der Emulator jetzt die folgenden ADB-Befehle bei einem kalten
wenn das Signal boot complete
empfangen wird:
adb shell settings put screen_off_timeout 214783647
- Dieser Befehl erhöht das Zeitlimit für das Ausschalten des Bildschirms, sodass der Emulator in ohne Aufladen. Im Akkumodus ist die CPU-Hintergrundnutzung sehr stark reduziert.
- Im AC-Lademodus können GMSCore-Hintergrundvorgänge wie App-Updates über alle CPU-Kerne hinweg – und somit auch den Computer des Nutzers –, ohne dass Warnung.
adb shell pm revoke com.google.android.googlequicksearchbox android.permission.RECORD_AUDIO
- Mit diesem Befehl werden die Mikrofonberechtigungen für die Google App aufgehoben. die CPU-Nutzung im Hintergrund auf dem Startbildschirm und im Launcher die Google Suche App aktiv ist.
- Dieser Befehl wird zusätzlich zum Standardverhalten des Emulators von Host-Audio für den Host deaktivieren Darüber hinaus enthält dies wird automatisch die beschriebene Reduzierung der CPU-Auslastung Hotword-Erkennung ab Version 28.0.23.
Neue Umgebungsvariablen für die Leistungsüberwachung
Sie können jetzt zwei neue Umgebungsvariablen verwenden, um ein detailliertes Monitoring Leistung und Ressourcennutzung des Emulators.
SHOW_PERF_STATS=1
- Diese Umgebungsvariable ermöglicht das Tracking der CPU- und RAM-Nutzung. Sendungsverfolgung Bei der RAM-Nutzung wird zwischen der Grafiknutzung und dem gesamten residenten Arbeitsspeicher unterschieden.
ANDROID_EMU_TRACING=1
- Diese Umgebungsvariable ermöglicht das Drucken jedes Mal, wenn eine Eingabe oder Grafik lange Zeit in Anspruch nimmt (länger als 1 ms).
- Wir verwenden diese Umgebungsvariable auch zur Diagnose von Problemen, Windows-Nutzer hatten mehr Verzögerung (abgesprungene Frames) als Nutzer. unter macOS oder Linux.
Allgemeine Verbesserungen am Projekt Marble
Diese Aktualisierung enthält auch die folgenden allgemeinen Verbesserungen, die Teil der Project Marble-Initiative sind:
- Sie können jetzt mit den folgenden Konsolenbefehlen alle vCPUs im Emulator sofort anhalten:
<ph type="x-smartling-placeholder">
- </ph>
adb emu avd pause
adb emu avd resume
- Der Aufwand beim OpenGL-Zeichnen wurde erheblich reduziert. Diese Verbesserung reduziert die CPU-Nutzung während der Emulator Animationen abspielt.
- Die Unterstützung für das virtuelle Netzwerkgerät e1000 von QEMU wurde wiederhergestellt. Sie können um den Emulator in einer Netzwerkumgebung mit Bridge einzurichten. In einer verbunden ist, wird der Emulator im Host-Netzwerk angezeigt Hostnetzwerk im Emulator angezeigt wird.
- Zum Starten des Emulators werden jetzt die für QEMU 2.12 geeigneten BIOS-Binärdateien verwendet.
- Die
ffmpeg
-Version wurde für die Videocodierung und -decodierung auf Version 3.4.5 aktualisiert. - Der Aufwand für die E/A der QEMU-Hauptschleife konnte unter macOS erheblich reduziert werden, da die Hauptschleife der E/A-Schnittstelle ersetzt wurde.
Schleife, die auf
select()
basierte, mit einer Hauptschleife, die aufkqueue
basierte. - Die Größe des Logcat-Zwischenspeichers wurde auf 2 MB erhöht, um Probleme mit instabilen unerwarteten Ereignissen zu beheben. EOF beim Ausführen von Logcat mit dem Emulator.
- Der Emulator exportiert jetzt standardmäßig die Umgebungsvariable
LC_ALL=C
. Dieses behebt Abstürze und Inkompatibilitätsprobleme im Zusammenhang mit der Ausführung des in verschiedenen Sprachen. - Du kannst jetzt die CPU- und RAM-Nutzung des Emulators anhand der Leistung verfolgen Statistiken, auf die du unter Erweiterte Einstellungen > Einstellungen > Erweitert > Leistungsstatistiken Anhand dieser Statistiken lassen sich Probleme schnell diagnostizieren, wenn der Emulator verwendet anscheinend zu viel CPU oder RAM.
glReadPixels GL_IMPLEMENTATION_COLOR_READ_TYPE
verwendet jetzt die anstelle eines emulierten Ergebnisses. Mit dieser Änderung können Probleme behoben werden, bei denen Bilder und Assets werden nicht angezeigt, weil das Format für das Zurücklesen nicht geeignet ist.- Unterstützung für OpenGL ES-Erweiterungen
GL_EXT_texture_format_BGRA8888
hinzugefügt undGL_APPLE_texture_format_BGRA8888
, wenn diese Erweiterungen vom Host. - Der Fehlerbericht-Benutzeroberfläche wurden weitere Diagnoseinformationen hinzugefügt. Darüber hinaus können Sie auf
über die Konsole aus. Verwenden Sie dazu die folgenden Befehle:
<ph type="x-smartling-placeholder">
- </ph>
telnet localhost 5554
avd bugreport
- Bei Android Q-System-Images erhöht der Emulator die RAM-Mindestgröße auf zwei GB.
- Zusätzliches Logging und Drucken hinzugefügt, wenn OpenGL oder der Hypervisor nicht Initialisieren.
- Wenn der Emulator nicht gleichzeitig eine
-read-only
-Instanz eines AVD starten kann, gibt der Parameter Der Emulator versucht jetzt dreimal, die AVD von-read-only
neu zu starten. Sekunden. Diese Änderung erhöht die Wahrscheinlichkeit, dass der Emulator-read-only
-Instanzen und AVD gleichzeitig starten, wenn andere beschreibbare Instanzen von dass AVD die Bereinigung veralteter Dateien nicht abgeschlossen hat. - Bei künftigen System-Images unterstützt der Emulator jetzt Hardware Composer 2.0. Durch diese Änderung sollte der Treiber-Overhead beim Ausführen der meisten Animationen reduziert werden.
- Der Emulator-Build basiert jetzt auf CMake/Ninja.
- Trennlinien in der Benutzeroberfläche des Emulators für erweiterte Steuerelemente in den Tastenkombinationen Tabelle wiederhergestellt.
- Nutzer können unserem Team jetzt Messwerte zur CPU- und RAM-Nutzung in einer 10-Sekunden-Intervall. Wir verwenden diese Messwerte, um unsere Daten zum Emulator anzureichern der Ressourcennutzung mit unterschiedlichen Anwendungsfällen unserer Nutzer. So können wir um den Emulator effizienter und reaktionsschneller zu machen.
Allgemeine Fehlerbehebungen für Project Marble
Dieses Update umfasst außerdem die folgenden allgemeinen Fehlerbehebungen, die Teil des Projekt Marble-Initiative:
- Probleme mit Zuckungen und falschen Frames, die auf Geräten angezeigt wurden, wurden behoben. mit Intel-GPUs verwenden, wenn Android Q-System-Images verwendet werden.
- Probleme behoben, bei denen bei Verwendung des Android Q-Systems ein schwarzer Bildschirm angezeigt wurde Bilder mit Pixel 2 XL-Skins (oder anderen Skins mit Kerben oder abgerundeten Ecken)
- Das Problem, dass die Befehlszeilenoption
-partition-size
nicht festgelegt wurde, wurde behoben. die Größe der Datenpartition. - Es wurde ein Problem behoben, bei dem pulseaudio im Linx-Emulator sich dreht und aufnimmt den gesamten CPU-Kern.
- Probleme mit dem außerhalb des gültigen Speicherzugriffs bei der Verarbeitung komprimierter Dateien behoben Texturen.
- GL-Fehler behoben, die beim Aktualisieren in
glTexSubImage2D
auf dem Host aufgetreten sind Bestimmte gralloc-Puffer (im Format RGB 565, RGB10A2, RGB(A)16F) - Ein Displayproblem wurde behoben. in Android Q-Systemabbildern mit Momentaufnahmen, Geometrie wurde mit einer falschen Einstellung für den Instanzdivisor gerendert.
- Einige schwer zu reproduzierende Absturz- und Einfrierensprobleme beim Start wurden behoben. da Qt Signale verliert oder inkonsistente Status beim Start hat.
- Zahlreiche Probleme mit der Nebenläufigkeit wurden behoben. Wir können jetzt den Linux-Emulator erstellen. mit ThreadSanitizer (TSAN), das ansonsten Programmfehler aufdecken kann, schwierig zu reproduzieren.
- Für Linux-Nutzer: Wir haben festgestellt, dass auf bestimmten Host-Kerneln der Gast-Android
kann der Kernel in KVM ausfallen und mit einem generischen Hardwarefehler beendet werden. Emulator
wird jetzt
abort()
, wenn dies geschieht, um die Debug-Fähigkeit zu verbessern (zuvor war der Emulator nicht mehr reagiert). - Für Linux-Nutzer: Zur Vereinfachung der CI-Einrichtung können Sie die neue
-stdouterr-file <file-name>
-Befehlszeilenoption, um sowohlstdout
als auchstderr
in eine Datei. SO_REUSEADDR
wurde nicht richtig verwendet. 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, konnten nicht gestartet werden, wenn der Nutzername Leerzeichen enthielt.
- Ein Problem mit fehlender Initialisierung der RCU in HAXM-vCPU-Threads wurde behoben. Dieses beheben möglicherweise einige Abstürze und Race-Bedingungen.
- Absturz behoben, der bei bestimmten Mustern beim Speichern und Laden auftrat Snapshots aus der Snapshot-Benutzeroberfläche mit aktuellen Android Q-System-Images.
- Ein Problem wurde behoben, durch das die virtuelle Szenenkamera leer war, wenn der Emulator aus einem Snapshot initialisiert wurde, wenn beim Abspielen dieses Snapshots ein AR-Makro wurde gespeichert.
- Bei einigen Nutzern mit Remote-Desktop-Einrichtung wurde ein schwarzer Bildschirm angezeigt. Dieses Problem wurde behoben.
wenn Sie den Emulator unter Linux starten. Um dies zu vermeiden,
konfiguriert
MESA_RGB_VISUAL
. Weitere Informationen finden Sie in den Commit-Details. - Ein Problem wurde behoben, bei dem die auf TV-AVDs erscheinen.
- Problem behoben, bei dem der Emulator immer oben stand, wurde das Fenster mit den erweiterten Steuerelementen jedes Mal angezeigt, wenn der Emulator rotiert wurde.
Hardwareprofile für faltbare Geräte
Der Emulator enthält jetzt Hardwareprofile für faltbare Geräte. So verwenden Sie diese neue Hardwareprofile, müsst ihr Android Studio 3.5 Canary 10 oder höher verwenden.
Es gibt zwei Profile für faltbare Hardware, mit denen Sie ein AVD erstellen können:
- 7,3" Faltbar: 1536 x 2152 aufgeklappt, 4,6" 840 × 1960 (gefaltet)
- 8 Zoll Faltbar: 2200 x 2480 aufgeklappt, 6,6" 1480 × 2480 (gefaltet)
Wenn Sie den Emulator mit einem dieser Hardwareprofile ausführen, können Sie Gerät mithilfe der Aktionen „Falten und Aufklappen“ aufklappen in der Emulator-Symbolleiste, unter Console-Befehle oder die folgenden Tastenkombinationen:
- 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 ihre Standardstatus.
Weitere Informationen finden Sie unter Häufige AR-Aktionen mit Makros testen.
Vulkan-Unterstützung (Windows, Linux)
Windows- und Linux-Nutzer können Vulkan-Apps jetzt mit dem Android-Emulator bis zu Vulkan 1.1, wenn ein kompatibles System-Image verwendet wird (Android Q Beta 3 oder höher für Vulkan 1.1, Android Q Beta 2 für Vulkan 1.0) und einer kompatiblen Host-GPU (dieses umfasst die meisten Intel-, NVIDIA- und AMD-GPUs ab 2014.
Wenn Sie die Vulkan-Unterstützung aktivieren möchten, müssen Sie Ihrem
~/.android/advancedFeatures.ini
-Datei (erstellen Sie die Datei, falls sie noch nicht vorhanden ist):
Vulkan = on
GLDirectMem = on
Erste Unterstützung für ROM-Entwickler
ROM-Entwickler, die sdk_phone_x86
oder sdk_phone_x86_64
erstellen
(Varianten userdebug
, eng
) für Ziele im AOSP-Zweig master
können jetzt eine
Vulkan-fähigen Emulator.
Diese Funktion befindet sich noch in der Testphase und ist hauptsächlich für Entwickler gedacht, die an
System-Images, Treiber und Spiel-Engines. Viele Erweiterungen fehlen.
HOST_COHERENT
Arbeitsspeicher wird jedoch unterstützt und Sie sollten jetzt Folgendes können:
die Vulkan API Tutorial Samples ausführen.
Unter Linux können Sie dies mit den folgenden Befehlen 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 Zero-Copy-Interoperabilität mit
OpenGL über die Erweiterung GL_EXT_memory_objects
. Der Emulator nutzt diese
eine vollständige Möglichkeit zum Rendern der Android-Benutzeroberfläche mithilfe von Skia
Vulkan APIs
Wenn Sie eine NVIDIA- oder AMD-GPU haben, die Vulkan unterstützt, verwenden Sie Folgendes: Befehle zum Testen des Skia-Renderings mit einem kompatiblen System-Image (Android Q Beta 3 und höher):
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 enthält bereits die Swiftshader MoltenVK und libportability APIs (gfx-rs) verwenden. Sie können mit diesen APIs experimentieren, indem Sie die folgende Umgebung festlegen Variablen:
- Swiftshader:
ANDROID_EMU_VK_ICD=swiftshader
- MoltenVK:
ANDROID_EMU_VK_ICD=moltenvk
- Libportability:
ANDROID_EMU_VK_ICD=portability
Bekannte Probleme
HAXM kann dem Gast manchmal nicht den kohärenten Vulkan-Speicher zuordnen und schaltet sich dann aus. den Emulator herunter. Dies wird in einem kommenden HAXM-Update behandelt.
gRPC-Streamingemulator (Linux)
Unser Ziel ist es, den Emulator so vielseitig wie möglich zu machen, für das GPU-Rendering und die Interaktivität in einer Vielzahl von laufenden Kontexten. Bei CI- und Remote Desktop-Nutzern treten seit Langem folgende Probleme auf:
- Das programmatische Senden von Eingabebefehlen an den Emulator umfasst entweder ADB-Shell-Befehle ausführen, die einen hohen Overhead verursachen können, oder die Telnet-Konsole, die schneller ist, aber mit bestimmten Netzwerken möglicherweise nicht funktioniert Konfigurationen.
- CI-Nutzer führen Emulatoren häufig monitorlos aus, was das Aufspüren erschwert Probleme, bei denen der Bildschirm sichtbar oder interaktiv sein muss.
- Remote Desktop-Nutzer können häufig nicht mit dem Emulator interagieren, wenn sie den Host GPU-Rendering, da das GPU-Rendering oft an den nicht virtuellen Host angezeigt wird.
Um dieses Problem zu beheben, liefert der Emulator bei der Ausführung auf einem Linux-Computer eine gRPC-Dienst. gRPC ist ein allgemeines Framework für RPC, der über HTTP funktioniert.
Standardmäßig ist der Emulator-gRPC-Dienst deaktiviert, aber Sie können den
mit der folgenden Befehlszeilenoption, wobei <port>
ist der Port, über den der Emulator gRPC-Anfragen bereitstellen sollte (normalerweise 5556
):
-grpc <port>
Sobald der Dienst gestartet wurde, können gRPC-Befehle von Clients ausgegeben werden. Die Der aktuelle Satz von Befehlen ermöglicht sowohl das Senden von Eingabeereignissen als auch den Empfang von Screenshots. Mit diesen Befehlen können Sie die folgenden Probleme beheben:
- Eingabebefehle können mit geringem Aufwand über HTTP an den Emulator gesendet werden. HTTP Außerdem können Befehle in zusätzlichen Netzwerkkonfigurationen gesendet werden.
- Screenshot-Befehle können gesendet werden, um den aktuellen Bildschirm abzufragen, selbst wenn das im monitorlosen Emulator ausgeführt. Zur Interaktivität können auch Eingabeereignisse zum Emulator zurück.
- Remote Desktop-Nutzer können den Emulator monitorlos auf dem Hauptbildschirm ausführen. GPU-beschleunigtes Rendering bei Verwendung von gRPC zum Abrufen von Screenshots und Senden von Eingaben um mit dem Emulator zu interagieren.
Eine vollständige Liste der verfügbaren Befehle finden Sie unter diesen Protokollzwischenspeicher.
Um Ihnen den Einstieg in gRPC zu erleichtern, haben wir einige Beispielclients bereitgestellt. auf die Sie sich beziehen können.
Dazu gehören derzeit die folgenden Beispiele:
- Ein Go-basierter Dienst, mit dem der Emulatorstatus abgefragt werden kann.
- Eine React-App, die Remote-Interaktivität per Screenshot und Eingabe zeigt RPCs. Für dieses Beispiel ist die protobuf-Version 3.7.0 oder höher erforderlich.
- Ein Python-Beispiel, das die VM-Konfiguration des Emulators abfragt und dann einer Reihe von Befehlen.
28.0.25 (29. März 2019)
Dieses Update enthält folgende Verbesserungen und Fehlerkorrekturen:
Monitorloser Emulator-Build
Die Einrichtung des Emulators mit Docker und anderen kontinuierlichen Integrationsworkflows (CI) aufgrund der impliziten Erwartungen an das System, Unterstützung von Qt und seinen gemeinsam genutzten Bibliotheksabhängigkeiten (und andere Probleme).
Als ersten Schritt zur Behebung dieses Problems haben wir
eine Variante des Emulators eingeführt,
mit ausführbaren QEMU-Dateien, die nicht von Qt. Unter Linux gibt es
ist nach wie vor ein Link zu libX11
. Wir hoffen aber, diesen bald auch entfernen zu können.
Um den monitorlosen Emulator zu verwenden, führen Sie ihn wie gewohnt über die Befehlszeile aus.
Ersetzen Sie jedoch den binären Aufruf des Emulators durch emulator-headless
. Weitere Informationen
28.1.8 Canary-Version
veröffentlicht.
- Probleme mit Zucken und falscher Frame-Anzeige auf Intel-GPUs unter Android wurden behoben. Q-System-Images.
- Probleme behoben, bei denen bei Verwendung des Android Q-Systems ein schwarzer Bildschirm angezeigt wurde mit Pixel 2 XL-Skins.
- Zum Starten des Emulators werden jetzt die neuesten BIOS-Binärdateien verwendet. Diese Änderung kann dazu beitragen, die Anzahl der Anfragen zum Herunterfahren von vCPUs zu reduzieren. Fehler, die manchmal auftreten, wenn den Emulator unter Windows starten.
- Eine Fehlerbehebung für die "falsche Anzeige beim Fortsetzen von Android Q-System-Images von einem Snapshot" wurde rückportiert. .
- Nutzer empfanden „nicht autorisiert“ Probleme mit Emulatoren
aufgrund einer inkompatiblen ADB-Änderung in Plattform-Tools 28.0.2. Sie können
Jetzt können Sie ADB von Plattform-Tools 28.0.2 sicher mit dem Emulator verwenden. Wenn Sie
Es treten Probleme mit "nicht autorisiert" auf Emulatoren, führen Sie folgende Schritte aus:
Schritte zur Fehlerbehebung:
<ph type="x-smartling-placeholder">
- </ph>
- Beenden Sie alle Emulatoren.
- Löschen Sie die Dateien
~/.android/adbkey
und~/.android/adbkey.pub
. - Führen Sie den folgenden Befehl aus:
adb kill-server
- Führen Sie den folgenden Befehl aus:
adb devices
- Löschen Sie die AVD-Daten.
- Starten Sie den Emulator neu.
28.0.23 (29. Januar 2019)
Dieses Update enthält folgende Verbesserungen und Fehlerkorrekturen:
Host-Audioeingabe standardmäßig deaktiviert
Ein aktueller Beitrag auf Reddit wie das Gast-Android-Betriebssystem immer die Mikrofone des Hostmikrofons verwendet. und die Verwendung von "Ok Google" unerwartet zu funktionieren. Es tut uns leid, und arbeiten gemeinsam mit dem Android-Team daran, die Hotword-Erkennung auch im System-Image deaktiviert.
Um dieses Problem zu beheben, haben wir folgende Änderungen vorgenommen:
- Die tatsächlichen Host-Audiodaten werden jetzt standardmäßig gelockert. Wenn der Gast die Mikrofon hat, wird die Stille statt des Audios des Gastgebers ignoriert.
- Wenn Sie die Audiodaten des Hosts verwenden möchten, können Sie diese Option jetzt aktivieren. gehen Sie zu Erweiterte Steuerelemente > Mikrofon und Aktivierung des virtuellen Mikrofons verwendet die Host-Audioeingabe. Diese Option wird automatisch deaktiviert, Emulator neu gestartet wird.
Updates zu Untersuchungen der CPU-Nutzung
Bei unseren Untersuchungen zu Project Marble haben wir festgestellt, dass eine hohe CPU-Auslastung Der Emulator kann in die folgenden drei Kategorien eingeteilt werden:
Bei Inaktivität: Automatische App-Updates in Play Store-Bildern
Wir haben festgestellt, dass alle installierten Apps in zufälligen Intervallen aktualisiert werden, selbst wenn Nutzer ist nicht angemeldet. Während des Prozesses hängt die CPU-Auslastung von der Anzahl der Kerne × 100% (in der Regel ~400%) in GMSCore und dex2oat. Sie können dies abmildern indem Sie automatische App-Updates in der Play Store App deaktivieren.
Bei Inaktivität: Hotword-Erkennung
Wenn sich auf dem Startbildschirm keine App im Vordergrund befindet, CPU-Auslastung (~25% mit Spitzen bis 50%). Dies wird durch die Hotword-Erkennung verursacht der ständig den Host anpingt. Sie können dieses Problem nicht beheben, indem Sie den Host Audioeingabe, da die CPU-Kosten in erster Linie auf die benötigte Zeit vom Gastgeber zum Gast reisen. Sie können dieses Problem jedoch dem Entziehen der Mikrofonberechtigungen in der Google App
Während aktiv, manchmal bei Inaktivität: Animationen
Animationen sind die dritte Ursache für eine hohe CPU-Auslastung. Wir haben festgestellt, dass können wir die CPU-Nutzung reduzieren, selbst wenn der Emulator nicht inaktiv ist. Wir führen Optimierungen für Grafiktreiber ein. im Rahmen des Projekts Marble.
28.0.22 (21. Dezember 2018)
Dieses Update enthält folgende Verbesserungen und Fehlerkorrekturen:
- Es wurde ein Problem behoben, bei dem der Mac-Emulator in einigen Einstellungen Neustart oder Kernel-Panic beim Speichern von Quickboot. (Problem 120951634)
- Wenn Sie eine zugeordnete Datei als RAM-Snapshot verwenden, hebt der Emulator die Zuordnung des explizit beim Beenden der Dateizuordnung.
28.0.20 (11. Dezember 2018)
Dieses Update enthält folgende Verbesserungen und Fehlerkorrekturen:
- Es wurde ein Problem unter Windows behoben, durch das der Emulator bei einem Snapshot eingefroren ist. mit bestimmten Intel-GPU-Modellen laden.
- Es wurde ein Problem behoben, bei dem der ADB-Gerätestatus
unauthorized
bei der Verwendung einer Nicht standardmäßiger Standort fürANDROID_SDK_HOME
. - Es wurde ein Problem behoben, durch das der Emulator unter Windows abstürzte, wenn Starten von System-Images mit deaktivierter CPU-Beschleunigung
- Die verpixelten Problem mit der Anzeige im Emulator. Das Downsampling sollte jetzt funktionieren.
- Problem behoben unter macOS 10.14 und höher, wo die Mausbewegungssteuerung für virtuelle Szenenkameras aufgrund einer Interaktion mit den neuen Sicherheitseinstellungen für Bedienungshilfen zu sensibel.
- Es wurde ein Fehler bei der Berechnung der Zeitzone behoben, der dazu führen konnte, dass die Uhr des Emulators auf eine andere Position wechselte. sporadisch verändern.
- Renderingfehler in verschiedenen „cocos2d“ und „Unreal“ wurden behoben. für Suchmaschinen-Apps.
- Im Emulator wird jetzt WLAN-Peer-to-Peer unterstützt.
Zwei Emulatoren können jetzt direkt über WLAN miteinander kommunizieren, wenn sie die neueste
Play Store-Bild für Pie Wenn Sie WLAN-Peer-to-Peer verwenden möchten, starten Sie zwei AVDs mit denselben
Argumente
-wifi-server-port
und-wifi-client-port
: <ph type="x-smartling-placeholder">- </ph>
emulator @<server-avd-name> -wifi-server-port 9999
emulator @<client-avd-name>-wifi-client-port 9999
- Zusätzliche Webcams unter Windows werden durch Aufnahme eines inkompatiblen Frames unterstützt. und passen ihre Größe dynamisch an die Kameraeinstellung im Android- Gast.
28.0.16 (November 2018)
Dieses Update enthält mehrere neue Funktionen, Verbesserungen vorhandener Funktionen, und Fehlerkorrekturen.
Ressourcennutzung
Der Emulator benötigt jetzt insgesamt weniger RAM, insbesondere bei der Verwendung von System-Images mit API-Level 28 oder höher. Diese System-Images beinhalten eine verbesserte Arbeitsspeichernutzung Gast-Grafiktreiber anzeigen.
Darüber hinaus haben wir die Ressourcennutzung in den folgenden Bereichen verbessert:
- Reduzierte Arbeitsspeichernutzung des Emulators bei lang andauernden Tests. Wenn Sie immer noch während lang andauernden Tests Probleme mit der Arbeitsspeichernutzung auftreten. ein Problem, das Ihren Anwendungsfall im Issue Tracker beschreibt.
- Geringere CPU-Auslastung beim Ausführen von Apps mit Animationen.
- Es wurde ein Problem behoben, bei dem der QEMU AIO-Kontext unter Windows ein Speicherleck verursachte.
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 und ihre Änderungen am virtuellen Gastlaufwerk werden beim Beenden verworfen.
Wenn Sie mehrere Instanzen desselben AVD gleichzeitig ausführen möchten, starten Sie alle Instanzen
nach der ersten Instanz aus der Befehlszeile mit dem Flag -read-only
hinzu.
Dies wird durch Kopieren der QCOW2-Dateien möglich, die mit der
die beschreibbaren Teile des Android-Images. Um Ihnen bei der Speicherplatzverwaltung zu helfen, haben wir
Das qemu-img
-Befehlszeilentool ist gebündelt, damit Sie QCOW2 vorab festlegen können.
bevor Sie mehrere Instanzen starten.
Wenn sie in Verbindung mit Dateigestützten Gast-RAM-Snapshots verwendet wird, verwenden, teilen sich mehrere AVD-Instanzen den primären AVD-Schnellstart-Snapshot als gemeinsame Quelle des Copy-on-Write-Gast-RAM. Dieses Attribut bedeutet, dass die Instanzen einen Großteil ihres RAM gemeinsam nutzen. Verwenden Sie können Sie Tests durchführen, bei denen mehrere Geräte parallel ausgeführt werden müssen.
Wir wissen Ihr Feedback zu möglichen Anwendungsfällen zu schätzen. interaktiven oder CI-Workflows. Bitte erstellen Sie Probleme unter Problem Tracker.
Dateigestützte Gast-RAM-Snapshots
Durch die Vorabzuweisung und Zuordnung des Gast-RAM als Datei kann der Emulator jetzt Quickboot-Snapshots während der Laufzeit, anstatt beim Beenden die gesamte Arbeit zu erledigen. Wenn beim Schließen der Emulatoren lange Zeit sparen, aktivieren Sie um die Leistung des Schnellstarts zu verbessern. Standardmäßig wird ein Schnellstart wird die Momentaufnahme beim Verlassen gespeichert und jedes Mal neu geladen, wie das Anhalten und wenn Sie ein echtes Gerät verwenden.
Da der Android-Gast-RAM jetzt standardmäßig automatisch gespeichert wird, können Sie und wiederholt aus diesem Status laden, müssen Sie dem Emulator um Änderungen nach jeder Sitzung zu verwerfen. Dazu haben Sie folgende Möglichkeiten:
- Das Flag
-no-snapshot-save
oder-read-only
beim Starten des Emulators verwenden über die Befehlszeile eingeben. - Gehe zu Erweiterte Steuerelemente > Schnappschüsse > Einstellungen und wählen Sie Automatisch speichern zu Quickboot? auf Nein.
- Nach Auswahl dieser Option müssen Sie den Emulator neu starten. Wenn die
automatisch speichern, können Sie mit dem folgenden Befehl eine
Prüfpunkt:
Nachdem Sie diesen Befehl ausgeführt haben, bleibt der Schnellstart-Snapshot des Emulators bei diesem Wert Checkpoint. Führen Sie den gleichen Befehl erneut aus, um den Emulator aus der Checkpoint.adb emu avd snapshot remap 0
Snapshots, die über die Snapshots-UI aufgenommen und geladen werden, funktionieren, während sie ohne Dateizuordnungen.
Da die Funktionsweise von Quickboot umfassend geändert wurde,
Vielen Dank für Ihr Feedback dazu, ob dadurch die Quickboot-Leistung verbessert wird und welche
welche Probleme auftreten. Wenn Probleme auftreten, können Sie
deaktivieren Sie diese Funktion, indem Sie die folgende Zeile zu Ihrem
~/.android/advancedFeatures.ini
-Datei:
QuickbootFileBacked = off
Wenn Sie den Emulator über einen Snapshot starten (entweder mithilfe der Methode -snapshot
oder über einen Snapshot im AVD-Manager starten)
Emulator deaktiviert sowohl das automatische Speichern für Quickboot-Snapshots als auch das Speichern von Quickboot
Snapshots beim Beenden. Dadurch verringert sich die Wahrscheinlichkeit, dass der Schnellstart-Snapshot
unbeabsichtigt überschrieben und vermeidet langsame Fallback-Pfade, die keine
dateigestützten Quickboot-Snapshots.
QEMU 2.12
Wir haben unsere QEMU-Variante von QEMU 2.9 auf QEMU 2.12 umgestellt. Dieses Update enthält die folgenden QEMU-Änderungen:
- https://wiki.qemu.org/ChangeLog/2.10
- https://wiki.qemu.org/ChangeLog/2.11
- https://wiki.qemu.org/ChangeLog/2.12
Im Folgenden sind einige der wichtigsten Änderungen aufgeführt, 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-Sperrung, sofern Optionen nicht anders angegeben sind.
qemu-img: qemu-img resize
unterstützt die Vorabzuweisung der neuen Teile des Images.- Das Verkleinern von QCOW2 wird jetzt in
qemu
undqemu-img
unterstützt.
Bedienungshilfen
- Probleme mit Screenreadern wurden behoben und die Unterstützung für diese Tools in Bildschirmaufzeichnung und Schnappschuss überwachen.
- Die Quick Boot-Benachrichtigungssymbole wurden für farbenblinde Nutzer zugänglicher gemacht.
Grafik
- Bei OpenGL ES konnte ein Problem mit dem außerhalb des gültigen Speicherzugriffs auftreten. Dieses Problem wurde behoben. Vertex-Array-Zeigern.
- Einige ältere GPUs unterstützen nicht OpenGL 2.1 oder höher (erforderlich). Probleme mit der Zuverlässigkeit hatten. Diese Probleme können zum Absturz des Emulators bei ob sie bei der GPU-Standardeinstellung gestartet, einfriert oder unbrauchbar sein müssen. Der Emulator wechselt automatisch zum Swiftshader-Renderer, wenn diese GPUs werden verwendet.
- Es wurde ein Problem behoben, durch das der Emulator nicht den richtigen Framebuffer postete, wenn
FBO != 0
war zur Zeit deseglSwapBuffers
gebunden. - Ein Problem wurde behoben, durch das die virtuelle Android-Anzeige nur oben angezeigt wurde. in der linken Ecke. Wir glauben, 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 beim Laden in einigen Situationen ab. Dieses Problem wurde behoben. GLES1-Anwendungen aus einem Snapshot.
- Nebenläufigkeitsprobleme in OpenGL und das Starten von Rendering-Threads wurden behoben, die die dazu führen, dass Daten doppelt freigegeben oder beschädigt werden.
- Android-Emulator unterstützt jetzt komprimierte LDR-Textur für ASTC
(
GL_KHR_texture_compression_astc_ldr
) für System-Images, die das API-Level 28 verwenden oder höher. - Die meisten modernen GPUs sollten jetzt den Emulator mit OpenGL ES 3.x starten können
standardmäßig ohne Verwendung des Funktions-Flags
GLESDynamicVersion
aktiviert. -gpu guest
(Software-Rendering im Gastmodus) wurde eingestellt. System Bilder für API-Level 28 oder höher werden jetzt automatisch auf Swiftshader umgestellt. stattdessen (-gpu swiftshader_indirect
).- Wird der Emulator über die Befehlszeile mit dem Flag
-no-window
gestartet, ist jetzt Swiftshader der Standard-Renderer.
Standort
- Der Emulator kann jetzt die Peilung zusammen mit Breiten- und Längengraden aktualisieren . Der virtuelle Magnetometer-Sensor passt sich dynamisch an magnetische nach Norden, indem eine Bewegung bei der Wiedergabe einer GPX- oder KML-Datei abgeleitet wird.
- 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 auf null setzen, wenn die Wiedergabe beendet ist.
- Die Höhe ist nicht mehr auf einen Wert zwischen -1.000 und +10.000 beschränkt. Meter.
- Der virtuelle GPS-Standort wurde nicht aktualisiert. Dieses Problem wurde behoben. In regelmäßigen Abständen, es sei denn, das Fenster "Erweiterte Einstellungen" wurde mindestens einmal geöffnet.
Kamera
Unter Windows werden jetzt mehr Webcams unterstützt, da der Emulator die Größe der von der Webcam gelieferten Kameraframes ändert. Bei dieser Funktion verhindert, dass der Emulator durch Fehler bei der Frame-Lieferung hängen bleibt.
Play Store
Um Probleme mit zu wenig Speicherplatz auf Play Store-Images zu beheben, Emulator passt die Benutzerdatenpartition jetzt bei der Ausführung automatisch auf 6 GB an mit einer neuen Play Store-AVD.
Allgemeine Qualitätsverbesserungen und Fehlerbehebungen
- Einige Nutzer haben gemeldet, dass der Emulator langsam ausgeführt wird. Wir haben eines gefunden
weil das temporäre Verzeichnis für den Emulator am Ende zu viele
enthält veraltete Dateien. Als Behelfslösung speichert der Emulator die ADB-Aktivität nicht mehr
Dateien in diesem Verzeichnis überprüfen. Es kann aber auch hilfreich sein, die Inhalte zu löschen,
dieses Ordners. Der Ordner befindet sich an einem der folgenden Speicherorte:
je nach Betriebssystem:
<ph type="x-smartling-placeholder">
- </ph>
- Windows:
C:\Users\<username>\AppData\Local\Temp\AndroidEmulator\*
- macOS oder Linux:
/tmp/android-<username>/*
- Windows:
- Wenn der Emulator aufgrund unzureichenden kostenlosem RAM nicht gestartet werden kann, wird ein Fehler wird jetzt angezeigt. Wenn Sie Windows verwenden und feststellen, dass ein RAM vorhanden ist, können Sie den Emulator trotzdem nicht starten, hat sich die Commit-Gebühr möglicherweise überschritten. Informationen zu diesem Problem finden Sie auf der Seite Fehlerbehebung für den Emulator.
- Die Befehlszeilenoption
-sysdir
überschreibt jetzt das abgeleitete System. Image-Verzeichnis erstellen. - Das virtuelle Modem unterstützt jetzt die
+MAI
-Abfrage der Modellaktivitätsinformationen. - Verschiedene Probleme mit Speicherlecks, Speicherbeschädigungen und CPU-Auslastung wurden behoben. Wenn es zu Abstürzen, Speicherlecks oder einer anderen hohen Ressourcennutzung kommt, Erstellen Sie in der Issue Tracker ein Problem.
- Unter macOS 10.14 traten wieder Bluetooth-Headsets auf. Dieses Problem wurde behoben. mit dem Emulator das Audio weltweit verschlechtert. Um dies zu verhindern, vermeidet nun die Verwendung von Bluetooth-Audio bei der Ausführung unter macOS. (Problem 37070892)
- Es wurde ein Problem unter Windows behoben, bei dem die Uhr des Emulators nicht in der richtigen Zeitzone.
- Behebung eines langsamen Emulators und eines hängen gebliebenen Linux-Systems mit rotierenden Festplatten (HDDs).
- Einige Kompilierungswarnungen, die unter macOS zu Stackbeschädigungen führen konnten, wurden behoben.
- Es wurden Probleme behoben, die zu irreführenden Meldungen über das Aufhängen führen konnten.
- Es wurde ein Problem behoben, bei dem Thread-Pools zerstört wurden, die zu einem Absturz führen konnte, wenn einer der Die Threads wurden nicht erstellt.
- Es wurde ein Problem behoben, bei dem Timer unter macOS unzuverlässig wurden und sich aufhängen. und andere seltsame Verhaltensweisen. Wenn der Emulator unter macOS aufhängt, Erstellen Sie in der Issue Tracker ein Problem.
- Das Problem, dass durch das Schließen des Emulators zwar die Benutzeroberfläche deaktiviert wurde, den Emulator schließen.
- Probleme mit sporadischen Abstürzen, einschließlich eines Abbrechens aufgrund von zu öffnendem Öffnen, behoben
viele Instanzen von
/dev/urandom
. - Der Emulator konnte nach dem ersten Mal nicht gestartet werden. Dieses Problem wurde behoben. wenn ADB zwangsweise beendet wurde.
- Der MIPS-Build wurde entfernt. Wenn Sie weiterhin MIPS benötigen, erstellen Sie eine in der Problemverfolgung.
- Es wurde ein Problem behoben, bei dem ADB-Verbindungen beim Laden von Snapshots beschädigt wurden.
- Ein Problem wurde behoben, durch das im Emulator-Fenster ein Nachbild oder Teleport angezeigt wurde nicht ausgeblendet, wenn ein Snapshot mit abweichender Geräteausrichtung fortgesetzt wird Standardausrichtung des AVDs ändern.
- Probleme mit Abstürzen beim Speichern von Snapshots wurden behoben.
- Unter Linux können btrfs-Dateisysteme
Extreme Verlangsamungen verursachen, da der Emulator
speichert automatisch Snapshots und verwendet die Funktion „Copy-on-Write“ für das zugehörige virtuelle Laufwerk.
Geräte. Wir empfehlen, das Verzeichnis
~/.android/avd
zu bereinigen und den den folgenden Befehl für das leere Verzeichnis~/.android/avd
: Dadurch werden neue Snapshots in einem Ordner erstellt, in dem das Kopieren und Schreiben deaktiviert ist.chattr +C
HAXM 7.3.2
Wir möchten HAXM 7.3.2 noch einmal erwähnen, da es installiert werden muss, um damit aktuelle System-Images ordnungsgemäß auf dem Emulator ausgeführt werden. HAXM 7.3.2 sollte sind bereits in der stabilen Version verfügbar und können auch manuell installiert werden. von https://github.com/intel/haxm/releases.
Hier sind einige der Probleme, die mit dieser Version von HAXM behoben wurden:
- Zufällige Abstürze von Gastbetriebssystemen mit neuer Linux-Kernel-Version (ab Version 4.6) wurden behoben. Beispiel: Ubuntu 18.04 (#39, #74).
- Ein Fehler im x86-Anweisungsemulator wurde behoben, der zu einem Hostabsturz führen konnte (#93).
Einstellung der 32-Bit-Windows
Aufgrund der geringen Nutzung und der hohen Wartungskosten planen wir, die Unter Windows ausgeführte 32-Bit-Version des Android-Emulators Wir führen eine neue Umstellungsplan vor der Entfernung und dem End of Life für die 32-Bit-Version des Android-Emulator Wir freuen uns aber über Feedback und Anregungen. dieser zukünftigen Änderung.
Teilen Sie uns dies im Issue Tracker mit. wenn Sie derzeit die 32-Bit-Version des Android-Emulators verwenden, und lassen Sie uns wissen, wie wir in Zukunft am besten mit Ihnen zusammenarbeiten können.
27.3.10 (August 2018)
Dieses Update enthält folgende Fehlerkorrektur:
Konfigurationskorrektur für die RAM-Größe
Einige Nutzer haben gemeldet, dass der Emulator langsam ausgeführt wird. Wir haben eines gefunden
Möglicherweise wurde die AVD-RAM-Größe in der Datei config.ini
des AVDs
falsch festgelegt ist.
Um dies zu vermeiden, erhöht der Emulator die Mindest-RAM-Ebene für Images,
API-Level 26 oder höher bis zur Android Studio-Standardebene von 1.536 MB verwenden. Wenn
die config.ini
-Datei Ihrer AVD enthält hw.ramSize
nicht in Megabyte,
erstellen Sie ein Problem im Issue Tracker.
Sie finden die Datei config.ini
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, herauszufinden, warum die Windows-Hypervisor-Plattform
(WHPX) konnte nicht initialisiert werden, als ein WHPX-Emulator aktiviert wurde. Um Ihnen zu helfen,
diese Probleme zu diagnostizieren, haben wir informativere Fehlermeldungen hinzugefügt. Sie können
können Sie diese Fehlermeldungen aktivieren, indem Sie den Emulator über die Befehlszeile mit
Das Flag -verbose
.
Allgemeine Fehlerkorrekturen
- OpenGL-Fehler, die beim Laden eines Schnappschusses in der Kamera-App aufgetreten sind, wurden behoben.
27.3.8 (Juli 2018)
Dieses Update enthält mehrere neue Funktionen, Verbesserungen vorhandener Funktionen, und Fehlerkorrekturen.
Snapshots
Sie können jetzt mehrere AVD-Snapshots für eine bestimmte Gerätekonfiguration und wählen Sie aus, welche der gespeicherten Snapshots beim Start des Emulators geladen werden sollen.
Ab Android Studio 3.2 Canary 13 enthält jede Gerätekonfiguration Folgendes: Ein Steuerelement in den erweiterten Einstellungen im Dialogfeld „Konfiguration des virtuellen Geräts“ mit dem Sie angeben können, welcher AVD-Snapshot beim Start des AVD.
Um dieser Erweiterung der Snapshot-Funktionen gerecht zu werden, haben wir ein Kategorie Snapshots im Dialogfeld Erweiterte Steuerelemente hinzugefügt. Dieser neue Bereich enthält Steuerelemente zum Speichern und Laden von AVD-Snapshots, einschließlich der Steuerelemente zum Speichern und Laden des Quick Boot-Snapshots, der zuvor im Settings (Einstellungen).
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. Ab diesem HAXM-Update und Emulator 27.3 werden Snapshots bei Bedarf in den RAM zu laden, anstatt den gesamten Snapshot zu laden, virtuelles Gerät gestartet wird. Durch diese Änderung wird der Zeitaufwand für die Erstellung einen Snapshot zu laden.
Weitere Informationen finden Sie unter VM-Beschleunigung konfigurieren.
27.2.9 (Mai 2018)
Dieses Update enthält mehrere neue Funktionen, Verbesserungen vorhandener Funktionen, und Fehlerkorrekturen.
Bildschirmaufzeichnung
Sie können jetzt Video- und Audioinhalte aus dem Android-Emulator aufzeichnen und die in eine WebM- oder animierte GIF-Datei hochladen.
Die Steuerelemente für die Bildschirmaufzeichnung befinden sich auf dem Tab Bildschirmaufzeichnung der erweiterten Steuerungsfenster.
Tipp:Sie können die Steuerelemente für die Bildschirmaufzeichnung auch öffnen, drücken Sie Strg+Umschalt+R (Befehlstaste+Umschalt+R auf einem Mac).
Klicken Sie zum Starten der Bildschirmaufzeichnung auf die Schaltfläche Aufzeichnung starten auf der Seite Bildschirm aufzeichnen. Klicken Sie auf Aufzeichnung beenden, um die Aufzeichnung zu beenden.
Die Steuerelemente zum Abspielen und Speichern der Videoaufzeichnung befinden sich unten im Tab Bildschirmaufzeichnung. Wähle zum Speichern des Videos WebM oder GIF aus der und klicken Sie auf Speichern.
Sie können auch eine Bildschirmaufzeichnung aus dem Emulator aufzeichnen und speichern. Verwenden Sie dazu die folgenden Befehl in die Befehlszeile ein:
adb emu screenrecord start --time-limit 10 [path to save video]/sample_video.webm
Screenshots
Sie können Screenshots über die Befehlszeile mit einer der folgenden Methoden erstellen: Befehle:
screenrecord screenshot [destination-directory]
adb emu screenrecord screenshot [destination-directory]
Screenshots werden im PNG-Format gespeichert.
Virtuelle Szenenkamera und ARCore
Augmented Reality-Apps (AR) mit ARCore ist jetzt noch einfacher dank der neue virtuelle Szenenkamera, mit der du mit AR experimentieren kannst in einer virtuellen Umgebung.
Informationen zur Verwendung der virtuellen Szenenkamera im Emulator finden Sie unter AR-Apps im Android-Emulator ausführen
Bilder vom Google Play Store auf Pixel
Der Google Play Store ist jetzt für Bilder von Pixel- und Pixel 2-Geräten aktiviert. Dieses wird im AVD Manager in Android Studio angegeben Version 3.2 oder höher mit dem Google Play-Logo in der Spalte Play Store AVDs mit Wenn der Google Play Store aktiviert ist, sehen Sie unter Erweiterte Einstellungen den Tab Google Play. mit einer praktischen Schaltfläche zum Aktualisieren der Google Play-Dienste auf auf dem Gerät.
Snapshots
Sie können jetzt einen Quick Boot-Snapshot laden ohne den Emulator neu zu starten. Öffnen Sie zum Laden eines Snapshots die Fenster Erweiterte Steuerelemente zu den Einstellungen und klicken Sie auf die Schaltfläche Jetzt laden.
Wir haben viele Verbesserungen beim Laden und Speichern von Snapshots die Effizienz der Ressourcennutzung zu verbessern und die Zeit zu minimieren, die Operation dauert. Falls Sie weiterhin ungewöhnlich lange speichern, ein Problem melden, Angaben zu CPU, RAM und Einstellungen von Antiviren-/Firewall- die ausgeführt wird.
Rendering mit Skia
Bei Verwendung von Images für API 27 oder höher kann der Emulator die Android-Benutzeroberfläche rendern mit Skia, das reibungsloser und effizienter gerendert werden kann.
Momentan können Sie Skia nur verwenden, wenn Sie es explizit aktivieren.
Verwenden Sie die folgenden Befehle in ADB Shell, um Skia-Rendering zu aktivieren:
su setprop debug.hwui.renderer skiagl stop start
Kamera
Unter Windows verwendet Android Emulator Media Foundation als Webcam-Back-End, verbessert die Leistung und die Framerate für Webcam-Aufnahmen (bis zu 720p) 30 fps.
Auf einem Mac können Sie jetzt Webcam0 und Webcam1 zusammen verwenden.
Sonstiges
Die Befehlszeilenoption -phone-number-prefix
wurde geändert zu
-phone-number [number]
, womit das gesamte
Telefonnummer.
Sie können jetzt alphanumerische SMS-Adressen verwenden.
Fehlerkorrekturen
- Die Linux-Version des Android-Emulators basiert jetzt auf einem modernen Clang- C++-Toolchain. Durch diese Änderung wird das Problem behoben, dass der Emulator nicht gestartet wird. aufgrund von libGL- und libstdc++-Fehlern.
- Mehrere Ursachen für Abstürze und Aufhänger wurden behoben.
- Um Abstürze und Wartezeiten zu vermeiden, die durch nicht genügend freien Speicherplatz verursacht werden, Emulator prüft nun beim Start, ob genügend freier Speicherplatz beginnen, es sei denn, 2 GB sind kostenlos.
- Einige Unity-Spiele konnten nicht gerendert werden. Dieses Problem wurde behoben.
- DNS-Problem behoben, bei dem der Emulator keine Verbindung zum Netzwerk.
- Ein Problem wurde behoben, das zu Änderungen am internen Speicher führte, der einer AVD zugewiesen war. über das Dialogfeld für die Konfiguration virtueller Geräte nicht funktioniert.
- Ein Problem wurde behoben, bei dem viele ADB-Prozesse erstellt und nicht ordnungsgemäß heruntergefahren wurden.
- Es wurde ein Problem behoben, durch das die Schaltflächen zum Drehen und andere Teile der Benutzeroberfläche reagierten nur dann, wenn das Fenster für die erweiterten Einstellungen geöffnet war.
- Das Kopieren und Einfügen aus dem Host funktionierte nur, wenn die Das Dialogfeld „Erweiterte Einstellungen“ wurde mindestens einmal geöffnet.
- Das Rechteck zur Größenanpassung des emulatorlosen Emulators wurde aktualisiert, damit es besser das visuelle Design des Emulators.
- Telefon und SMS sind jetzt ordnungsgemäß deaktiviert, wenn der Flugmodus aktiviert ist.
- SMS- und Mobilfunkfunktionen wurden nach diesem Datum deaktiviert. Dieses Problem wurde behoben. einen Snapshot laden.
- Es werden keine falschen Warnmeldungen mehr angezeigt,
“Unable to open... \pstore.bin. Permission denied.”
- Auf einigen Mac-Bildschirmen konnte das AVD nicht neu positioniert werden. Dieses Problem wurde behoben.
- Probleme mit Flimmern und leeren Bildschirmen auf neueren MacBook Pro-Computern wurden behoben. wenn Sie AVDs mit Pixel 2 XL-Skins ausführen.
- Probleme mit leeren Bildschirmen behoben, wenn in den Zoommodus gewechselt wurde, während ein rahmenloser Emulator war aktiv.
- Ein Problem wurde behoben, durch das der Inhalt des Geräte-Skins und des Emulators herausgescrollt wurde automatisch zu synchronisieren.
Wenn Sie weiterhin hängen bleiben oder andere Instabilitäten feststellen, melden Sie ein Problem.
27.1.12 (März 2018)
Dieses Update enthält Fehlerkorrekturen für folgende Probleme:
- Die Bluetooth-Audioqualität hat sich nach dem Starten des Emulators verschlechtert. (Problem 37095756)
- An einen Emulator gesendete Standorte wurden an alle gesendet. (Problem 73450633)
- Der mit der Konsole festgelegte GPS-Standort wurde durch Werte überschrieben, die mithilfe von Erweiterte Steuerelemente > Position in der grafischen Benutzeroberfläche. (Problem 73471760)
Wenn Sie weiterhin hängen bleiben oder andere Instabilitäten feststellen, melden Sie ein Problem.
Mit diesem Update erhältst du ein aktuelles System-Image und eine Vorschauversion von Android. Studio verwenden, können Sie mit dem Android-Emulator Augmented-Reality-Apps ausführen, mit ARCore. 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 Sie Android 8.1 (API-Level 27) und höhere System-Images nutzen können, müssen alle muss die angeschlossene Webcam 720p-Frames aufnehmen können.
Fehlerkorrekturen
- Ein Problem wurde behoben, durch das Webcam-Aufnahmen manchmal verzerrt dargestellt wurden. oder nur ein grünes Bild.
- Es wurde ein Problem behoben, durch das die folgende Meldung selbst dann angezeigt wurde, wenn es gab keinen tatsächlichen Aufhänger: "emulator: ERROR: found astehend thread 'Qt Ereignisschleife'. Keine Antwort für 15.000 ms“.
Wenn Sie weiterhin hängen bleiben oder andere Instabilitäten feststellen, melden Sie ein Problem.
27.1.7 (Februar 2018)
Rahmenloses Emulator-Fenster:
Standardmäßig werden Emulatoren mit Geräte-Skin-Dateien jetzt ohne das Symbol umgebenden Fensterrahmen. Zum Anzeigen des umgebenden Fensterrahmens aktivieren Sie Fensterrahmen um das Gerät anzeigen im Bereich "Einstellungen" der Seite Erweiterte Einstellungen.
Verbesserungen beim schnellen Start, um die Arbeit mit AVD-Snapshots effizienter zu gestalten:
- Mit der Schaltfläche Jetzt speichern in der im Bereich „Einstellungen“ unter Erweiterte Steuerelemente aus.
- Der Emulator reduziert die Zeit zum Speichern eines Snapshots in vielen um nur die Differenz zwischen dem aktuellen Zustand und dem einen zuvor gespeicherten Snapshot.
Weitere Informationen findest du im Schnellstart Dokumentation.
Der Emulator wurde für die Verwendung von QEMU 2.9 aktualisiert.
Hier einige der wichtigsten Verbesserungen:
- Optimierte E/A und detailliertere E/A-Threadsperren für höhere Leistung.
- Fehlerkorrekturen seit QEMU 2.8 (26.1.4).
- Neue Implementierung des HAXM-Back-Ends.
Eine vollständige Liste der Änderungen finden Sie im Änderungsprotokoll von QEMU 2.9.
Swiftshader-Implementierung gemäß OpenGL ES 3.0:
Der Swiftshader-Renderer des Emulators entspricht jetzt vollständig OpenGL ES 3.0. Details zum Swiftshader-Renderer finden Sie unter Einstellungen > Fortgeschritten Erweiterte Funktionen.
Fehlerkorrekturen
- Das Problem, dass die Freigabe der Zwischenablage nur funktionierte, wenn die Option Aktivieren die Option zum Freigeben der Zwischenablage deaktiviert und aktiviert.
- Das Problem wurde behoben, durch das bei Verwendung des Rendering-Back-Ends Swiftshader mit AVDs mit niedriger Auflösung.
27.0.5 (Januar 2018)
ANGLE für das Rendern unter Windows ist jetzt standardmäßig deaktiviert.
Wenn ANGLE besser funktioniert, können Sie es über die Befehlszeile wieder aktivieren. Kennzeichnen Sie
-gpu angle_indirect
. Du kannst auch das Fenster „Erweiterte Steuerelemente“ öffnen, zu Einstellungen > Erweitert und wählen Sie ANGLE D3D11 für die Renderer-Einstellung „OpenGL ES“.Bei Umschalttaste + B wurde kein großes B-Zeichen eingegeben.
27.0.2 (Dezember 2017)
Die neue Quick Boot-Funktion ermöglicht schnellere Startzeiten des Emulators auf Basis eines einen Snapshot Ihrer AVD-Instanz.
Quick Boot ist standardmäßig für alle AVDs aktiviert. Obwohl Sie beim ersten Mal starten Sie ein AVD. Es muss einen Kaltstart durchführen (wie beim Einschalten eines Geräts). Alle nachfolgenden Starts verliefen schnell und das System wird in den Zustand von 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 im Emulator-Fenster Erweiterte Steuerungsfenster und klicken Sie auf Einstellungen. Hier können Sie eine der folgenden Einstellungen auswählen: für Save Quick Boot State on Exit (Schnellstartstatus beim Beenden speichern):
- Ja: Speichern Sie immer einen Quick Boot-Snapshot, wenn Sie den Emulator schließen. Das ist die Standardeinstellung.
- Nein: Nie einen Quick Boot-Snapshot speichern. sollten Sie immer einen Kaltstart durchführen.
- Fragen: Beim Schließen werden Sie gefragt, ob ein Snapshot für den Schnellstart gespeichert werden soll. zum Emulator.
Ihre Auswahl gilt nur für das aktuell geöffnete AVD.
Weitere Informationen finden Sie in der Quick Boot-Dokumentation.
Unterstützung für Mac OpenGL ES 3 (für System-Images mit API-Level 24 und Google APIs und das x86-ABI).
Für mehr Stabilität in OpenGL ES 2+-Apps verwendet der Emulator jetzt OpenGL Core. Profil, falls verfügbar.
Neue Optionen für das Rendern mit Swiftshader / ANGLE:
-gpu swiftshader_indirect
: Schnellere, stabilere Variante von Swiftshader das mit Quick Boot funktioniert.-gpu angle_indirect
(nur Windows): Stabilere Variante von ANGLE D3D das auch mit Quick Boot funktioniert.
Die älteren Optionen
-gpu swiftshader
und-gpu angle
wurden eingestellt. Im Fenster für die erweiterten Steuerelemente befindet sich das Feld „SwiftShader“ und "ANGLE" Optionen für OpenGL ES-Renderer-Einstellung unter Einstellungen > Erweitert verwenden Sie jetzt das*_indirect
Varianten.Diverse andere Fehlerkorrekturen.
26.1.4 (August 2017)
Dies ist eine Nebenversion mit Fehlerkorrekturen und den folgenden Verbesserungen an der GPU-Konfiguration:
- Startanimation bei Ausführung auf dem ANGLE-Renderer aktivieren
- GLES3 bei Ausführung mit dem 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 aktuellen System-Images von Android 8.0 zu verwenden.
Sie sind Höhen-konform,
mit separaten
vendor.img
-Partitionen. - HAXM 6.2.0 ist jetzt verfügbar (siehe SDK Manager) und enthält die
folgenden Updates:
<ph type="x-smartling-placeholder">
- </ph>
- Verbesserte Arbeitsspeichernutzung. Der von HAXM angepinnte Spitzenarbeitsspeicher ist nicht mehr mit der RAM-Größe des AVD übereinstimmt, Stattdessen wird die Erinnerung on demand. Dies sollte dazu beitragen, dass der Emulator auf Maschinen mit weniger RAM haben.
- Der Emulator mit HAXM 6.2.0 startet unter macOS jetzt schneller. langwierige Initialisierungsphase.
- Verbesserungen an der GPU-Konfiguration
<ph type="x-smartling-placeholder">
- </ph>
- Probleme mit schwarzem Bildschirm beim Starten bei Gastmodus wurden behoben. indem sie auf hostseitiges Software-Rendering mit Swiftshader. Neueste Überarbeitungen von System-Images für API-Ebenen 19 bis 25 mit Google APIs sollten ein funktionierendes gasseitiges Rendering haben.
- Der Emulator wurde in einen Software-Renderer geändert. Dieses Problem wurde behoben.
weil ältere Intel-GPUs erkannt wurden, aber der Emulator
auf einer diskreten GPU ausgeführt wird. Welche GPUs werden auf ANGLE umgestellt?
Swiftshader-Rendering wird folgendermaßen ermittelt:
<ph type="x-smartling-placeholder">
- </ph>
- Ältere Intel-iGPUs haben Treiberprobleme sowohl bei OpenGL als auch bei ANGLE D3D. Treiber. Nutzer mit Intel HD Graphics 3xxx und älter verwenden Swiftshader.
- Einige Nutzer meldeten, dass keine Bilder auf API-Level 25 verwendet werden konnten, weil dass der Pixel Launcher immer wieder anhält. Dies scheint ein Treiberproblem bei einigen Intel HD 4xxx-Modellen. Sie werden also auf ANGLE automatisch verwenden.
- Für optimale Ergebnisse bei der GPU-Emulation empfehlen wir die Verwendung eines Diskrete NVIDIA- oder AMD-GPU oder eine neuere Intel-GPU (Iris, HD 5xxx, HD 5xx/6xx).
- Der Emulator konnte nicht gestartet werden (OpenGL-Emulation). Dieses Problem wurde behoben.
Initialisierung fehlgeschlagen), wenn das AVD mit
hw.gpu.mode=host
konfiguriert wurde und wurde der Emulator in einem Remote Desktop-Client gestartet. - „OpenGL ES API-Ebene (Neustart erforderlich)“ wurde klarer formuliert. Einstellungen hat Folgendes hinzugefügt: Option zum Downgrade von OpenGL ES 3 auf OpenGL ES 2 oder auf niedrigeren OpenGL ES API-Levels testen müssen.
- Der Mesa-Renderer wurde eingestellt.
hw.gpu.mode=mesa
ist jetzt auf dem Host automatisch Swiftshader verwendet.
- Verbesserungen für macOS:
<ph type="x-smartling-placeholder">
- </ph>
- Der Emulator ist jetzt vollständig kompatibel mit macOS 10.13 High Sierra entweder über Hypervisor.Framework oder HAXM 6.2.0.
- Hypervisor.framework ist jetzt unter macOS für 32-Bit x86 standardmäßig aktiviert
um die Leistung und die macOS-Kompatibilität zu verbessern. Wenn Sie
Probleme auftreten, senden Sie einen Fehlerbericht und hängen Sie
HVF = off
an. auf~/.android/advancedFeatures.ini
(erstellen Sie diese Datei, falls sie noch nicht vorhanden ist). - Fehlerbehebung: Keine Internetverbindung / Fehler beim Anhängen des Debuggers während der Verwendung Hypervisor.framework.
- Um die Kompatibilität und Leistung bei der Webcam-Aufnahme zu verbessern, hat der Die QTKit-basierte Kameraaufnahme wurde durch eine zwischengespeicherte ersetzt. AVFoundation.
- WLAN-Unterstützung in einigen System-Images hinzugefügt (derzeit nur API-Level 25).
Ein Zugangspunkt namens „AndroidWifi“ verfügbar ist und Android automatisch
damit verbunden ist. Die WLAN-Unterstützung kann deaktiviert werden, indem du den Emulator mit der
Befehlszeilenparameter
-feature -Wifi
. - Einige Nutzer haben Bedenken geäußert, dass die Play Store-Systembilder mit fester Größe hatte nicht genügend Speicherplatz. Daher haben wir die Größe auf 2 GB erhöht, Standardeinstellung (bis zu 800 MB).
- Tastenkombination (Strg+Umschalttaste+U) hinzugefügt, um die Seite mit der Benutzeroberfläche für Fehlerberichte zu öffnen direkt über die Seite „Einstellungen“.
- Es wurde ein Problem behoben, bei dem eine ältere CPU mit Intel x86 EPT, aber ohne UG würde der Emulator nicht starten, wenn mehr als ein Kern konfiguriert wurde.
- Ein Problem wurde behoben, bei dem HyperV nicht ordnungsgemäß erkannt wurde, wenn der Emulator in einem Xen-Hypervisor ausgeführt.
- Der Emulator stürzte beim Start unter Linux ab. Dieses Problem wurde behoben. Konfigurationen.
26.1.2 (Juli 2017)
Diese Version enthält neue Funktionen und Leistungsverbesserungen.
Neue Funktion zum Definieren einer benutzerdefinierten HTTP-Proxy-Konfiguration im erweiterten Steuerelementen (klicken Sie auf das Dreipunkt-Menü
, und dann auf Einstellungen und Proxy) enthält. Standardmäßig verwendet der Emulator den HTTP-Proxy von Android Studio Einstellungen. Auf diesem Bildschirm können Sie jedoch eine manuelle Proxy-Konfiguration festlegen.
VNC-Unterstützung für GPU im Gastmodus hinzugefügt, sodass der Emulator aus der Ferne angesehen und kontrolliert werden. Sie können z. B. den Emulator starten und VNC den Port 5901 so:
- Ausführen:
emulator -gpu guest -avd avd_name -no-window -qemu -vnc :1
Öffnen Sie einen VNC-Viewer, z. B. Tightvnc-Viewer, um eine Verbindung zu Port 5901 herzustellen.
Um den integrierten Mac-Client für die Bildschirmfreigabe zu verwenden, ist ein VNC-Passwort erforderlich, wenn der Emulator gestartet wird. Verwenden Sie zum Festlegen eines Passworts Befehl:
emulator -gpu guest -avd avd_name -no-window -qemu -vnc :1,password -monitor stdio
Geben Sie in der Konsole
change vnc password
und Passwort.
Android O wird derzeit nicht für den VNC-Modus unterstützt.
- Ausführen:
Die Schaltfläche Programmfehler melden wurde dem Hilfebildschirm für erweiterte Steuerelemente hinzugefügt. (Klicken Sie auf Mehr
, und dann auf Hilfe und Emulator-Hilfe). Klicke auf Programmfehler melden. öffnet ein Dialogfeld mit Details zum Fehlerbericht, z. B. Screenshot, die AVD-Konfigurationsinformationen, und ein Fehlerberichtsprotokoll. Anschließend können Sie den Bericht für sich selbst oder Probleme mit dem Emulator melden.
Dem Emulator und dem Bereich mit virtuellen Sensoren wurde ein Gyroskopsensor hinzugefügt. Dies erfordert ein Systembild mit Gyroskopunterstützung (derzeit API-Level 24) und 25).
Vom Host bevorzugtes DNS zur Qemu-DNS-Liste unter Windows hinzugefügt, wenn mehrere virtuelle Netzwerkschnittstellen auf dem Host führen mehrere DNS-Adressen ein, die funktioniert nicht für den Emulator.
Zusätzliche experimentelle macOS Hypervisor.Framework-Unterstützung für 32-Bit-x86-Images unter macOS 10.10 und höher über Server-Flags, was die Startzeit und die Leistung.
- Wenn Probleme auftreten, fügen Sie die Zeile
HVF = off
in~/.android/advancedFeatures.ini
.
- Wenn Probleme auftreten, fügen Sie die Zeile
OpenGL ES 3.x ist jetzt standardmäßig für System-Images und Host-GPUs aktiviert, die unterstützen OpenGL ES 3. Derzeit sind nur Android O (API-Level 26) und Windows-/Linux-Hosts unterstützen OpenGL ES 3.
- Falls Probleme mit OpenGL ES 3 auftreten, fügen Sie die Zeile
GLESDynamicVersion = off
in~/.android/advancedFeatures.ini
.
- Falls Probleme mit OpenGL ES 3 auftreten, fügen Sie die Zeile
Der Emulator verwendet jetzt für alle Rendering-Inhalte mit Ausnahme von finalen Das Posten von Bildern im Displaynetzwerk, das bei Problemen mit der Farbkonsistenz helfen sollte auf verschiedenen Plattformen.
Nach der Erfassung von Daten zu plötzlichen Verlangsamungen durch den Emulator haben wir festgestellt, dass das Problem mit der Interaktion zwischen älteren Intel- OpenGL-Treiber und Windows-Updates. Nutzer mit Intel HD 4000, 3000, Bei 2000 (und zugehörigen GPUs) ist das Rendering jetzt standardmäßig auf ein D3D-Element festgelegt Renderer (ANGLE) oder Swiftshader (Software-Renderer)
26.0.0 (März 2017)
Dieser Release ist mit API-Level 26 kompatibel. Sie enthält auch eine Reihe von Leistungsverbesserungen und Fehlerkorrekturen.
Nebenversion 26.0.3 (Mai 2017)
- Fügt Funktions-Flags hinzu, die online aktualisiert werden können, um Probleme schnell zu beheben die auf problematischen Hardwarekonfigurationen zurückzuführen sind. So kann Google Fehlerbehebungen und Funktionen einführen, die von Nutzerkonfigurationen abhängig sind, serverseitige Flags aktualisieren. Wenn Sie Probleme mit bestimmter Hardware feststellen, melden Sie den Fehler, damit wir um das Problem zu untersuchen.
- Neue Unterstützung für Drehköpfe Eingabe für das System des Android Wear API-Levels 25 Bilder. Um den Drehknopf auf einem Wear-Gerät zu emulieren, klicken Sie auf das Tab Drehknopf im erweiterten Fenster.
- Die Größe des Crash Reporting-Dialogfelds kann jetzt geändert werden und wird nicht mehr zurückgesetzt Wann Absturzberichte gesendet werden sollen an Fragen ohne Eingabe.
- Für den 32-Bit-Emulator muss die maximale AVD-RAM-Größe nun kleiner sein größer als oder gleich 512 MB ist, damit der Emulator nicht über im virtuellen Adressbereich von 2 GB.
- Unterstützung für absolute Pfade in Emulator-Images.
- Fügt dem erweiterten Fenster einen neuen Tab für Google Play Store-Bilder hinzu, die die Play-Dienste-Version und eine Schaltfläche zur Suche nach Updates für Play-Dienste
- Fügt auf der Seite "Emulator-Einstellungen" ein Dropdown-Menü zur Auswahl des OpenGL-Renderers hinzu. Bei Problemen mit dem OpenGL-Treiber unter Windows können Sie die Optionen ANGLE (D3D11) oder ANGLE (D3D9) verwenden (erfordert ein Neustart). Bei Problemen mit dem OpenGL-Treiber auf einer nicht mit Windows, versuchen Sie es mit dem Software-Renderer Swiftshader (erfordert Neustart).
- Der seltene Absturz beim Beenden, wenn der Emulator beide empfängt, wurde behoben.
exit
- undminimize
-Befehle. - Behebt ein Skalierungsproblem beim Ändern von Bildschirmen auf einem Mac-Computer. (Problem 268296)
- Behebt ein Problem, bei dem der Emulator 300% der CPU hält nachdem der Host-Computer aus dem Ruhemodus fortgesetzt oder der Emulator schon länger im Gange ist.
- Ein Absturz beim Herunterfahren des Emulators wurde behoben.
Updates mit HAXM v6.1.1 (März 2017)
Hinweis:HAXM v6.1.1 ist für Mac verfügbar. über das SDK Administrator und steht ab dem 30. März für Windows-Nutzer zur Verfügung.
Version 26.0.0 des Android-Emulators unterstützt HAXM v6.1.1 mit enthält die folgenden Aktualisierungen:
- Aktiviert die Emulation von Performance Monitoring Units (PMU). (Problem 223377)
- Die Koexistenz mit VirtualBox und Docker auf Macs wurde behoben. (Problem 197915)
- Überarbeitet die Installationsfehlermeldung, die angezeigt wird, wenn das Installationsprogramm kann Intel VT-x unter Windows nicht erkennen. Dies liegt in der Regel daran, dass Hyper-V aktiviert ist.
- Zusätzliche Unterstützung für die Beschleunigung des Android-Emulators in einer Hyper-V-basierten Lösung Windows-VM. Für dieses Update muss die Hyper-V-Hostinstanz (die zur Verwaltung der Windows-VM/Gast) verwendet die neueste Version von Hyper-V bei aktivierter verschachtelter Virtualisierung. Hyper-V muss in folgenden Bereichen deaktiviert sein: die Hyper-V-Gastinstanz (die Windows-VM)
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. Bei einer Host-GPU mit konformem Desktop
OpenGL-Treiber passieren jetzt 100% des Android CTS dEQP-GLES2-Emulators
mustpass
Liste. Dies wurde für API-Level 24 x86-Images veröffentlicht (Version 11). und höher) und sind bald für alle System-Images verfügbar. - Verbesserte Wiedergabeleistung von Videos Im Emulator werden jetzt alle Videos puffert die Farben im gemeinsamen Host-/Gastspeicher und führt die erforderlichen Konvertierung von YUV zu RGB in der GPU. 1080p30 sollte in Reichweite des in den meisten Systemen. Dies wurde für API-Level 24 x86-Images veröffentlicht (Version 11 und höher) und wird bald für alle System-Images verfügbar sein.
- Der Emulator hebt sich beim Beenden jetzt korrekt von der
adb devices
-Liste auf und schließt offene TCP-Ports auf Linux-Computern. - ADB-Verbindungen sind jetzt zuverlässiger. Ein laufender Emulator wurde erkannt und wechselt nicht mehr in den Status „Offline“ oder „Nicht autorisiert“.
25.3.0 (März 2017)
Ab dieser Version wird der Android-Emulator getrennt von SDK-Tools. Diese Version bietet eine Vielzahl von Verbesserungen, neue Funktionen und Fehlerkorrekturen.
Nebenversion 25.3.1 (März 2017)
- Ein Absturz, der bei einigen GPU-Konfigurationen durch die standardmäßige Deaktivierung von GLAsyncSwap auftrat, wurde behoben.
Diese Funktion wurde in Version 25.3.0 hinzugefügt, um das Frame-Timing und die Bilder pro Sekunde für Spiele zu verbessern
und Video, aber bei einigen unbekannten
Maschinenkonfigurationen schlägt der Emulator fehl. Sie können
können Sie sie manuell aktivieren. Öffnen Sie dazu
android_sdk/emulator/lib/advancedFeatures.ini
-Datei und EinstellungGLAsyncSwap = on
.
Abhängigkeiten
- Android SDK Platform-Tools Version 24 oder höher.
- Android SDK Tools Version 25.3.0.
Neue Funktionen und Fehlerkorrekturen
- Emulations-Engine wurde auf QEMU 2.7 aktualisiert, einschließlich aller aktuellen Fehlerkorrekturen, verbesserte Leistung und neue Funktionen.
- Neue IPv6-Unterstützung
- Der Emulator verwendet nun SwiftShader als reinen Software-Renderer auf den Organisator.
- Leistungsverbesserungen bei Android Pipe: Android Pipe, die wichtigste
zwischen dem Emulator und dem Android-Betriebssystem.
ist schneller, hat eine niedrigere Latenz und bietet bessere
Multithread-Leistung. Dies führt zu Leistungseinbußen,
Verbesserungen für den Emulator, darunter:
<ph type="x-smartling-placeholder">
- </ph>
- Verbesserte ADB-Push/Pull-Geschwindigkeit
- Bessere Unterstützung für die 3D-Beschleunigung.
- Die allgemeine Reaktionsfähigkeit des Emulators wurde verbessert.
- Verbesserte Grafikleistung.
- Der Emulator verwendet jetzt GPU-basierte Puffer (glBindBuffers / glBufferData), wenn der Gast sie anfordert, wodurch der CPU-Aufwand verringert wird in einigen Apps.
- Verbesserte Audiounterstützung
- Schnellere Laufwerks-E/A: Der Emulator verwendet jetzt separate Threads, um Laufwerks-E/A weiterleiten, was zu geringerer 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 gilt auch für weniger Leerungen auf dem Laufwerk, was zu deutlich weniger physische Geräteauslastung
- Der Emulator verwendet jetzt Dateien mit geringer Dichte zum Starten von Laufwerken unter Windows Dadurch wird sowohl der erste Startvorgang als auch das Löschen von Daten beschleunigt. Stiefel. Wann? erstellt oder zurückgesetzt wird, schreibt der Emulator 100–200 MB Daten auf der Festplatte anstatt 2 GB oder mehr zu speichern.
- Verschiedene Verbesserungen an der Benutzeroberfläche:
<ph type="x-smartling-placeholder">
- </ph>
- Der Emulator verwendet jetzt Qt 5.7.0, das Fehlerkorrekturen und Leistungsverbesserungen.
- Bei der Initialisierung der Benutzeroberfläche wird nicht mehr versucht, alle Emulatoren zu laden ausführbare Dateien als Qt-Plug-ins. Es ist also deutlich kürzer, besonders bei HDDs.
- Interaktionen über die Benutzeroberfläche sind jetzt schneller und flüssiger, Drehen, Ändern der Fenstergröße und Laden des Fensters mit erweiterten Steuerelementen und den Abschluss.