在终端中输入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系统路径?


当前回答

为了解决这个问题,我必须使用SDK Manager.exe(在“C:\Program Files (x86)\Android\ Android - SDK”中)安装缺少系统映像的包。我注意到我需要的系统映像(“Android -23”)在“C:\Program Files (x86)\Android\ Android -sdk\system-images”中丢失了。

在运行SDK Manager.exe并安装适当的包后,我可以在Android Studio中运行模拟器。

以下是对我有效的解决方案:

https://www.embarcadero.com/starthere/xe5/mobdevsetup/android/en/creating_an_android_emulator.html

其他回答

我在Windows 10上就遇到过这个问题。 我尝试了几种解决办法,但没有一个奏效。 以下是我解决问题的方法:

Uninstalled Android Studio, SDK, .android and .AndroidStudio folders in %USERPROFILE%, Android folder in %LOCALAPPDATA%. Uninstalled Java. Downloaded latest Java JDK:https://www.oracle.com/technetwork/java/javase/downloads/jdk13-downloads-5672538.html and set PATH Environment Variable: https://docs.oracle.com/en/java/javase/11/install/installation-jdk-microsoft-windows-platforms.html#GUID-96EB3876-8C7A-4A25-9F3A-A2983FEC016A I created new Windows 10 local user using LATIN CHARACTERS with admin priviledges. Switched to the new user and installed Android Studio. When the setup wizard was shown, I selected Custom option and checked Android emulator to be installed. I left all location folders as DEFAULT.

现在我的新用户帐户一切正常。

我通过删除文件/usr/local/share/android-sdk解决了这个问题, 因为这个文件是我用自制软件创建的。

export ANDROID_HOME=/Users/<username>/Library/Android/sdk

export ANDROID_SDK_ROOT=/Users/<username>/Library/Android/sdk

export ANDROID_AVD_HOME=/Users/<username>/.android/avd

够了....

你所需要做的就是为android 11安装所需的模拟器示例平台

sdkmanager --install "platforms;android-30"

在你这样做之后,你的模拟器将开始正常工作。

在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

好的,我可以从cordova运行android,我把ANDROID_HOME改为,

export ANDROID_HOME=/usr/local/opt/android-sdk