Could not connect to development server是运行react-native到移动端一个经常出现的bug,很多情况下也是让人很迷茫;但是本人经过一整天的摸索和测试,查询了很多文档和其他人解决的一些小方法;总结如下:
首先,你要确保你的手机和电脑处在同一WiFi下,如果不在同一个网络下一定会报这个错误;而且又不容易发现
如果不是这个错误,那你就要按照报错的类型逐个排除,将错误翻译过来就是:
连接不到开发的服务器。
请按照以下的步骤来修复此问题:
- -
确保服务器在运行
- 确保你的设备或者模拟器连接着电脑,并且手机打开了USB调试模式,然后在cmd中运行adb devices来查看已经连接好的设备列表
- 确保飞行模式是关闭的
- 如果是使用真机来开发,输入 adb reverse tcp:8081 tcp:8081来检查设备
- 输入IP:8081(这个大家都会)
1,首先检查包服务器是否运行正常。
在项目根目录下打开命令行,输入react-native start或者npm start均可开启服务器,但是我们需要在PC端确认包服务器是否运行正常。从浏览器端输入网址为:http://localhost:8081/index.Android.bundle?platform=android,如果长时间转圈不显示或者一直都不显示;这个有可能是由于node的版本问题,可以使用npm下载最新的node版本,之后再运行就没有问题了。
2,检查硬件连接,使用adb devices 来看手机是否与电脑准确连接,如果成功,会出现一串字符串,设备显示为device而不是unauthoried(未授权);重新用USB将手机和电脑连接起来,在尝试一下
3, 从设备获取开发服务器
一, 使用 adb 反转
请注意这个选项只支持运行在安卓 5.0+ (API 21) 上面的设备。
使用 USB 将你的设备连接,并开启调试模式(可以看看上面如何在你的设备上面允许 USB 调试模式)。
- 运行 adb reverse tcp:8081 tcp:8081
- 你可以使用 Reload JS 和其他开发者参数,而不需要额外的配置
二,通过 Wi-Fi 来配置设备并且连接上你的开发者服务器
要做到这一点,你的电脑和你的手机必须在同一个 wifi 网络下。
- 打开震动菜单 (摇动设备)
- 前往 Dev Settings
- 前往 Debug server host for device
- 输入该设备的 IP 和 Reload JS
- 如果还没有解决那就把USB关闭重新打开,在连接一次试一下
4,摇一摇手机选择Dev Settings 输入IP:8081的。
基本上这些办法是能够解决这个问题了