it-swarm.com.ru

Ошибка эмулятора: в конфигурации этого AVD отсутствует файл ядра

Эта проблема была обнаружена, когда я попытался запустить эмулятор Android в Eclipse. Не могу понять, что случилось. Я искал в Интернете решение, но оно казалось расплывчатым, и я не совсем ясно понял. Я следовал инструкциям по установке AVD в соответствии с сайтами, и я не могу понять, что я пропустил. Пожалуйста, объясните мне это в следующих шагах. 

169
shoujo_sm

«Образ системы ARM EABI v7a» должен быть доступен. Установите его через менеджер Android SDK: Android SDK manager

Еще одна подсказка (см. здесь ) - с

  • Android SDK Tools версия 17 или выше
  • Android 4.0.3 (уровень API 15)
  • используя SDK rev 3 и System Image rev 2 (или выше)

вы можете включить эмуляцию GPU, чтобы получить более быстрый эмулятор: enter image description here

Примечание: Согласно комментарию you786, если вы ранее создали эмулятор, вам нужно его воссоздать, иначе это не будет работать. 

Альтернатива 1
Intel предоставляет " Аппаратный менеджер ускоренного исполнения Intel ", который является VM эмулятором для выполнения образов X86 и который также обслуживается Android SDK Manager. Смотрите руководство по эмулятору Intel здесь: HAXM ускоряет эмулятор Android . Роман Нурик пишет здесь , что эмулятор Intel с Android 4.3 "работает очень быстро".

Альтернатива 2
В комментариях к посту выше вы можете найти ссылку на Genymotion , которая претендует на звание "самого быстрого эмулятора Android для тестирования и презентации приложений". Genymotion работает на VirtualBox. Смотрите также их сайт в Google+ , это post от Кирилла Мотье и это руководство в reddit .

Альтернатива 3
На форумах XDA я читал о MEmu - самый мощный эмулятор Android для ПК, лучше, чем Bluestacks . Вы можете найти эмулятор здесь . Это подводит меня к ...

Альтернатива 4
... это запись XDA-Forum: Как использовать БЫСТРО! BlueStack как альтернативный эмулятор разработки Android . Вы можете найти эмулятор здесь .

249
ChrLipp

Другая причина, по которой вы можете получить эту ошибку, заключается в том, что Eclipse не может найти правильный файл.

Проверьте, где Eclipse ищет ваши файлы SDK. Вы можете сделать это в командной строке. Ниже приведен пример команды Windows «Запросить» для AVD, который я создал и назвал «SonyTabletS»:

c:\Program Files (x86)\Android\android-sdk\tools> emulator @SonyTabletS -verbose

Первая возвращенная строка показывает, где Eclipse ищет файлы SDK и будет выглядеть примерно так:

emulator: found Android_SDK_ROOT: C:\Program Files (x86)\Android\android-sdk

Убедитесь, что местоположение правильное.

В моем случае, Android_SDK_ROOT изначально был неправильно установлен в моем домашнем каталоге. Это потому, что я установил это таким образом, слепо следуя инструкциям по установке Sony Tablet S SDK и добавив переменную среды Android_SDK_ROOT с неверным путем.

22
KCD

У меня такая же проблема. В моем случае оказалось, что я установил другую версию SDK наряду с версией, предоставленной Android Studio. Изменение моей переменной среды Android_SDK_ROOT на исходное значение исправило ее для меня. 

15
nerdinand

Моя история, Eclipse хотел файл с именем "kernel-ranchu" в папке системного образа (/path/to/Android-sdk-macosx/system-images/Android-25/google_apis/arm64-v8a).

эмулятор: ОШИБКА: В этой конфигурации AVD отсутствует файл ядра! Убедитесь, что файл «kernel-ranchu» находится в том же месте, что и ваш образ системы.

эмулятор: ОШИБКА: Android_SDK_ROOT не определен

В этой папке системного образа находился файл с именем «kernel-qemu». Я просто переименовал его в «kernel-ranchu», и это сработало ...

9
jptsetung

Вот моя история. В разделе «Действия» диспетчера AVD я просмотрел детали для AVD, который не работал. Прокрутив вниз, я нашел строку:

image.sysdir.1: add-ons\addon-google_apis-google-16\images\armeabi-v7a\

