离子 cordova 运行Android导致恐慌:缺少“x86”CPU的仿真器引擎程序

yfwxisqw  于 2022-11-15  发布在  Android
关注(0)|答案(9)|浏览(129)

在进行了大量的搜索之后,我在运行时无法解决此错误:
ionc cordova run android -ls
输出:

ANDROID_HOME=/Users/lucianokrebs/Library/Android/sdk
JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_161.jdk/Contents/Home
No target specified and no devices found, deploying to emulator        
No emulator specified, defaulting to Nexus_5_API_P

Waiting for emulator to start...

PANIC: Missing emulator engine program for 'x86' CPU.

模拟器永远不会启动
还有,当我奔跑时:
$ ${ANDROID_SDK_ROOT}/tools/emulator -avd my-custom-avd
我得到:PANIC: Missing emulator engine program for 'x86' CPU.
但是,当我奔跑的时候:
$ ${ANDROID_SDK_ROOT}/emulator/emulator -avd my-custom-avd
仿真器启动并正常工作
看起来cordova在尝试启动模拟器时设置了错误的路径。有人已经处理了这个问题吗?

ionic info:
    cli packages: (/usr/local/lib/node_modules)
    @ionic/cli-utils  : 1.19.2
    ionic (Ionic CLI) : 3.20.0

global packages:

    cordova (Cordova CLI) : 8.0.0 

local packages:

    @ionic/app-scripts : 3.1.8
    Cordova Platforms  : android 7.0.0 ios 4.5.4
    Ionic Framework    : ionic-angular 3.9.2

System:

    Node  : v8.9.4
    npm   : 5.6.0 
    OS    : macOS High Sierra
    Xcode : Xcode 9.3 Build version 9E145 

Environment Variables:

    ANDROID_HOME : not set

Misc:

    backend : pro

当我运行ionic cordova build android时,它也工作得很好

gudnpqoy

gudnpqoy1#

从SDK工具版本25.3.0开始,已移除仿真器并移至../sdk/emulator
只需将${ANDROID_SDK_ROOT}/emulator设置为$Path变量,这样就可以从命令行调用emulator,并且ionic cordova将检测到模拟器。

eyh26e7m

eyh26e7m2#

看起来上面的答案对你很有效,这很好,但是对于其他仍然遇到错误的人,请确保检查你的Android虚拟设备使用的是哪个系统映像(你可以在AVD列表中的“API”列下检查Android Studio)。
检查你没有使用任何太新的东西,我尝试使用28和27,都不工作,但26(Android奥利奥8.0)没有

3zwtqj6y

3zwtqj6y3#

对于Windows用户:
只需将其添加到PATH变量

C:\Users\lenovo\AppData\Local\Android\Sdk\emulator
d5vmydt9

d5vmydt94#

我也遇到了同样的问题,但是在我的PATH(我使用的是Windows)中添加“sdk/emulator”并不起作用。原因是工具和仿真器文件夹都包含了一个emulator.exe。在PATH变量中,我将“sdk/emulator”文件夹上移到“sdk/tools”文件夹之前,这样在查找emulator.exe时它会首先被检查,这样就解决了我的问题。

1dkrff03

1dkrff035#

我也犯了同样的错误
实际上,@Suraj Rao的答案是正确的,但有了这个变化,我的模拟器不运行离子cordova emulate android。我也改变了变量环境,在我的$路径这

${ANDROID_SDK_ROOT}\tools\bin

为此

${ANDROID_SDK_ROOT}\emulator\bin

我关闭了cmd,然后再次打开。然后,离子 cordova 模仿安卓运行正常!

cbeh67ev

cbeh67ev6#

我尝试了很多这样的东西,虽然这可能不是所有的解决方案,我相信Windows用户会发现它的帮助...我决定重新开始,我运行了Kotlin的一个样本训练程序。说明提供了设置Android Studio。我结束了不同的错误,导致下面的解决方案。
https://codelabs.developers.google.com/codelabs/build-your-first-android-app-kotlin/index.html#1
该问题与HAXM有关。当HAXM安装在SDK管理器中时,您必须运行SDK文件夹中的Intel程序才能完全访问它。浏览至:

C:\Users\username\AppData\Local\Android\Sdk\extras\intel\Hardware_Accelerated_Execution_Manager

然后右键单击文件intelhaxm-android.exe(以管理员身份运行),已修复...

wdebmtf2

wdebmtf27#

对于Windows用户:

1 -将其添加到路径变量C:\用户\名称用户帐户\应用程序数据\本地\Android\Sdk\模拟器
2 -重新启动Windows。

tvz2xvvm

tvz2xvvm8#

简单的解决方案是首先从AVD管理器运行Android模拟器,然后使用“cordova run android”在Android上启动应用程序。此外,请确保ANDROID_SDK_ROOT设置为Android SDK管理器中显示的路径(您可以使用Android Studio进行检查)。

3df52oht

3df52oht9#

在Android studio中运行虚拟设备,然后运行以下命令

cordova run

相关问题