我可以使用CPU = x86为目标Android 5.1(Google API)和Android 6.0(Google API)成功启动AVD。但是我使用CPU = arm为Android 4.1(Google API)创建的AVD无法启动。当我尝试启动它时,我看到一个对话框:
Cannot launch AVD in emulator.
Output:
emulator: ERROR: This AVD's configuration is missing a kernel file!!
emulator: ERROR: ANDROID_SDK_ROOT is undefined
由于两个AVD确实有效,我确定定义了ANDROID_SDK_ROOT。我还验证了文件 - >项目结构 - > SDK位置是正确的。
我还运行了Android SDK Manager,卸载了所有API 16项并重新安装了这些API 16项:
SDK Platform
Intel x86 Atom System Images
ARM EABI v7a System Image
Google APIs
Sources for Android SDK
在Android SDK Manager中,所有其他库和包都是最新的。我已经重新启动了我的Windows 7计算机。
另请注意,我被迫为CPU = arm创建此API 16 AVD,而不是使用CPU = x86作为Android虚拟设备管理器,在显示可用的系统映像时,不会显示target = Android 4.1的x86映像Google API)。
有谁知道问题是什么?或建议我可以尝试调试此问题?
在打开此问题后的第二天编辑:由于我没有看到答案,我认为这是另一个Android Studio错误。我输入了这个错误报告 - https://code.google.com/p/android/issues/detail?id=207494
答案 0 :(得分:0)
我在尝试运行基于ARM的仿真器时遇到了同样的错误,这是因为我从android-studio本身下载了ARM映像(不使用系统设置下的独立SDK管理器选项 - > Android SDK在android-studio)。
我通过从android studio启动Standalone SDK Manager解决了这个问题。然后从Standalone SDK Manager菜单中打开Tools-> Manage AVDs。在这里,您可以找到您的模拟器。我发现我的ARM CPU仿真器在名为Platform,API label,CPU / ABI的列中显示问号。这似乎是某种错误。选择模拟器,然后单击编辑。正确选择Target API,CPU / ABI,然后单击“确定”。 现在我的模拟器工作得很好。这解决了我的问题。
我发现更新android-studio对我造成了这个问题。