Затем я перешел к этому файлу по адресу:

C:\Users\XXXX\AppData\Local\Android\sdk\add-ons\addon-google_apis-google-16\images\armeabi-v7a

Я обнаружил, что не было никакого файла ядра. Тем не менее, я нашел файл ядра по адресу:

C:\Users\XXXX\AppData\Local\Android\sdk\system-images\Android-16\default\armeabi-v7a

Поэтому я скопировал его и вставил обратно в:

C:\Users\XXXX\AppData\Local\Android\sdk\add-ons\addon-google_apis-google-16\images\armeabi-v7a

AVD тогда работал. 

9
CKP78

Откройте диспетчер AVD в режиме администратора Выберите VM и нажмите кнопку «Изменить», нажмите кнопку «ОК» Запустите ВМ.

Примечание редактора : Под режимом администратора он имел в виду Правый клик> Запуск от имени администратора на платформах Windows.

7
user3313044

Если вы знаете, что файл ядра установлен на вашем компьютере, проблема заключается в том, что emulator.exe находит его.

Мое исправление было основано на посте пользователя2789389. Я мог запустить AVD из AVD Manager, но не из командной строки. Итак, используя AVD Manager, я выбрал avd, который хотел запустить, и нажал «Подробности». Это показало мне путь к файлу определения AVD. В папке с тем же именем, рядом с этим .avd-файлом, я нашел файл config.ini. В ini я нашел следующую строку:

image.sysdir.1=system-images\Android-19\default\armeabi-v7a\

Я посмотрел в папке C:\Users\XXXX\Android-sdks\system-images\Android-19 и обнаружил, что путь image.sysdir.1 был неверным. Мне пришлось удалить подпапку «по умолчанию», изменив ее следующим образом:

image.sysdir.1=system-images\Android-19\armeabi-v7a\

Я сохранил ini и попытался снова запустить AVD. Это решило проблему!

4
BuvinJ

Убедитесь, что вы также правильно настроили эмулируемое устройство. Android Studio может поставляться с тем, который отображается в списке эмулируемых устройств, но не настроен для работы с используемой версией SDK. 

Попробуйте создать новое эмулируемое устройство в AVD Manager (Инструменты-> Android> AVD Manager) и выберите его в качестве цели.

3
kmantel

После принятого ответа ChrLipp с помощью Android Studio 1.2.2 в Ubuntu 14.04:

  • Установите пакет «Образ системы ARM EABI v7a» из диспетчера Android SDK.
  • Удалите неработающее виртуальное устройство.
  • Добавьте новое устройство с Application Binary Interface (ABI) как armeabi-v7a.
  • Загрузитесь в новое устройство. 

Это сработало для меня. Попробуйте перезагрузить систему, если она не работает для вас.

2
manyu

После долгого дня ремонта/переоборудования/обновления SDK/NDK & JDK мне пришла в голову уникальная интеллектуальная мысль. Нужно изучить среду, так как исправление отсутствующего файла ядра моего AVD 'GalaxyS3' заключалось в расширении ссылки на образы системы до абсолютного.

image.sysdir.1 = C:\Android\SDK\система-образы\Android-19\armeabi-v7a \

Добавление «C: .... sdk \» к записи «image.sysdir.1 =» в «рабочем пространстве». Android\avd\GalaxyS3.avd\config.ini решило проблему (на данный момент).

2
user2789389

Вчера я установил Android SDK manager и Android SDK, и я тоже получаю эту ошибку, когда сразу пытаюсь запустить эмулятор Android. Но сейчас эта ошибка исчезла, и я думаю, что перезапуск системы после установки SDK может решить эту проблему.

2
Jack Hu

Я обновил свой Android SDK до последней версии (API 19). Когда я попытался запустить эмулятор с phonegap 3, сборка прошла успешно, но с той же проблемой.

В диспетчере AVD было существующее устройство, тем не менее, все его параметры были неизвестны. Конечно, это происходит потому, что я удалил старую версию SDK (API 17), которая возвращает вторую ошибку при попытке удалить устройство. С сообщением: «устройство уже запущено»

Чтобы решить эту проблему, я пошел в расположение AVD в ~/.Android/avd/и вручную удалил каталог directory.avd и файл device.ini. Наконец, в диспетчере устройств я создал новый AVD, предоставленный новейшим API.

