前言
在新电脑上重新搭建了ReactNative的开发环境后,发现项目启动正常没有明显的报错,但是手机端一直不能正常加载RN的项目,排查花费了很久的时间才解决,特记录下来方便有同样问题的人不会再在浪费时间在这个问题上。
问题
创建项目后,启动项目,从启动日志上来看,没有特别的错误,正常启动了。
手机上启动的app却显示服务器没有启动成功。
解决办法
设置IP地址和端口
确认手机和电脑在同一个网段后,摇一摇设置电脑的IP地址和服务区端口[默认8081]
如果重新Reload报错,提示HTTP 403错误,请看下一种方式。
关闭防火墙
怀疑是防火墙问题,关闭防火墙,然后重启react-native服务器。
重启服务器后如果项目仍然不能访问,报HTTP 403错误,请看下一级条解决方案。
重新设置服务器端口
关闭防火墙后仍然不能访问,我们就可以怀疑8081端口被其它程序占用从而无法使用。
首先先启动项目,此时服务器的端口号仍然是8081。
react-native run-android
然后重新设置app上的端口号为9080。
使用 新的端口9080来启动服务器。
react-native start --port 9080
重新Reload,就可以看到正常界面了。