在终端中输入cordova运行android后,我得到了这个错误:

Waiting for emulator to start...
PANIC: Broken AVD system path. Check your ANDROID_SDK_ROOT value [/Users/username/Library/Android/sdk]!

这发生在导出之后:

export ANDROID_SDK_ROOT='/Users/username/Library/Android/sdk'

在导出之前,我得到:

Waiting for emulator to start...
PANIC: Cannot find AVD system path. Please define ANDROID_SDK_ROOT

你知道我哪里错了吗?我确定这是sdk根,所以为什么我得到破碎的avd系统路径?


当前回答

在尝试了一段时间的其他谷歌“解决方案”后,唯一对我有用的是,在Windows上设置ANDROID_SDK_ROOT环境变量,并添加和删除ANDROID_HOME和ANDROID_SDK_HOME变量后,是Xerox23的答案-编辑AVD的config.ini将ANDROID_SDK_ROOT的值硬编码到image.sysdir中。1房地产。

这是使用Android Studio 3.0.1和模拟器26.1.4,从Android Studio内的AVD管理器启动虚拟设备。

其他回答

在Mac: 我使用brew和Android Studio安装了Android -sdk。不知何故,两次安装导致了这个问题。当我卸载我的brew安装的sdk使用brew桶卸载android-sdk,并添加以下vars到我的env。它工作。

export ANDROID_HOME=/Users/<Username>/Library/Android/sdk
export ANDROID_SDK_ROOT=$ANDROID_HOME

我遇到了这个问题,因为我从早期就开始使用React Native。谷歌已经弃用命令行工具,坚持使用Android studio。我的解决方案是删除命令行工具

rm -rf /usr/local/Cellar/android-sdk

rm /usr/local/bin/android

按照指示打开AS安装sdk v6 https://facebook.github.io/react-native/docs/getting-started.html#1-install-android-studio

制作一个新的AVD,它将毫无错误地启动

你应该添加AVD模拟器。 去这个位置:

C:\Users\%username%\AppData\Local\Android\sdk\

启动AVD管理器,在第二个选项卡(设备定义)中单击“创建AVD”按钮。

奥列格·切尔的回答让我找到了解决办法。正如他提到的

去/。Android /avd/打开config.ini。找到>image.sysdir。1房地产。它指向SDK中包含系统>图像的目录。确保该目录存在并包含build等文件。道具>系统。img等等。如果它没有,那么你必须打开SDK管理器和>下载系统图像你的AVD需要(见下文)。

我在avd目录中找到了相应的模拟器*.ini文件。 在那里,我修改了“image.sysdir”。1”条目。我将相对路径替换为绝对路径(在前面附加ANDROID_SDK_ROOT)。在此之后,模拟器如预期的那样从命令行启动。

我在Windows 10上运行Android Studio,在环境变量上设置ANDROID_HOME和ANDROID_SDK_ROOT,仍然得到错误。

结果发现,我忘了下载设备。

下载“丢失的系统映像”后,一切工作正常。