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

Flutter应用安卓真机无法连接Node.js+Express后端求助

可能的问题原因及排查方向
  • 安卓网络安全限制:安卓9(API 28+)默认禁止明文HTTP请求,若后端使用HTTP协议,物理设备会直接拦截请求,而模拟器调试模式通常会绕过此限制。检查android/app/src/main/res/xml/network_security_config.xml是否配置了允许明文访问,或直接将后端切换为HTTPS协议。

  • 网络权限未正确获取:物理设备需要明确授予网络权限,模拟器可能自动赋予。确认AndroidManifest.xml中已添加<uses-permission android:name="android.permission.INTERNET"/>,同时检查应用系统权限设置里是否开启了网络访问权限。

  • 发布版APK配置错误:调试版和发布版APK的环境配置可能不一致。比如发布版可能混淆了网络请求相关代码,或后端服务器地址配置错误(如用了本地IP而非公网地址)。检查build.gradle的发布构建配置,以及代码中服务器地址的变量是否正确指向公网后端。

  • 后端服务器访问限制:若后端服务器仅允许内网或特定IP段访问,物理设备通过移动网络或外部WiFi访问时会被防火墙/安全组拦截,而模拟器可能和后端处于同一内网环境。检查服务器安全组规则、防火墙设置,确保允许物理设备所在网络的IP访问。

  • HTTPS证书信任问题:后端使用自签名证书时,安卓物理设备默认会拒绝信任该证书,而模拟器调试模式可能跳过验证。可在网络安全配置中添加信任该自签名证书,或更换为正规CA签发的证书。

  • 网络请求库的发布版异常:使用http、dio等库时,发布版可能存在超时设置过短、代理配置错误等问题。建议在物理设备的发布版中添加日志(如通过print或日志框架),查看请求是否触发、是否抛出异常信息。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.12 14:32:09