我的开发机器同时连接到两个不同的网络。一个是通过以太网(eth0),另一个是WiFi(en1)。在这种情况下,Android模拟器似乎总是想要访问eth0上的网络。从命令行启动模拟器时,是否有一个选项可以告诉它在开发机器上使用特定的网络接口(在我的情况下为en1)?
看起来这应该可以通过args传递到 -qemu标志。但是,使用此标志时,将无法启动当前版本的模拟器。
答案 0 :(得分:6)
如果您只与特定地址或子网通信,则可以使用 route add 命令在主机上设置适当的路由。对于Windows和Linux,语法略有不同:
<强>的Linux 强>
route add -net target-ip netmask 255.255.255.0 metric 1 gw en1
<强>窗强>
路由添加 target-ip 掩码255.255.255.0 en1-gw-address metric 1 -p
您可能希望根据需要调整网络掩码值(<)。
答案 1 :(得分:1)
恕我直言,这是不可能的,因为模拟器使用虚拟路由器而不是开发PC的物理网络接口
仔细看看这个链接 - 有一些关于那个的详细信息 http://developer.android.com/guide/developing/devices/emulator.html#emulatornetworking