无法使用本地网络上的 expo 客户端连接到 expo xde
Posted
技术标签:
【中文标题】无法使用本地网络上的 expo 客户端连接到 expo xde【英文标题】:Unable to connect to expo xde using expo client on local network 【发布时间】:2018-08-15 12:54:25 【问题描述】:我需要有关 expo xde 的帮助。 创建项目后,当我扫描二维码时,出现以下错误:
there was a problem loading the experience. It looks like you may be using a LAN url.
Make sure your device is on same network as server or try using a tunnel
exp://*.*.*.*:19000
Error Code: NETWORK_ERROR
Code: -1004
我的移动设备与我的笔记本电脑在同一网络上。我正在使用:
OS: window 10
Node Version: 8.9.4
NPM Version: 4.6.1
它适用于隧道连接,但速度有点慢。
【问题讨论】:
【参考方案1】:此错误表示移动设备无法连接到笔记本电脑上运行的开发服务器。
可能的原因包括:
您的移动设备和笔记本电脑未连接到同一个 LAN(局域网)。 网络/路由器不允许设备相互连接。 您的笔记本电脑的防火墙阻止了与开发服务器端口(在本例中为端口 19000)的连接。 您的笔记本电脑有多个网络接口,并且 LAN URL 指向的不是移动设备可以连接的网络接口。要解决此问题,您可以:
使用速度较慢的隧道 URL,但即使设备无法通过 LAN 连接也能正常工作。 更改防火墙设置/使用其他网络。 将您的笔记本电脑连接到您的移动热点。 如果您有多个网络接口并且 XDE 显示错误的 IP 地址,您可以使用 Expo CLI 并使用EXPO_PACKAGER_HOSTNAME
环境变量设置正确的 IP。 (在 Windows 上)您也可以adjust the priority of your network adapters。
(仅限 android)安装 Android 开发者工具,通过 USB 将您的 Android 设备插入您的笔记本电脑并确保启用USB debugging。 Expo 开发者工具会自动运行adb reverse
,这使得设备能够使用localhost
URL 通过USB 进行连接。
【讨论】:
感谢@fson 我的笔记本电脑上的两个网络之间存在适配器优先级问题。通过以下链接上的命令解决了这个问题:answers.microsoft.com/en-us/windows/forum/windows_10-networking/… 感谢您告知我们您是如何解决问题的。我已经更新了我的答案以包括这个案例。以上是关于无法使用本地网络上的 expo 客户端连接到 expo xde的主要内容,如果未能解决你的问题,请参考以下文章
Expo react-native 将无法连接到 socketio(Android 和 iOS)
无法从连接到 Azure *** 的本地计算机(在家庭网络上)访问专用 AKS 群集