【发布时间】:2013-06-13 16:13:39
【问题描述】:
我尝试使用套接字从 android 模拟器向主机发送一些消息。 在主机(ubuntu)上,作为套接字客户端的android模拟器正在运行。 主机正在使用特定端口号(即 9090)进行侦听,并且 当您打开特定的 html 页面时,客户端会发送消息,该页面嵌入了 javascript 代码以通过 IP 地址和端口号发送消息。
为此,我在其他机器或主机上测试了这种方法。 当我在其他机器或主机上打开html页面发送消息(客户端)时, 主机(ubuntu)获取它们(无需响应客户端:就像 POST)。 但是,使用 android 模拟器网络浏览器,当我打开页面时,服务器端没有收到任何消息。 我想问题是模拟器端的端口可用/打开。
有没有办法在模拟器端打开或创建端口号以向主机发送消息? 或者主机和模拟器之间是否存在某种内部IP地址..? 我被这个困住了.. 任何人都可以帮助我吗?
【问题讨论】:
-
@PabloLozano - 这实际上似乎是一个不同的问题。
-
您尝试在哪个地址联系主机上运行的服务?您可能应该使用特殊的主机环回别名地址 10.0.2.2,但请注意,这仅适用于模拟器,不适用于真实设备。
-
假设主机IP地址,129.128.19.1。 (来自 ifconfig)。所以,我在模拟器浏览器(客户端)中将这个 IP 地址用于 html 页面。如何使用主机环回别名地址?什么端口号?实际上,如果我在 adb shell 上使用“netstat”检查 ips 和端口后使用套接字服务器的端口号之一,主机中的套接字服务器由于“BindException:地址已在使用”而无法工作。我不太了解网络连接或模拟器.. :( 你能再详细一点吗?