Это позволило PhoneGap успешно построить и запустить эмулятор

Надеюсь, это поможет

Добрый день

2
snaphuman

Я попробовал то, что предложил ChrLipp, но это не было проблемой, так как образ уже был установлен. То, что я сделал, было бежать:

Android avd

запустить эмулятор вручную. Затем я остановил эмулятор и сформировал эту точку на

cca emulate Android

приложение начало работать без ошибки «отсутствует файл ядра».

1
Marc Rochkind

Я исправил эту проблему, просто добавив переменную окружения Android_SDK_ROOT, в моем случае она была расположена в C:\Users\fera\AppData\Local\Android\sdk

1
fera

См. Мой ответ для среды Android Studio, https://stackoverflow.com/a/52161215/8034839

Чтобы решить эту проблему, вам нужно указать путь -kernel вручную. то есть.

$ ~/Library/Android/sdk/emulator/emulator  @Galaxy_Nexus_Jelly_Bean_API_16 -kernel ~/Library/Android/sdk/system-images/Android-16/default/armeabi-v7a/kernel-qemu

Не забудьте изменить имя эмулятора Galaxy_Nexus_Jelly_Bean_API_16 на собственное имя эмулятора. 

Ниже приведена команда проверки эмуляторов, доступных для командной строки. 

$ ~/Library/Android/sdk/emulator/emulator -list-avds

А также убедитесь, что ваш путь к emulator указан правильно, т. Е. Расположен в ~/Library/Android/sdk/emulator/

0
shizhen

Просто хотел поделиться своим опытом по этой проблеме. Консультируясь с каждым из ответов здесь, это не соответствовало моей ситуации. Наличие системного образа для Android API 22 вызывает эту ошибку, и странным является то, что все переменные среды указывают на правильные каталоги. Это не имеет смысла.

Ответ @BuvinJ пролил некоторый свет на проблему. Я проверил путь, описанный в его ответе, и да, моя копия образа системы находится в подпапке по умолчанию, когда я просматриваю каталог пользователя (в Windows).

Странно то, что в Android_SDK_ROOT также есть папка Android-sdk, поэтому я подумал, что, может быть, Eclipse там ищет. Копаясь в подпапках, я понял, что каталог выглядит так:

Android-sdk-windows\system-images\Android-22\google_apis\armeabi-v7a

Этот каталог находится на Android_SDK_ROOT. Существует также еще один, который находится в каталоге пользователя user/XXXX/Android-sdk /. 

Затмение ожидает этого здесь:

Android-sdk-windows\system-images\Android-22\default\armeabi-v7a

Просто поменял каталог как таковой и теперь он работает.

0
Neon Warge

В моем собственном случае у меня было несколько ошибок, большинство из которых были о неправильной настройке Android_SDK_ROOT, в конце концов, одна вещь, казалось, все исправила.

Выполните следующий процесс:

После создания нового устройства эмулятора на AVD перейдите в меню «Действия» и нажмите стрелку, указывающую вниз, как показано ниже.

 enter image description here

Нажмите Показать на диске

Редактировать Config.ini

Ищите image.sysdir.1

значение должно быть таким: ** image.sysdir.1 = system-images\Android-28\google_apis_playstore\x86 **

Ваше собственное значение может отличаться

Теперь исправьте путь Android Sdk, чтобы сделать полный путь.

image.sysdir.1 = ** C:\androidsdk ** система-изображения\Android-28\google_apis_playstore\x86 \

Если вы заметили, что путь SDK для Android, показанный выше, отличается от стандартного SDK для Android по умолчанию, мне пришлось переместить его в C:/androidsdk, чтобы избежать проблем с NDK, так как мой основной ДОМ ПОЛЬЗОВАТЕЛЯ на моем ПК имеет пробелы, которые может использовать NDK не поддерживается.

ПРИМЕЧАНИЕ. Перемещение каталога SDK из каталога по умолчанию обычно является причиной этих ошибок, которые выдает AVD-эмулятор, особенно в том, что касается неверного или неправильно настроенного пути. Исправление, которое я предоставил выше, является быстрым, возможно, вам придется делать это каждый раз, когда вы создаете новое устройство в эмуляторе AVD. 

Это исправление также должно работать при работе с CMD с помощью cordova.

0
Akintunde