局域网Windows应用无法连接Ubuntu上Android Studio模拟器中的应用
解决局域网设备连接Android模拟器端口的问题
核心原因
adb forward 7777 9999默认将开发机的127.0.0.1:7777转发到模拟器的9999端口,这个端口仅绑定本地回环地址,局域网内其他设备无法访问。
解决方案
1. 修改adb转发规则,绑定全网络接口
使用adb forward的指定绑定地址语法,将开发机的7777端口绑定到所有网络接口(包括局域网):
adb forward tcp:0.0.0.0:7777 tcp:9999
也可以直接绑定到开发机的局域网IP(192.168.18.14):
adb forward tcp:192.168.18.14:7777 tcp:9999
2. 验证端口绑定状态
执行以下命令确认端口是否正确对外开放:
ss -tulpn | grep 7777
输出中若显示0.0.0.0:7777或192.168.18.14:7777,说明绑定成功;若仍是127.0.0.1:7777,需重新执行上述转发命令。
3. 替代方案:模拟器主动连接(适用于Windows端为服务端场景)
如果Windows应用可作为服务端,可让模拟器主动发起连接,用adb reverse实现反向转发:
# 将模拟器的8888端口转发到开发机的7777,Windows端监听开发机7777即可 adb reverse tcp:8888 tcp:7777
4. 额外检查项
- 确认开发机局域网IP未变更,Windows端使用的IP地址正确
- 再次确认开发机防火墙已关闭:
sudo ufw disable
- 可尝试将模拟器网络模式改为桥接模式(部分模拟器支持),让模拟器直接获取局域网IP,无需端口转发
内容的提问来源于stack exchange,提问作者Ahmed
相关产品推荐
相关产品推荐

