使用Capacitor运行Android时Ionic应用无法连接服务器报错
解决Ionic Capacitor运行Android时无法连接开发服务器的问题
我来帮你搞定这个问题,我之前也碰到过类似的情况,核心原因是Android模拟器里的localhost指向的是模拟器自身,而不是你的开发电脑,所以它找不到你电脑上运行的8100端口服务器。下面是具体的解决步骤:
步骤1:获取你的电脑局域网IP地址
首先得找到你的电脑在当前局域网内的IPv4地址:
- Windows系统:打开命令提示符,输入
ipconfig,找到“无线局域网适配器WLAN”或“以太网适配器以太网”下的IPv4地址(比如192.168.1.105) - Mac/Linux系统:打开终端,输入
ifconfig或ip addr,找到对应网络接口的inet地址
步骤2:修改Capacitor配置文件
打开你的capacitor.config.json,把server部分的url改成你的电脑IP加端口,同时保留cleartext: true(因为HTTP连接需要这个配置允许明文传输):
"server": { "url": "http://192.168.1.105:8100", // 替换成你的实际IP "cleartext": true }
步骤3:重新同步并启动livereload模式
先关闭之前运行的ionic serve,然后执行以下命令:
# 同步配置到Android项目 ionic capacitor sync android # 启动带livereload的Android运行,--external让服务器监听所有网络接口 ionic capacitor run android -l --external
额外备选方案(针对Android Studio模拟器)
如果你用的是Android Studio自带的模拟器,也可以直接用模拟器的特殊IP10.0.2.2(这个地址默认指向宿主电脑),修改url为:
"server": { "url": "http://10.0.2.2:8100", "cleartext": true }
然后直接运行ionic capacitor run android -l即可,不用加--external也能正常连接。
最后检查点
- 确保你的电脑和Android设备/模拟器在同一个局域网(比如连同一个WiFi)
- 检查电脑防火墙是否阻止了8100端口的入站连接,如果有的话,添加允许该端口的规则
内容的提问来源于stack exchange,提问作者Praful Kumar
相关产品推荐
相关产品推荐

