Ich versuche, einen Android-Emulator mit AVD Manager auszuführen. Dies ist meine Avd: http://image-upload.de/image/fnx79V/52b0d050ee.png
und das passiert, wenn man anfängt:
http://image-upload.de/image/vGpQfa/e912d83939.png
Ich habe ein Macbook Pro Retina. Installierte den Haxm-Treiber direkt von der Intel-Seite.
Kein Emulator funktioniert. Alle erhalten die gleiche "Fehlermeldung".
Running Command (Dieser Fehler trat auf, als ich Homebrew für die Installation von Android-SDK und Android-Plattform-Tools verwendete. Jeder, der das gleiche Problem hat, sollte dies entfernen oder nachsehen, wo der Konflikt liegt.)
export ANDROID_EMULATOR_DEBUG=1 test20
emulator:Found AVD name 'test20'
emulator:Found AVD target architecture: x86
emulator:Looking for emulator-x86 to emulate 'x86' CPU
emulator:Probing program: ./emulator-x86
emulator:Probing path for: emulator-x86
emulator:Found target-specific emulator binary: /usr/local/bin/emulator-x86
emulator:Probing for: /usr/local/bin/libOpenglRender.dylib
emulator:Probing for: /usr/local/bin/lib/libOpenglRender.dylib
emulator:Probing for: /usr/local/lib/libOpenglRender.dylib
emulator:Probing for: /usr/local/bin/lib64OpenglRender.dylib
emulator:Probing for: /usr/local/bin/lib/lib64OpenglRender.dylib
emulator:Probing for: /usr/local/lib/lib64OpenglRender.dylib
emulator:Could not find OpenGLES emulation host libraries!
emulator: ERROR: This AVD's configuration is missing a kernel file!!
emulator -avd test21
emulator:Found AVD name 'test21'
emulator:Found AVD target architecture: x86_64
emulator:Looking for emulator backend for x86_64 CPU
emulator:Probing program: ./emulator-x86_64
emulator:Probing path for: emulator-x86_64
emulator:Looking for emulator-x86 to emulate 'x86_64' CPU
emulator:Probing program: ./emulator-x86
emulator:Probing path for: emulator-x86
PANIC: Missing emulator engine program for 'x86_64' CPUS.
Nachdem ich das Problem mit Homebrew behoben habe:
Ich habe ein bisschen herumprobiert und Folgendes gefunden:
emulator64-x86 -avd test20
Creating filesystem with parameters:
Size: 69206016
Block size: 4096
Blocks per group: 32768
Inodes per group: 4224
Inode size: 256
Journal blocks: 1024
Label:
Blocks: 16896
Block groups: 1
Reserved block group size: 7
Created filesystem with 11/4224 inodes and 1302/16896 blocks
emulator: ERROR: Could not load OpenGLES emulation library: dlopen(lib64OpenglRender.dylib, 1): image not found
emulator: WARNING: Could not initialize OpenglES emulation, using software renderer.
HAX is working and emulator runs in fast virt mode
qemu: could not load PC BIOS 'bios.bin'
Für alle, die das gleiche Problem haben, helfen vielleicht diese Schritte:
Führen Sie Ihren Emulator im Debug-Modus aus:
export ANDROID_EMULATOR_DEBUG=1 emulatorName
Wenn es einen Pfad gibt, der seltsam aussieht, suchen Sie nach anderen Installationen wie Homebrew und entfernen Sie den Konflikt (deinstallieren Sie einen).
Wenn die Bibliothek fehlt, müssen Sie die Variable exportieren:
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ANDROID_HOME/tools/lib
Und wenn der Fehler "qemu: PC-BIOS 'bios.bin' konnte nicht geladen werden" angezeigt wird, besteht eine Korrektur darin, den Emulator mit dem vollständigen Pfad auszuführen:
/Applications/Android\ Studio.app/sdk/tools/emulator64-x86 -avd test20
In your case it is maybe a other path.
quelle
emulator
odertools
- ich musste das-kernel
Argument für diesen Beitrag manuell angeben stackoverflow.com/a/52161215/3700490Antworten:
Wenn Sie macOS verwenden, fügen Sie dem Pfad sowohl Android SDK
emulator
als auchtools
Verzeichnisse hinzu:Schritt 1: In meinem Fall war die Reihenfolge zuerst wichtig
emulator
und danntools
.Schritt 2: Laden Sie neu
.bash_profile
oder.bashrc
je nach BetriebssystemSchritt 3: Liste der verfügbaren Emulatoren abrufen:
$emulator -list-avds
Schritt 4: Starten Sie den Emulator über die Befehlszeile und ersetzen Sie ihn
avd
durch den Namen Ihres Emulators$emulator @avd
Vergessen Sie nicht, das
@
Symbol hinzuzufügen .Dies wurde mit macOS High Sierra 10.13.4 und Android Studio 3.1.2 getestet.
quelle
Ich hatte dieses Problem, nachdem ich Android Studio auf 3.2 aktualisiert und sogar einige SDK-Pakete aktualisiert hatte.
Die Ursache war, dass sich der Pfad zum Emulator geändert hatte. Verwenden Sie ihn
...../Android/Sdk/tools/emulator
stattdessen nicht....../Android/Sdk/emulator/emulator
.quelle
Die folgende Problemumgehung zum Starten von emulator-x86 hat bei mir funktioniert:
Oder öffnen Sie unter Windows die Eingabeaufforderung (Admin)
Und jetzt startet der Emulator vom SDK-Manager.
Hinweis : Emulatoren befinden sich in
emulators
neueren Versionen im Ordner.quelle
tools
und in dasemulator
Verzeichnis verschoben .which emulator
, um zu überprüfen, welches tatsächlich ausgewählt wird./Users/{$USER_NAME}/Library/Android/sdk/emulator/emulator
ist die richtige ausführbare Datei.which
hätte nicht die richtige Binärdatei gefunden, da sie sich überhaupt nicht im Pfad befand. Ich habe eine pfadbasierte Lösung in Betracht gezogen, war jedoch der Meinung, dass die Symlink-Lösung ein Upgrade eher überlebt und in sich geschlossen ist. Klingt auch so, als hätten die SDK-Entwickler die Dinge seit 2015 verschoben, nicht sicher, ob meine Lösung mehr relevant ist./Users/amama/Library/Android/sdk/tools/emulator @PIXEL_2_XL
zu/Users/amama/Library/Android/sdk/emulator/emulator @PIXEL_2_XL
emulator/emulator.exe
statttools/emulator
.Navigieren Sie zu dem Emulatorordner in
Android SDK folder
/emulator
cd ${ANDROID_HOME}/emulator
Geben Sie dann diesen Befehl ein, um den Emulator ohne Android Studio zu öffnen:
Nexus_5X_API_28_x86
Ist meine AVD, müssen Sie Ihren AVD-Namen angebenquelle
Für Windows 10, 5.29.18:
Mit dem Befehl promt bin ich gerade in das Emulatorverzeichnis gekommen:
und tippte dann den Befehl ein:
Nexus_S_API_27
ist der Name meines benutzerdefinierten Emulators.Andernfalls wird es missbrauchen:
quelle
PANIC: Missing emulator engine program for 'x86' CPU.
auf gültigen AVD-Pfad. Wie unter stackoverflow.com/a/51627009/2914140 beschrieben , verwenden neuere Versionen von Emulatoren denemulator/emulator
Pfad, während ich mit begonnen habetools/emulator
.Auf dem Mac nach der Installation von Android Studio IDE
android-studio-ide-173.4907809-mac.dmg
und der Verwendung von Studio SDK Manager zur Installation von SDK ToolsFügen Sie Ihrem PFAD mit
~/.profile
oder hinzu~/.bash_profile
und stellen Sie sicher, dass Sie$ANDROID_HOME/emulator
in Ihrem$PATH
vorherigen$ANDROID_HOME/tools
wie folgt haben:quelle
Es gibt zwei benannte
emulator
Binärdateien. welches sich unter$SDK/tools/emulator
einem anderen unter befindet$SDK/emulator/
$SDK/emulator
Ihrem env PATH hinzufügenIch habe ein Skript geschrieben, das mir hilft, die AVD-Liste aufzurufen
quelle
ON WINDOWS - Die Aktualisierung des Systempfads hat bei mir funktioniert. Erstellen Sie eine Umgebungsvariable für den Speicherort Ihres aufgerufenen SDK
ANDROID_SDK
und fügen Sie diese in der folgenden Reihenfolge zu Ihrem Pfad hinzu:quelle
Getestet unter macOS Mojave 10.14.5.
Grund und Lösung:
wir benutzen
sdk/tools/emulator
, wir sollten benutzensdk/emulator
.Wir könnten den Emulatorstandort überprüfen:
Wir müssen wie folgt verwenden:
{sdk location}/emulator -avd {avd name}
Hier ist die eigentliche Ausgabe:
Referenz: https://www.reddit.com/r/androiddev/comments/a978kx/mac_can_run_emulator_fine_through_android_studio/
quelle
Sie können auch versuchen, was hier vorgeschlagen wird: https://www.stkent.com/2017/08/10/update-your-path-for-the-new-android-emulator-location.html
Führen Sie den Emulator kurz aus dem
sdk/emulator
Ordner ausquelle
Sie können das Verzeichnis emulator-x86 nicht starten, da LD_LIBRARY_PATH speziell eingerichtet werden muss, um die PC Bios- und GPU-Emulationsbibliotheken zu finden (aus diesem Grund gibt es 'emulator', es ändert den Pfad und ruft dann emulator-x86 auf).
Haben Sie die erste Ausgabe aktualisiert? Es sieht so aus, als ob 'Emulator' immer noch '/ usr / local / bin / emulator-x86' findet.
quelle
Hatte das gleiche Problem unter Windows7 64bit. Der Grund, warum es nicht fehlte, war die
emulator-x86.exe
Datei unter sdk / tools. Es wurde behoben, indem Android SDK Tools mit dem Android SDK Manager gelöscht und erneut installiert wurden. Die Datei ist jetzt vorhanden und der Emulator funktioniert wie erwartet.quelle
In meinem Fall musste ich Android Emulator vom Sdk-Manager installieren und es wurde behoben
quelle
Versuchen Sie die folgende Problemumgehung, um emulator-x86 zu starten:
Dabei ist $ SDK der Pfad zu Ihrer SDK-Installation. Das ist auf den Punkt gebracht, was 'Emulator' versucht zu tun. Möglicherweise möchten Sie emulator64-x86 anstelle von emulator-x86 starten, wenn erstere vorhanden ist.
quelle
tools
inemulator
.Avast Antivirus erkennt emulator-arm.exe als Thread und blockiert aus bestimmten Gründen. Wenn Sie Ausschlüsse auf der Seite "Virus Chest" mit der rechten Maustaste hinzufügen -> "Ausschlüsse wiederherstellen und hinzufügen", wird dies in zukünftigen Ausführungen nicht behoben. So lösen Sie dies in Avast 2015 dauerhaft:
Einstellungen ->
Aktiver Schutz ->
Dateisystemschutz ->
Anpassen ->
Ausschlüsse fügen dann Thread als Ausschluss hinzu. Und dann OK drücken.
quelle
Löschen Sie sowohl Android SDK Tools als auch Android SDK PLatform-Tools. Laden Sie dann beide Pakete erneut herunter. Erstellen Sie nun einen neuen Emulator und starten Sie ihn. es wird klappen. Möglicherweise können Sie Ihre alten Emulatoren ausführen.
quelle
Dies funktionierte für mich unter macOS:
quelle
Überprüfen Sie zuerst den Pfad Sie bekommen ,
which emulator
und wenn Sie erhalten/usr/local/share/android-sdk/tools/emulator
dann entfernen oder diesen Emulator umbenennen (es ist ein altes) und stattdessen die Verwendung/usr/local/share/android-sdk/emulator/emulator
das ist der neue Pfad .Wenn Sie Homebrew verwenden und mit installiert haben
brew cask install android-sdk android-studio
, müssen Sie:Starten Sie dann Ihre Terminal-Shell neu und überprüfen Sie, ob Ihre Pfade Ihren Erwartungen entsprechen:
set | grep ANDROID
Wenn die richtigen Pfade festgelegt sind, müssen Sie normalerweise das ndk und einige Tools installieren:
sdkmanager "ndk-bundle" "cmake;3.10.2.4988404" "lldb;3.1"
und überprüfen Sie die Liste für andere Stücke wie dieses
sdkmanager --list
Ich habe auch Android Studio geschlossen, den alten Android / Sdk-Ordner unter meinem $ HOME-Ordner entfernt und Studio neu gestartet. Als ich gefragt wurde, wohin mein Sdk gegangen ist, habe ich den Sdk-Pfad eingefügt:
/usr/local/share/android-sdk
quelle
Ich hatte das gleiche Problem und arbeitete nie für mich, außer bis ich zum Emulatorordner ging. Ich habe versucht, den Emulatorordner zu exportieren, aber nicht für mich gearbeitet
Am Ende schreibe ich Elias für den Befehl in die .bashrc-Datei
quelle
cd
in das Emulatorverzeichnis$ANDROID_HOME/emulator
Für Ubuntu-Benutzer
Wenn Sie bekommen
PANIC: Missing emulator engine program for 'x86' CPU.
diesen Fehler erhaltenVersuchen Sie, Ihren Emulator wie oben beschrieben über den Emulatorordner im SDK zu starten
quelle
Diese Meldung bedeutet, dass das Programm 'emulator-x86' oder 'emulator64-x86' in $ SDK / tools / fehlt oder aus irgendeinem Grund nicht gefunden werden kann.
Sind Sie sicher, dass Sie einen gültigen Download / eine gültige Installation des SDK haben?
quelle
Überprüfen Sie, ob sich Ihre EXE-Datei in Ihrer Antiviren-Quarantäne befindet
Lösungen:
\sdk\tools
.Android\sdk\tools
Verzeichnis hinaus.quelle