尝试在Android 4.4.2上创建一个反应原生项目,我得到了这个错误屏幕
却找不到解决的办法。我尝试重新启动packager,重新连接设备,甚至重新安装react native并开始新的项目。在6.0.0和更高版本上,它工作得很好。
尝试在Android 4.4.2上创建一个反应原生项目,我得到了这个错误屏幕
却找不到解决的办法。我尝试重新启动packager,重新连接设备,甚至重新安装react native并开始新的项目。在6.0.0和更高版本上,它工作得很好。
当前回答
在设置中,转到隐私>本地网络,查看请求访问的每个应用程序的列表。 我通过允许我的应用程序访问本地网络来解决这个问题。 (试图从我的mac m1上运行在同一wifi的实体iPhone设备上)。
源
其他回答
我也得到了这个错误,真的很困惑。因为不是所有的答案都有效。 就在添加adb到路径之后。
我的方法是:
react-native start
之后在您的设备中使用:
click to Reload.
在console react-native中,它将获取js bundle data。
如果这些方法都不适合你,试试下面的方法:
我发现我的<根>/android/app/build/intermediates/assets/debug文件夹是空的,通过运行cd android && ./gradlew assembleDebug没有创建那些所需的文件,这些文件后来被javascript线程在我们的react原生应用程序中使用。
我手动运行了以下命令,调试构建命令应该在理想情况下创建。
node node_modules/react-native/local-cli/cli.js bundle --platform android --dev true --reset-cache --entry-file index.android.js --bundle-output /<path to dir>/android/app/build/intermediates/assets/debug/index.android.bundle --assets-dest /<path to dir>/android/app/build/intermediates/res/merged/debug
在运行这些命令后,我发现在这个目录下有两个bundle文件<root>/android/app/build/intermediates/assets/debug
然后我再次运行cd android && ./gradlew installDebug我的应用程序重新开始工作。
将调试更多,并将更新实际上失败的内容。
在单独的终端上,将您的设备连接到计算机并运行以下命令:
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)相同的端口上是否有任何东西正在运行