Я только что закончил установку Android-студии и пытался протестировать ее. Когда я пытаюсь запустить свое приложение, я получаю следующее сообщение об ошибке
emulator: ERROR: This AVD's configuration is missing a kernel file!!
emulator: ERROR: ANDROID_SDK_ROOT is undefined
Кто-нибудь знает, как это исправить ????
android
android-studio
android-emulator
Тед поттель
источник
источник
Ответы:
Возможно, у вас действительно нет образов системы. Еще раз проверьте, что
$ANDROID_HOME/system-images/android-<YOUR DESIRED API>/armeabi-v7a
существует и не пусто. Если они действительно отсутствуют - установите / переустановите с помощью диспетчера SDK.источник
$ANDROID_HOME/system-images/android-<YOUR DESIRED API>/armeabi-v7a
, 2: как переустановить виртуальное устройство с помощью диспетчера SDKПерейдите в Инструменты | Android | AVD Manager
Щелкните стрелку под столбцом Действия справа (где находится сообщение об ошибке)
Выберите Edit
Оставьте выбор по умолчанию (для меня MNC x86 Android M)
Нажмите кнопку "Далее
Нажмите Готово
Это сохраняет ваш AVD, и ошибка теперь исчезла из последнего столбца. И эмулятор теперь работает нормально.
источник
Просто исправил это. Надеюсь, это поможет другим. (Проблема, как в Android Studio v2) Эта проблема касается эмуляторов руки. В этом примере я использую armeabi-v7a API 16
Исправление состоит из трех шагов:
Шаг 1. Откройте диспетчер SDK и убедитесь, что вы установили образ системы ARM EABI v7a.
Шаг 2. Это очевидный случай добавления местоположения sdk к системным переменным.
Щелкните правой кнопкой мыши значок «Этот компьютер» на рабочем столе, затем
Properties -> Advanced system settings -> Environment Variables...
Затем добавьте путь к sdk как новый в раздел системных переменных, используя имя переменнойANDROID_SDK_ROOT
.Шаг 3. Перезапустите Android Studio, чтобы внести изменения. После исправления
ANDROID_SDK_ROOT
ошибки undefined эмулятор по-прежнему не может найти файлы ядра, хотя и видит, что диспетчер sdk установил его вpath-to-sdk\sdk\system-images\android-16\default\armeabi-v7a\kernel-qemu
Причина заключается в путанице между местоположением, в которое диспетчер sdk устанавливает файл ядра, и местоположением, которое эмулятор ищет.
Если вы откроете файл config.ini (Android Studio -> AVD Mananger -> «Показать на диске») для своего эмулятора, вы увидите следующую строку:
image.sysdir.1=add-ons\addon-google_apis-google-16\images\armeabi-v7a\
(т.е. \ путь-к-SDK \ дополнения \ аддон -....)
Вместо того, чтобы изменять это значение в файле config.ini, я скопировал
path-to-sdk\sdk\system-images\android-16\default\armeabi-v7a\kernel-qemu
(файл ядра из папки sdk manager установлен)
к
\path-to-sdk\add-ons\addon-google_apis-google-16\images\armeabi-v7a\
И это был отсутствующий файл ядра. Вы можете запустить эмулятор. (Вам нужно будет закрыть Android Studio и снова открыть) Дайте эмулятору время, так как он в 10 раз медленнее по сравнению с x86. (У меня на запуск ушло около 5 минут)
источник
image.sysdir.1=system-images\android-16\default\armeabi-v7a
image.sysdir.1
до `system-images \ android-15 \ google_apis \ armeabi-v7a`Я исправил это, запустив «C: \ Program Files \ Android \ android-sdk \ AVD Manager.exe» и починив сломанное устройство.
источник
Короткий ответ : попробуйте создать такой же образ с помощью старой школы
<AndroidSDK>\AVD Manager.exe
.Работая в Android Studio, работая со всеми интегрированными инструментами, для меня стало естественным не использовать старые менеджеры (AVD / SDK).
В моем случае эта проблема возникла при использовании нового (интегрированного) AVD Manager для создания устройств со старыми образами системы (API 11 и ниже, как я тестировал).
Когда я попытался использовать старый школьный инструмент AVD Manager (расположенный внутри
<AndroidSDK>\AVD Manager.exe
) для создания этих старых образов устройств, я добился успеха.источник
~/Library/Android/sdk/tools/android avd
.Привет, я столкнулся с той же проблемой, что и вы, третья ссылка в Google привела меня к этому фрагменту кода, который вызывает ошибку,
на что человек написал:
"/ * Если имя образа ядра заканчивается на" -armv7 ", то автоматически меняет тип процессора *. Это плохой подход к управлению * конфигурацией, но он должен позволить нам обойтись без сборки системных образов ARMv7 * с проходом dex preopt "
Итак, я вернулся и загрузил версию Intel Atom для x86 для желаемого уровня API и смог запустить эмулятор без ошибок. Надеюсь, это тоже поможет ...
источник
Обычно ошибка возникает из-за неподходящего эмулятора AVD для типа приложения, для которого вы разрабатываете. Например, если вы разрабатываете приложение для носимого устройства, но пытаетесь использовать эмулятор телефона для его запуска.
источник
У меня была такая же ошибка. Решением для меня было изменение пути ANDROID_HOME . Сначала я заглянул в tools-> android-> sdk manager из Android Studio. В этом окне мы видим путь, по которому Android Studio ищет SDK: image
Затем я открыл оболочку Windows CMD, выполнил:
но путь отличался от пути в КОНФИГУРАЦИИ ANDROID STUDIO первого шага.
Решением было изменить пользовательскую среду, ANDROID_HOME, на одну из первых шагов: image
Наконец, я закрыл оболочку cmd и открыл другую оболочку cmd для выполнения:
путь был обновлен, и я смог отлично запустить свой эмулятор.
источник
В моем случае (Windows 10) причина заключалась в том, что я осмелился распаковать android sdk в папку, отличную от папки по умолчанию. Когда я переместил его на значение по умолчанию c: / Users / [имя пользователя] / AppData / Local / Android / Sdk и изменил пути в Android Studio и системных переменных, он начал работать.
источник
Это сработало для меня, и я использую Windows 10 и Android Studio 2.3.3
источник
источник
Общий подход к решению этой проблемы.
1.ПРОВЕРЬТЕ свой менеджер SDK, запустив его из своей студии Android, и выделите папку sdk, выполнив
./android.sh
, чтобы найти сломанные пакетыПопробуйте установить образы системного эмулятора с поддержкой API Google, а не Intel. Точно так же я решил свою проблему, запустив другой образ системы.
Эксперимент по виртуализации на основе KVM, предложенный Google для Linux
источник