React—Native开发之 Could not connect to development server(Android)解决方法

 

 

写在最前面:

    本来,我是有一篇博客 RN开发之BUG 总结(持续更新) 来专门总结自己在React-Native开发中遇到的各种BUG 以及决办法的。

但是,由于 Could not connect to development server是我深恶痛绝的一个超级大BUG。

为什么这么说呢?

      因为这个BUG并不容易在网上找到解决方法。网上确实有这个BUG,但是大部分都是解决IOS开发中遇到的,一

外的网站中也在讨论这个问题,好不容易找到点和我问题相似的,还并没有给出确定的解决方案,实在是让我郁

闷,且这个BUG困扰了我好久。今天就将自己的解决办法分享出来,来帮助更多的网友。


1、我们首先看一下这个大红屏错误吧。如图所示:



先来翻译:


连接不到开发的服务器。

请按照以下的步骤来修复此问题:

  • 确保包服务器在运行
  • 确保你的设备或者模拟器连接着电脑,并且手机打开了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


(1)说说我遇到的问题,开启包服务器之后,cmd中显示如下:


出现React packager ready就走不动了。

      当我看开http://localhost:8081/index.android.bundle?platform=android网址 时,没有正常显示,但是也没

显示“该网页无法访问”,只是一直在转圈圈刷新网页,就是打不开。


现在我定位了自己的问题(大哭难怪以前输入IP:8081并没有什么鸟用)


如何解决?


答:经过我的观察,包服务器中使用到了node,所以应该和node版本和配置有一定的关系。所以我就卸掉

node,重新安装了最新版本的node,之后包服务器打开,网页可以正常访问,如下所示:



2、检查硬件连接,以及使用adb devices来查看是否连接成功。

3、飞行模式关闭

4、在cmd中输入 adb reverse tcp:8081 tcp:8081,结果如下:



当我看到error:closed我就猜到,大哭原来我的问题出在这儿。怎么办呢?


个人认为解决办法如下:

  • 手机-设置-应用程序-开发-usb调试打开再关闭一次

  • 重启手机,usb调试打开再关闭一次

  • 在cmd下Try "adb kill-server" and then "adb start-server"


本人测试机为android 5.0+系统,使用第二种方法解决问题。结果如下:




5、摇一摇手机选择Dev Settings 输入IP:8081的方法就不多说了。


       至此,解决了Could not connect to development server(Android)的问题,本人的测试机为魅蓝metal,系统是

Android 5.0+的系统,所以可能和各位小伙伴的情况不太一样,大家可以参考参考。文章写得不太好,请见谅。



如果对你有帮助,记得点赞哦大笑




  • 14
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 12
    评论
React Native中,遇到Android 9.0以上版本无法进行HTTP请求的问题,可以尝试以下解决方法: 1. 添加网络安全配置文件:Android 9.0以后,Google要求所有的网络请求必须使用HTTPS,为了解决这个问题,需要在应用的res目录下创建一个XML文件,命名为`network_security_config.xml`。文件内容如下: ``` <?xml version="1.0" encoding="utf-8"?> <network-security-config> <base-config cleartextTrafficPermitted="true" /> </network-security-config> ``` 2. 在AndroidManifest.xml文件中添加网络安全配置:在`application`标签内添加以下代码: ``` <application ... android:networkSecurityConfig="@xml/network_security_config" ...> ``` 这样做将允许应用发送非加密的HTTP请求。 3. 检查资源文件路径:尽管Android称之为资源文件路径问题相对不太常见,但是有时候路径的问题可能导致HTTP请求无法正常工作。因此,请确保在代码中使用的资源文件的路径是正确的。 4. 检查网络连接权限:确保在AndroidManifest.xml文件中已经添加了网络连接的权限,代码如下: ``` <uses-permission android:name="android.permission.INTERNET" /> ``` 5. 检查网络连接状态:有时候,即使在代码中正确地设置了HTTP请求,但是如果设备没有连接到互联网,仍然无法发送或接收请求。因此,请确保设备在进行HTTP请求时连接到有效的网络。 希望以上解决方法能够帮助到你,使你能够在React Native中成功进行HTTP请求。如果问题仍然存在,请进一步检查相关代码和日志以寻找其他潜在问题。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

温柔狠角色

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值