2012-03-15 53 views
156

当我尝试在Eclipse中运行Android模拟器时发现了此问题。无法弄清楚发生了什么事。我在网上搜索解决方案,但它似乎是模糊的,我不明白。 我正在按照网站的步骤安装AVD,我无法弄清楚我错过了什么。请按照步骤向我解释。模拟器错误:此AVD的配置缺少内核文件

+0

同样的问题:http://stackoverflow.com/questions/8190820/scala-android-newbie-创建一个新的AVD – zapl 2012-03-15 01:06:50

+1

在mac仍然无法启动它;在AVD上使用修复工作对我来说http://stackoverflow.com/a/15971119/664220 – Ronnie 2013-04-12 12:14:30

+0

安装ARM映像后重新启动Eclipse,然后创建一个新的AVD为我工作。 – Simon 2014-04-06 18:51:05

回答

243

“ARM EABI v7a系统映像”必须可用。通过Android SDK管理器安装: Android SDK manager

另一个提示(见here) - 与

  • Android SDK工具修订版17或更高
  • 的Android 4.0.3(API等级15)
  • 使用SDK rev 3和System Image rev 2(或更高版本)

您可以打开GPU仿真以获得更快的仿真器: enter image description here

注:按you786评论,如果你以前创建仿真器,那么你需要重新创建它,否则将无法正常工作。

备选1
英特尔提供了“Intel hardware accelerated execution manager”,也就是,用于执行X86图像和其也通过了Android SDK管理器所服务的虚拟机基于仿真器。请参阅英特尔仿真器教程:HAXM Speeds Up the Android Emulator。 Roman Nurik的帖子here,英特尔仿真器与Android 4.3是“快速”。

替代2
在文章的评论上面可以找到Genymotion参考号称是“对应用程序的测试和演示速度最快的Android模拟器”。 Genymotion在VirtualBox上运行。另见他们的网站Google+,来自Cyril Mottier的post和本指南reddit

替代3
在XDA-论坛我读到MEmu - Most Powerful Android Emulator for PC, Better Than Bluestacks。你可以找到模拟器here。这使我...

替代4
......这XDA论坛条目:How to use THE FAST! BlueStack as your alternate Android development emulator。你可以找到模拟器here

+1

在开启GPU仿真时某些ATI卡不幸崩溃 - 期待更新的仿真器。 – ChrLipp 2012-04-11 07:43:07

+1

谢谢..他为我工作 – 2012-06-21 10:55:07

+21

我发现我不得不删除模拟器,并在安装后重新创建它来解决这个问题。 – you786 2013-04-27 05:11:31

23

您可以得到此错误的另一个原因是Eclipse无法找到正确的文件。

查看Eclipse正在查找SDK文件的位置。您可以在命令行上执行此操作。下面是Windows的一个例子命令提示符的AVD我创建并命名为“SonyTabletS”:

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

第一行返回表示日食寻找SDK文件,看起来像:

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

确保位置正确。

在我的情况下,ANDROID_SDK_ROOT最初设置不正确,我的主目录。这是因为我通过盲目遵循Sony Tablet S SDK安装说明并使用不正确的路径添加ANDROID_SDK_ROOT环境变量来设置它。

+0

在我的情况下,Android \ android-studio \ sdk已被接管ANDROID_SDK_ROOT位置,而我从Android \ android-sdk文件夹运行模拟器。一旦它正确指向Android \ android-sdk,它就可以工作。 – 2013-09-28 02:33:49

+0

这就是我的。我的构建环境使用了一个我不能轻易更新的ANDROID_SDK_ROOT。解决方法是启动一个干净的命令提示符并将ANDROID_SDK_ROOT设置为正确的,然后从那里启动sdk管理器。 – 2014-08-21 17:02:48

+0

非常感谢! – 2015-03-05 12:03:04

2

我安装了Android SDK管理器和Android SDK yestoday,当我试图立即运行Android模拟器时,我也得到了这个错误。但是,现在这个错误消失了,我认为在安装SDK时重新启动系统可能会解决这个问题。

2

经过漫长的一天的修复/重建/升级SDK/NDK & JDK后,我出现了一个奇怪的智能思想。需要检查环境变量,因为我的AVD'GalaxyS3'缺少内核文件的修复方法是将系统映像参考扩展为绝对值。

image.sysdir.1 = C:\的Android \ SDK \系统图像\机器人-19 \ armeabi-V7A \

添加 “C:.... SDK \” 到“图像。 sysdir.1 ='条目在'workspace'.android \ avd \ GalaxyS3.avd \ config.ini文件解决了问题(现在)。

7

以管理员模式打开AVD管理器 选择虚拟机并单击编辑,单击确定。 启动虚拟机。

编者按::以管理员模式,他的意思是右键单击>以管理员身份在Windows平台上运行。

+0

这个简单的指令解决了我的问题!谢谢 – harveyt 2014-04-18 21:58:57

