首页 > 解决方案 > React Native:模拟器卡在“从本地主机加载:8081 ..”

问题描述

运行应用程序的 Android 手机屏幕截图

我正在开发一个 react-native 项目,我通过 USB 调试和命令“ react-native run android ”在我的 android 手机上运行它。

一切正常,但现在即使构建成功,应用程序也会卡在白屏上“从 localhost:8081 加载”。没有对任何应用程序文件进行任何更改。

我尝试运行 react-native 演示应用程序(使用 react-native init),但我仍然面临同样的问题。

我尝试过但仍然相同的问题的解决方案:

  1. rm -rf node_modules && npm install
  2. adb 反向 tcp:8081 tcp:8081
  3. 从 Android Studio 在 Android 模拟器上运行它。
  4. 使用命令npm run android

这是命令行中显示的内容:

lenovo@lenovo-Lenovo-ideapad-500S-14ISK:~/IRMSold$ react-native run-android 扫描文件夹中的符号链接 /home/lenovo/IRMSold/node_modules (6ms) JS 服务器已经在运行。在设备上构建和安装应用程序(cd android && ./gradlew installDebug)...

配置项目:app 警告:配置“编译”已过时,已替换为“实施”和“API”。它将在 2018 年底被删除。有关更多信息,请参阅: http ://d.android.com/r/tools/update-dependency-configurations.html

配置项目:react-native-google-signin 警告:配置“编译”已过时,已替换为“实施”和“API”。它将在 2018 年底被删除。有关更多信息,请参阅: http ://d.android.com/r/tools/update-dependency-configurations.html 警告:指定的 Android SDK 构建工具版本 (23.0.3)被忽略,因为它低于 Android Gradle 插件 3.1.1 的最低支持版本 (27.0.3)。将使用 Android SDK 构建工具 27.0.3。要禁止显示此警告,请从您的 build.gradle 文件中删除“buildToolsVersion '23.0.3'”,因为每个版本的 Android Gradle 插件现在都有一个默认版本的构建工具。

配置项目:react-native-vector-icons 警告:配置“编译”已过时,已替换为“实施”和“API”。它将在 2018 年底被删除。有关更多信息,请参阅: http ://d.android.com/r/tools/update-dependency-configurations.html 警告:指定的 Android SDK 构建工具版本 (26.0.1)被忽略,因为它低于 Android Gradle 插件 3.1.1 的最低支持版本 (27.0.3)。将使用 Android SDK 构建工具 27.0.3。要禁止显示此警告,请从您的 build.gradle 文件中删除“buildToolsVersion '26.0.1'”,因为每个版本的 Android Gradle 插件现在都有一个默认版本的构建工具。

任务:app:installDebug 在“Lenovo X3a40 - 6.0.1”上为 app:debug 安装 APK“app-debug.apk”:安装在 1 台设备上。

在 13 秒内构建成功 66 个可操作任务:1 个已执行,65 个最新运行 adb -s 567bf688 reverse tcp:8081 tcp:8081 在 567bf688 上启动应用程序(adb -s 567bf688 shell am start -n com.irms/com. irms.MainActivity)... 开始: Intent { cmp=com.irms/.MainActivity }

请帮助我,因为我尝试了我可以在网上找到的所有其他修复程序。

标签: androidreact-native

解决方案


就我而言,问题是由于文件句柄限制。一次,我通过以下命令刷新限制,应用程序开始运行没有任何问题。

echo 999999 | sudo tee -a /proc/sys/fs/inotify/max_user_watches && echo 999999 | sudo tee -a /proc/sys/fs/inotify/max_queued_events && echo 999999 | sudo tee -a /proc/sys/fs/inotify/max_user_instances && watchman shutdown-server

我正在使用 Ubuntu 18.04。


推荐阅读