使用TCP的模拟器连接

时间:2011-04-07 21:57:50

标签: android tcp ip emulation

又来了! 我正在尝试连接在同一台PC上作为服务器和客户端运行的两个仿真器。事情是其中一个在虚拟机中。我应该为每个仿真器使用哪些地址才能在它们之间进行连接? 我正在使用基于TCP的连接! 第一个模拟器在Windows 7上运行 Vmware中的第二个是在Xp上 网络内部的IP为192.168.71.1 真的很感激,如果你回答.Thx !!

2 个答案:

答案 0 :(得分:3)

我想你想要使用localhost地址(127.0.0.1)。将服务器设置为侦听,一旦启动并运行客户端连接,您应该很高兴。 (显然,请确保您使用的端口匹配。)

http://en.wikipedia.org/wiki/Localhost

答案 1 :(得分:3)

更多细节会有所帮助:

  • VM的IP地址是什么?
  • 是使用NAT,桥接网络还是什么?
  • 你真的需要在VM中运行第二个模拟器 - 这会使网络复杂化。

更新:1台计算机上的多个模拟器(无VM) 您可以使用/ emulator -avd从命令行启动另一个模拟器。您需要创建第二个AVD才能使其正常工作。我使用Linux,因此无法提供Windows的确切详细信息。

更新:使用Android模拟器在主机和VM之间进行通信 我相信模拟器只在127.0.0.1上侦听服务器套接字,因此远程机器无法连接 - 这对于它使用的调试套接字来说肯定是这种情况。但是,您可以使用Remote debugging with Android emulator

中讨论的类似方法设置端口转发

你使用桥接网络很好,因为NAT会阻止虚拟机获得入站连接,因此模拟器没有希望。

更新#2:端口转发 您可以使用adb forward在本地计算机和模拟器上的套接字之间设置端口转发。也许值得一看Communication between Android Emulators,似乎有一个未记录的模拟器开关-shared-net-id可能有所帮助。

希望这有帮助

Phil Lello