+0

什么/管理员模式在哪里? – ericpeters0n 2014-04-23 08:13:17

+0

为我工作。谢谢 – 2015-05-10 15:58:07

2

我更新了我的android SDK到最新版本(API 19)。当我尝试使用phonegap 3运行模拟器时,构建成功,但它遇到了同样的问题。

在AVD管理器中有一个存在的设备,但其参数都是未知的。当然,这是因为我卸载了旧的sdk版本(API 17),它在尝试删除设备时返回第二个错误。随着消息:“设备已经运行”

为了解决这个问题,我去了〜/ .android/avd /中的AVD位置,并手动删除了device directory.avd和device.ini文件。最后,在设备管理器中,我创建了由最新API提供的新AVD。

这使得PhoneGap的建立和运行模拟器成功地

我希望这有助于

好日子

15

我有同样的问题。在我的情况下,事实证明我已经安装了另一个版本的SDK与Android Studio提供的版本一起。将我的ANDROID_SDK_ROOT环境变量更改为原始值为我解决了这个问题。

+1

重要的是要注意,这是一个同样有效的答案,因为之前在Android Studio之前安装了SDK的情况下,答案最高。错误在于Android Studio应该注意到ANDROID_SDK_ROOT已经被设置为备用位置,并在安装过程中向用户发出警告。 – Core 2015-02-06 00:24:19

+0

核心是正确的。我今天从Eclipse切换到Android Studio,这是解决了我的问题。 – Pikamander2 2015-02-11 09:09:19

3

确保您已经正确配置了仿真设备。 Android Studio可能会附带一个显示在仿真设备列表中的设备,但未设置为与您使用的SDK版本一起使用。

尝试在AVD管理器(工具 - > Android> AVD管理器)中创建一个新的仿真设备并将其选为目标。

3

如果你知道你的机器上已经安装了内核文件,那么问题在于emulator.exe能够找到它。

我的修复程序基于user2789389的帖子。我可以从AVD管理器启动AVD,但不能从命令行启动。所以,使用AVD Manager,我选择了我想运行的avd并点击“Details”。这给我展示了avd定义文件的路径。在这个.avd文件旁边的同名文件夹中,我找到了一个config.ini文件。在INI,我发现了以下行:

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

我在目录C看着:\用户\ XXXX \机器人-的SDK \系统图像\机器人-19,并发现image.sysdir.1路径无效。我不得不删除“默认”子文件夹,因此将其更改为以下内容:

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

我保存了ini并再次尝试启动AVD。这解决了问题!

+0

这没有解决它。在我的情况下,我有默认子文件夹中的系统映像。 – 2015-08-05 03:01:39

+0

你不必投票给我,因为你有不同的问题!这不会让我的答案错误。 – BuvinJ 2015-08-05 12:06:54

+0

您是否因为没有解决您的问题而在此处投下其他任何帖子? – BuvinJ 2015-08-05 12:13:00

1

我尝试了ChrLipp的建议,但那不是问题,因为图像已经安装。我所做的是:

android avd 

手动启动模拟器。然后我停下模拟器,并形成对

cca emulate android 

的应用程序,点开始工作,而“缺少内核文件”的错误。

2

继ChrLipp在Ubuntu 14.04采用了Android 1.2.2工作室接受的答案:

  • 从安装Android SDK中经理 “ARM EABI V7A系统映像” 包。
  • 删除无效的虚拟设备。
  • 添加一个带有应用程序二进制接口(ABI)的新设备作为armeabi-v7a。
  • 启动到新设备中。

这对我有效。尝试重新启动系统,如果它不适合你。

0

只是想分享我在这个问题上的经验。在这里咨询每个答案,这与我的情况不符。拥有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 /中。

Eclipse是在这里期待它:

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

只是改变了目录本身和它现在的工作。

1

我解决了这个问题,只是增加了环境变量ANDROID_SDK_ROOT,于我而言这是位于C:\用户\ FERA \应用程序数据\本地\的Android \ SDK

7

这里是我的故事。在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然后工作了。

+0

谢谢,这个解决了它!我认为这必须是一个错误或......因为这是一个非常奇怪的行为 – Hugo 2016-07-29 08:44:58

+0

@ CKP78 ..这对我很有用!谢谢。 – Bhuro 2016-08-08 13:05:15

2

我的故事Eclipse想要在系统映像文件夹(/path/to/android-sdk-macosx/system-images/android-25/google_apis/arm64-v8a)中名为“kernel-ranchu”的文件。

emulator: ERROR: This AVD's configuration is missing a kernel file! Please ensure the file "kernel-ranchu" is in the same location as your system image.

emulator: ERROR: ANDROID_SDK_ROOT is undefined

在该系统中图像文件夹有一个名为“kernel-qemu”文件。我刚刚改名为“kernel-ranchu”,它的工作...