尝试在Android 4.4.2上创建一个反应原生项目,我得到了这个错误屏幕

却找不到解决的办法。我尝试重新启动packager,重新连接设备,甚至重新安装react native并开始新的项目。在6.0.0和更高版本上,它工作得很好。


当前回答

在单独的终端上,将您的设备连接到计算机并运行以下命令:

react-native start 
cd user/Library/Android/sdk/platform-tools/
./adb reverse tcp:8081 tcp:8081

应用终端:

react-native run-android 
install apk on your device from this location android/app/build/outputs/apk/app-debug.apk

其他回答

它“随机”出现了这个问题,我花了一段时间才意识到我的场景中哪里出了问题。

在我更新到React-native-cli 2.0.1后,有一条消息输出到日志中,帮助我挖掘并找到根本原因:

JS服务器无法识别,继续构建…

在研究了一些链接后,我发现了这个:

无法识别JS服务器

因为我在windows上,我运行netstat,发现我的VLC播放器也在8081端口上运行,导致了这个问题。 所以,在我的情况下,如果我启动vlc服务器之前的反应本机服务器,它不会工作。

在之前版本的react-native-cli中没有输出相同的日志消息,使其无声地失败。

TL, DR:检查与包管理器(默认为8081)相同的端口上是否有任何东西正在运行

当我第一次开始使用React Native时,我也得到了这个,使用物理设备。如果是这样的话,你需要在开始之前做一些额外的事情。你必须在React Native的“Dev Settings”中输入一些关于你的开发机器的信息。

当你看到错误时,摇动你的设备。一个对话框将弹出,最后一个选项将是“开发设置”。选择“调试服务器热和设备端口”,输入您的本地IP和使用的端口(通常是8081)。

见https://facebook.github.io/react-native/docs/running-on-device-android.html的最后一段

简单的方法!

停止服务器并结束项目构建。 打开一个“Node.js”终端。 导航到文件夹与“react-native”项目。 输入'react-native start'——手动启动react本地服务器。 转到代码编辑器终端,输入“react-native run-android”。

你可以开始了!

有人建议用下面这个

react-native运行android React-native start -reset-cache,

但在我的例子中,我只是关闭cli命令提示窗口,并使用以下命令。

npx react-native run-android

它运行得很好。

我也有同样的问题。当我通过create-react-native-app AwesomeProject创建一个react原生项目时,它在手机上的Expo应用程序中工作得很好。在那之后,我想用那个快速启动项目来开发我的项目,得到了和你一样的错误。

经过一些研究,我发现最好用react-native init AwesomeProject启动新项目(所有设置都在react native docs中)然后运行以下命令:

react-native bundle --platform android --dev false --entry-file index.android.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/src/main/res/

这应该会修复bundle的问题(——dev false没有显示警告)

你需要做的就是让app在你的虚拟/真实设备上运行:

react-native run-android

它应该能正常工作。至少对我有用。