我正在尝试让Android模拟器与Ionic 2一起工作。这是我的设置...
ANDROID_HOME=/Users/anthonygordon/Library/Android/sdk
JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_65.jdk/Contents/Home
在Android Studio中,我设置了一个AVD Nexus_5_API_24
当我运行ionic run android
时,我收到以下错误
No emulator specified, defaulting to Nexus_5_API_24
Waiting for emulator to start...
[140736250184640]:ERROR:android/android-emu/android/opengl/EmuglBackendScanner.cpp:37:Invalid executable directory: ../emulator
[140736250184640]:ERROR:android/android-emu/android/opengl/EmuglBackendScanner.cpp:37:Invalid executable directory: ../emulator
[140736250184640]:ERROR:android/android-emu/android/qt/qt_setup.cpp:28:Qt library not found at ../emulator/lib64/qt/lib
Could not launch '../emulator/qemu/darwin-x86_64/qemu-system-i386': No such file or directory
有什么想法吗??我被困住了
好的,得到了部分答案。当我尝试仅使用常规的android sdk命令启动模拟器时,我遇到了这个问题
emulator -avd <name of avd>
当我运行which emulator
它指向/usr/local/bin/emulator
,但不是 android sdk 根目录中的模拟器/Users/<user name>/Library/Android/sdk/tools/emulator
所以我只是用以下内容运行了那个。
/Users/<user name>/Library/Android/sdk/tools/emulator -avd <emulator name>
它顺利启动。
我从未使用过ionic,但我想它指向了模拟器的错误二进制文件。 也许尝试从/usr/local/bin 中删除模拟器二进制文件?
问题似乎是"模拟器"试图从相对路径运行:
Could not launch '../emulator/qemu/darwin-x86_64/qemu-system-i386'
我不是 100% 确定如何在核心级别解决此问题。我的解决方案类似于 MikeSchem,使用模拟器目录的绝对路径手动启动模拟器:
/Users/<USER>/Library/Android/sdk/tools/emulator -avd Nexus_5X_API_24
在我的 .profile 中:
function androidstart() {
/Users/<USER>/Library/Android/sdk/tools/emulator -avd Nexus_5X_API_24;
}
alias androidstart='androidstart'