如何修复 Expo / React Native 中的“连接失败”错误?

Jel*_*eem 5 connection tcp windows-firewall react-native expo

当我运行我的 expo/react-native 项目并想通过 expo go 应用程序在我的 Android 手机上运行它时,它给了我一个连接错误:

“未捕获错误:java.net.SocketTimeoutException:10000ms后无法从/192.168.2.9(端口54394)连接到/192.168.2.18(端口19000)”

错误图像

  • 视窗 10
  • 节点 v16.18.1
  • 世博会 46.0.9
  • 反应本机 0.69.6

在多个资源的帮助下,我尝试了以下方法,但没有任何效果:

  • 确保手机和笔记本电脑位于同一网络
  • 在Windows防火墙中添加入站规则以允许端口19000
  • 禁用Windows防火墙
  • 将网络配置文件更改为专用。
  • 将 REACT_NATIVE_PACKAGER_HOSTNAME 设置为 ipv4 地址
  • 运行expo start --tunnel,这有效。但这不是最好的解决方案,因为它会减慢一切
  • 通过 USB 将手机连接到笔记本电脑。开发者模式已开启,已启用 USB 调试和网络共享。
  • 跑步sudo ufw allow 19000/tcp
  • 输入“10”作为 Internet 协议版本 4 的接口指标
  • 删除 .expo 以清除缓存(?)
  • 我也有一台 Mac,如果我在那里运行它,它就可以工作并且可以连接到它/打开应用程序就好了。

小智 1

  1. 如果您使用蜂窝网络并通过同一移动热点连接笔记本电脑,请确保您的笔记本电脑上的连接设置为公共。
  2. 如果您的笔记本电脑和手机已连接到 Wi-Fi,则该连接必须是私密的。