You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

React Native Expo打包APK后无法连接本地Node.js服务器求助

解决Expo打包APK后无法连接本地Node.js服务器的问题

你使用电脑的局域网IP(192.168.29.1)是正确的,打包后无法连接的原因出在其他配置环节,以下是针对性的解决步骤:

  • 检查电脑防火墙设置
    电脑的防火墙(Windows Defender、Mac防火墙或第三方防火墙)可能拦截了移动设备对Node服务器3050端口的请求。需要手动添加入站规则,允许TCP协议的3050端口接收局域网内的连接请求。

  • 确认Node服务器的绑定地址
    确保你的Node.js服务器监听的是0.0.0.0而非localhost(127.0.0.1)。如果服务器只绑定localhost,仅本机能访问,局域网内的移动设备无法连接。修改服务器启动代码:

    app.listen(3050, '0.0.0.0', () => {
      console.log('服务器运行在端口3050,允许局域网访问');
    });
    
  • 验证局域网连通性
    确认电脑和移动设备确实在同一局域网:

    1. 在电脑终端执行 ping 192.168.29.38,查看是否能收到手机的响应
    2. 在手机的网络工具(如Termux)执行 ping 192.168.29.1,查看是否能收到电脑的响应
      如果ping不通,检查路由器是否开启了AP隔离功能,该功能会阻止局域网内设备互相访问,需要关闭。
  • 允许Android明文HTTP请求
    Android 9及以上系统默认禁止非HTTPS的明文网络请求,打包后的APK会因此无法发起HTTP请求。在Expo的app.json中添加配置:

    {
      "expo": {
        "android": {
          "usesCleartextTraffic": true,
          "networkSecurityConfig": {
            "domainConfigs": {
              "192.168.29.1:3050": {
                "cleartextTrafficPermitted": true
              }
            }
          }
        }
      }
    }
    

    配置完成后重新打包APK即可。

内容的提问来源于stack exchange,提问作者adithyan sivaraman

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.26 14:24:07