无法启动模拟器。原因:模拟器在启动前退出 en React Native when react-native run-android

Posted

技术标签:

【中文标题】无法启动模拟器。原因:模拟器在启动前退出 en React Native when react-native run-android【英文标题】:Failed to launch emulator. Reason: Emulator exited before boot en React Native when react-native run-android 【发布时间】:2020-04-17 02:03:40 【问题描述】:

我正在根据这个网站https://medium.com/@leonardobrunolima/react-native-tips-setting-up-your-development-environment-for-windows-d326635604ea安装React Native,它非常有用,直到我运行命令react-native run-android,这是我收到的错误:

info Running jetifier to migrate libraries to AndroidX. You can disable it using "--no-jetifier" flag.
Jetifier found 864 file(s) to forward-jetify. Using 8 workers...
info Starting JS server...
info Launching emulator...
error Failed to launch emulator. Reason: Emulator exited before boot..
> Task :app:transformNativeLibsWithMergeJniLibsForDebug FAILED

Deprecated Gradle features were used in this build, making it incompatible with Gradle 6.0.
Use '--warning-mode all' to show the individual deprecation warnings.
See https://docs.gradle.org/5.5/userguide/command_line_interface.html#sec:command_line_warnings
24 actionable tasks: 4 executed, 20 up-to-date

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:transformNativeLibsWithMergeJniLibsForDebug'.
> Could not read path 'C:\JesusApp\android\app\build\intermediates\transforms\mergeJniLibs\debug\0\lib\x86_64'.

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 7s

error Failed to install the app. Make sure you have the Android development environment set up: https://facebook.github.io/react-native/docs/getting-started.html#android-development-environment. Run CLI with --verbose flag for more details.
Error: Command failed: gradlew.bat app:installDebug -PreactNativeDevServerPort=8081

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:transformNativeLibsWithMergeJniLibsForDebug'.
> Could not read path 'C:\JesusApp\android\app\build\intermediates\transforms\mergeJniLibs\debug\0\lib\x86_64'.

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 7s

    at checkExecSyncError (child_process.js:629:11)
    at execFileSync (child_process.js:647:13)
    at runOnAllDevices (C:\JesusApp\node_modules\@react-native-community\cli-platform-android\build\commands\runAndroid\runOnAllDevices.js:94:39)
    at process._tickCallback (internal/process/next_tick.js:68:7)
    

我的node版本是10,我在windows下工作,请帮忙,谢谢。

【问题讨论】:

【参考方案1】:
    使用指令here 检查您的配置和环境设置,设置路径时要非常小心。从 IDE 的终端检查 $PATH。 检查 AVD 是否为您使用的虚拟设备选择并安装了特定的 Android 操作系统(在我的情况下,它不是,我在 AVD 的设备列表中的“操作”列中有黄色警告感叹号)。 将 Gradle 更新到至少 6.6 版

android/gradle/wrapper/gradle-wrapper.properties

    在 Ubuntu 上运行后,我必须“按下”虚拟设备上的开机按钮。

最后,我在 Windows 10 和带有 Android 30 的 Ubuntu 20.04 LTS 上启动并运行它。

【讨论】:

而且,很奇怪,下面的建议被否决了。我尝试按照建议清除数据,但不能肯定地说,它是否会导致成功。因为我必须做一些其他的实验才能成功。【参考方案2】:

我成功执行了以下步骤: 打开 android studio > AVD Manager > Actions(点击底部图标)> Select Cool Boot Now。

【讨论】:

【参考方案3】:

首先在Android Studio上启动android模拟器,然后执行react-native run-android。如果它不起作用,请转到 android studio 并执行“Build -> Clean Project”

【讨论】:

在此之后尝试在 Android Studio 中启动 AVD。 “工具 > AVD 管理器”和它们“启动 AVD”【参考方案4】:

就我而言,我必须擦除虚拟设备上的数据。 Android Studio -> AVD -> 操作 (↓) -> 擦除数据

【讨论】:

我也做同样的事情。但这不是解决方案。找到合适的解决方案了吗?? 尝试删除 .gradle 和 build 文件夹。如果它不起作用,请尝试删除虚拟设备并创建一个新的 avd。 擦除数据对我有用。我想要一个省时的解决方案。你说的解决方案也可以,但是会浪费我的时间。【参考方案5】:

我在 Android 物理设备上执行我的 react-native 代码时遇到了类似的问题。我不确定我的解决方案是否会有所帮助。

我们都知道 ADB 需要 Android 设备的授权才能与其通信。只有通过允许 USB 调试和验证计算机的 RSA 密钥指纹,我们才能让 ADB 守护进程连接到我们的手机并对其进行控制。这是一项安全功能。

我的手机已通过 USB 连接,在更改设备上的 USB 配置时,我的手机再次提示“允许 USB 调试?” Image available for reference。我在 reallow USB 调试方面得到了解决方案

【讨论】:

【参考方案6】:

我遇到了同样的问题,只检查开发者选项并在设备上通过usb启用调试

【讨论】:

【参考方案7】:

对我来说,问题最终变得非常简单。在 react-native 中工作,我从 VS CODE 中的终端“npx react-native run-android”运行以下命令。虽然模拟器从 Android Studios 启动时运行良好,但我在 VS Code 中从终端运行时收到上述错误。

解决方案:以管理员身份运行 VS Code。 (或一般的终端)

【讨论】:

【参考方案8】:

为我工作 - 磁盘上没有足够的空间,检查磁盘上是否有足够的空间(模拟器安装在哪里)。

【讨论】:

【参考方案9】:

这可能是您的机器或 AVD 空间不足或配置不匹配。

因此,请执行以下步骤来解决此问题。

验证是否为 SDK 路径和 adb 设置了环境变量。 Build -> Clean Project清理项目 Open android studio > AVD Manager > Actions (click the bottom icon) > Select Cool Boot Now 清理 AVD。

【讨论】:

【参考方案10】:

删除文件app\build\intermediates\signing_config\debug\out\signing-config.json 对我有用。

【讨论】:

以上是关于无法启动模拟器。原因:模拟器在启动前退出 en React Native when react-native run-android的主要内容,如果未能解决你的问题,请参考以下文章

随笔:ensp无法启动的一个新的原因:安装过安卓模拟器

模拟器无法启动:等待设备时出错

无法启动任何模拟器

QT5:无法部署安卓应用

无法启动模拟器,因为它已在使用中

Android Studio 出错:无法在模拟器中启动 AVD