Ich habe gerade Android Studio installiert und versucht, es für einen Testlauf zu verwenden. Wenn ich versuche, meine App auszuführen, wird die folgende Fehlermeldung angezeigt
emulator: ERROR: This AVD's configuration is missing a kernel file!!
emulator: ERROR: ANDROID_SDK_ROOT is undefined
Weiß jemand, wie man das behebt ????
android
android-studio
android-emulator
Ted Pottel
quelle
quelle
Antworten:
Es ist möglich, dass Sie wirklich keine Systemabbilder haben. Überprüfen Sie, ob
$ANDROID_HOME/system-images/android-<YOUR DESIRED API>/armeabi-v7a
vorhanden und nicht leer ist. Wenn sie wirklich fehlen, installieren / installieren Sie sie mit dem SDK-Manager.quelle
$ANDROID_HOME/system-images/android-<YOUR DESIRED API>/armeabi-v7a
, 2: Wie man ein virtuelles Gerät mit SDK-Manager neu installiertGehen Sie zu Extras | Android | AVD Manager
Klicken Sie auf den Pfeil unter der Spalte Aktionen ganz rechts (wo sich eine Fehlermeldung befindet).
Wählen Sie Bearbeiten
Übernehmen Sie die Standardauswahl (für mich MNC x86 Android M)
Weiter klicken
Klicken Sie auf Fertig stellen
Es speichert Ihre AVD und der Fehler ist jetzt aus der letzten Spalte verschwunden. Und der Emulator funktioniert jetzt einwandfrei.
quelle
Habe das gerade behoben. Hoffe das hilft anderen. (Problem wie in Android Studio v2) Dieses Problem betrifft Armemulatoren. In diesem Beispiel verwende ich die armeabi-v7a API 16
Das Update besteht aus drei Schritten:
Schritt 1: Öffnen Sie den SDK-Manager und stellen Sie sicher, dass Sie ARM EABI v7a System Image installiert haben
Schritt 2. Dies ist der offensichtliche Fall des Hinzufügens der Position von sdk zu Systemvariablen.
Klicken Sie dann mit der rechten Maustaste auf das Symbol "Dieser PC" auf dem Desktop
Properties -> Advanced system settings -> Environment Variables...
Fügen Sie dann den Pfad zu sdk als neu im Abschnitt Systemvariablen unter Verwendung des Variablennamens hinzuANDROID_SDK_ROOT
.Schritt 3. Starten Sie Android Studio neu, damit Änderungen registriert werden. Nach der Behebung des
ANDROID_SDK_ROOT
undefinierten Problems kann der Emulator die Kerneldateien immer noch nicht finden, obwohl er sieht, dass der SDK-Manager sie installiert hatpath-to-sdk\sdk\system-images\android-16\default\armeabi-v7a\kernel-qemu
Der Grund ist eine Verwechslung zwischen dem Speicherort, an dem der SDK-Manager die Kernel-Datei installiert, und dem Speicherort, nach dem der Emulator sucht.
Wenn Sie Ihre config.ini (Android Studio -> AVD Mananger -> "Auf Festplatte anzeigen") für Ihren Emulator öffnen, wird die folgende Zeile angezeigt:
image.sysdir.1=add-ons\addon-google_apis-google-16\images\armeabi-v7a\
(dh \ path-to-sdk \ add-ons \ addon -....)
Anstatt diesen Wert in der Datei config.ini zu ändern, habe ich ihn kopiert
path-to-sdk\sdk\system-images\android-16\default\armeabi-v7a\kernel-qemu
(Kerneldatei aus dem Ordner SDK Manager installiert)
zu
\path-to-sdk\add-ons\addon-google_apis-google-16\images\armeabi-v7a\
Und das war die fehlende Kerneldatei. Sie können den Emulator ausführen. (Sie müssen das Android Studio schließen und erneut öffnen.) Geben Sie dem Emulator etwas Zeit, da er im Vergleich zu x86 zehnmal langsamer ist. (Meins dauerte ungefähr 5 Minuten, um zu starten)
quelle
image.sysdir.1=system-images\android-16\default\armeabi-v7a
image.sysdir.1
`system-images \ android-15 \ google_apis \ armeabi-v7a` aktualisierenIch habe das Problem behoben, indem ich "C: \ Programme \ Android \ android-sdk \ AVD Manager.exe" ausgeführt und mein defektes Gerät repariert habe.
quelle
Kurze Antwort : Versuchen Sie, dasselbe Bild mit der alten Schule zu erstellen
<AndroidSDK>\AVD Manager.exe
.Als ich in Android Studio arbeitete und alle integrierten Tools ausführte, war es für mich selbstverständlich, die alten Manager (AVD / SDK) nicht zu verwenden.
In meinem Fall hatte ich dieses Problem, als ich den neuen (integrierten) AVD Manager zum Erstellen von Geräten mit alten Systemabbildern verwendete (API 11 und niedriger, wie ich getestet habe).
Als ich versuchte, das alte AVD Manager-Tool (in
<AndroidSDK>\AVD Manager.exe
) zu verwenden, um diese alten Geräteabbilder zu erstellen, hatte ich Erfolg.quelle
~/Library/Android/sdk/tools/android avd
.Hey, da ist gerade das gleiche Problem aufgetreten, das Sie gemacht haben. Der dritte Link in Google hat mich zu diesem Code geführt, der den Fehler auslöst.
an die die Person schrieb:
"/ * Wenn der Name des Kernel-Images mit" -armv7 "endet, ändern Sie den CPU * -Typ automatisch. Dies ist ein schlechter Ansatz für die * Konfigurationsverwaltung, sollte es uns jedoch ermöglichen, ARMv7 * -System-Images mit Dex Preopt Pass zu erstellen ""
Also ging ich zurück und lud die x86 Intel Atom-Version für meine gewünschte API-Stufe herunter und konnte den Emulator ohne Fehler hochfahren. Hoffe es hilft dir auch .....
quelle
Normalerweise tritt der Fehler aufgrund eines ungeeigneten AVD-Emulators für den App-Typ auf, für den Sie entwickeln. Zum Beispiel, wenn Sie eine App für ein Wearable entwickeln, aber versuchen, sie mit einem Telefonemulator auszuführen.
quelle
Ich hatte den gleichen Fehler. Die Lösung für mich war, den Pfad ANDROID_HOME zu ändern . Zuerst habe ich mir den Tools-> Android-> SDK-Manager von Android Studio angesehen. In diesem Fenster sehen wir den Pfad, in dem Android Studio nach dem SDK sucht: image
Dann öffnete ich eine Windows CMD-Shell, ausgeführt:
Der Weg war jedoch anders als in der ANDROID STUDIO-KONFIGURATION des ersten Schritts.
Die Lösung bestand darin, die Benutzerumgebung ANDROID_HOME auf den ersten Schritt zu ändern: image
Ich schloss schließlich die cmd-Shell und öffnete eine weitere cmd-Shell, um Folgendes auszuführen:
Der Pfad wurde aktualisiert und ich konnte meinen Emulator perfekt ausführen.
quelle
In meinem Fall (Windows 10) war der Grund, dass ich es gewagt habe, das Android SDK in einen nicht standardmäßigen Ordner zu entpacken. Als ich es auf die Standardeinstellung c: / Users / [Benutzername] / AppData / Local / Android / Sdk verschoben und die Pfade in Android Studio und Systemvariablen geändert habe, begann es zu funktionieren.
quelle
Es hat bei mir funktioniert und ich bin auf Windows 10 und Android Studio 2.3.3
quelle
quelle
Ein gängiger Ansatz zur Lösung dieses Problems.
1.ÜBERPRÜFEN Sie Ihren SDK-Manager, indem Sie ihn von Ihrem Android-Studio aus ausführen, und
./android.sh
helfen Sie dem eigenständigen SDK-Ordner, indem Sie ausführen , um defekte Pakete zu findenVersuchen Sie, Systememulator-Images mit Google API-Unterstützung als Intel zu installieren. Genau wie ich mein Problem gelöst habe, indem ich auf ein anderes System-Image gestoßen bin.
Von Google für Linux vorgeschlagenes Experiment zur KVM-basierten Virtulaisierung
quelle