如何从UTM macOS虚拟机内连接主机端的Android模拟器?
虚拟机内Android Studio连接主机端Android Emulator的简便方案
方案1:UTM端口转发快速映射
UTM自带端口转发功能,直接把主机的ADB端口映射到虚拟机,操作步骤:
- 打开UTM,选中你的macOS虚拟机,点击右上角「编辑」按钮
- 切换到「网络」标签页,在「端口转发」区域点击「+」新增规则:
- 主机端口:选择一个未被占用的端口(比如
5556,若主机模拟器已占用5555) - 虚拟机端口:填写
5555 - 目标IP:主机本地IP,可在主机终端执行
ipconfig getifaddr en0获取
- 主机端口:选择一个未被占用的端口(比如
- 保存配置后重启虚拟机,在虚拟机终端执行
adb connect localhost:5556(端口需与你设置的主机端口一致) - 执行
adb devices确认设备是否连接成功
方案2:共享网络模式下直接访问主机回环
如果虚拟机使用UTM默认的「共享网络」模式,可通过固定地址访问主机服务:
- 在主机终端执行
adb devices,记下模拟器对应的端口(比如emulator-5555中的5555) - 在虚拟机终端执行
adb connect 10.0.2.2:5555,替换为你实际的模拟器端口 - 执行
adb devices检查连接状态
方案3:修正桥接模式重新配对
之前桥接模式失败大概率是配置细节问题,重新尝试以下步骤:
- 将UTM虚拟机的网络模式改为「桥接」,选择主机当前使用的Wi-Fi或以太网接口
- 在主机终端执行
adb tcpip 5555,开启模拟器的TCP/IP调试模式 - 在虚拟机内获取主机的局域网IP(需与虚拟机处于同网段),执行
adb connect [主机局域网IP]:5555 - 也可使用Android Studio的「设备配对」功能:在主机模拟器的「开发者选项」中开启「无线调试」,获取配对码、IP和端口,然后在虚拟机的Android Studio中点击「设备配对」,输入对应信息完成连接
关于SSH反向代理方案
你设想的SSH反向代理确实可行,但上面几种方案无需额外配置SSH服务,步骤更直接简洁,更适合快速解决问题。
内容的提问来源于stack exchange,提问作者Poperton
相关产品推荐
相关产品推荐

