在终端中输入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系统路径?
今天刚刚遇到了这个问题,并设法解决了它。
模拟器:[140735565005632]:ERROR:android/android-emu/android/qt/qt_setup.cpp:28: qt library not found at /Users/your_user_name/ library /android/ sdk/ Emulator /lib64/qt/lib
15:08 Emulator: Could not launch '/Users/your_user_name/Library/Android/sdk/ Emulator /qemu/darwin-x86_64/qemu-system-x86_64':没有这样的文件或目录
解决方法非常简单。通过Android Studio => tools => Android => SDK manager => SDK tools => select Android emulator => Apply
我使用的是macOS High Sierra的MacBook Pro,我相信你的机器与此问题无关。在第一次使用Android Studio 3.0.1运行Android Studio安装管理器时,模拟器没有明显安装,至少对我来说是这样
同时,确保你在.bashrc或.zshrc中定义了你的路径,就像这样:
export ANDROID_HOME=/Users/your_user_name/Library/Android/sdk
export ANDROID_SDK_ROOT=$ANDROID_HOME
export PATH=$PATH:$ANDROID_HOME/emulator
export PATH=$PATH:$ANDROID_HOME/tools
export PATH=$PATH:$ANDROID_HOME/platform-tools
NativeScript
对于任何通过NativeScript启动android模拟器遇到麻烦的人来说,它可能是env vars ANDROID_HOME和ANDROID_SDK_ROOT已被覆盖。
我是如何给自己制造一个问题的,那就是安装Android Studio来生成一个不同的模拟器。我这样做是在我已经通过home brew安装了android sdk之后。
因此,如果在NativeScript安装期间,您选择通过HomeBrew安装android sdk, NativeScript将设置如下:
ANDROID_HOME=/usr/local/share/android-sdk
ANDROID_SDK_ROOT=/usr/local/share/android-sdk
随后安装Android Studio将覆盖这些值:
ANDROID_HOME=/Users/[User]/Library/Android/sdk
ANDROID_SDK_ROOT=/Users/[User]/Library/Android/sdk
因此,Android studio和Android sdk的NativeScript/Brew安装自然存在冲突。删除其中一个和/或验证env变量包含正确的路径应该会让模拟器启动。