是否可以通过互联网在两个移动设备 (iPhone) 之间连接套接字?
我正在尝试发现每个设备的IP并直接连接。我知道可以使用 Bonjour 来完成,但这只适用于本地网络。我需要通过互联网在两个设备之间建立高速连接。
Thanks.
如果你有两个 IP 并且它们都是可路由的,那么这应该是可能的。我不确定 3G 网络给出的 IP 是否可路由。如果您使用 WIFI,您获得的 IP 几乎肯定是不可路由的。假设你有一个可路由的 IP,那么这应该是可能的。
诀窍就是发现其他设备的 IP。最好的方法可能是让每个设备在应用程序启动时向 Web 服务注册其 IP,然后查询该服务以查找其他设备的 IP。
当应用程序关闭或 IP 更改时,管理“取消注册”IP 可能会有点棘手,但它应该是可行的。
ETA:
如果您有一个它们都可以连接的服务器,您应该能够使用该服务器实施解决方案(即,电话实际上不需要直接相互连接)。这将避免电话具有可路由 IP 的问题。
至于如何将套接字桥接在一起 - 您的服务器程序基本上就像老式电话总机操作员一样工作。您将在服务器软件中内置某种注册和发现协议,该协议允许手机向服务器注册,查询当前连接到服务器的其他手机的列表,指示它想要与哪部手机通话,并接受来自其他手机的连接。
一旦知道谁想与谁通话,您的服务器软件就会通过从一部手机的套接字读取数据并将数据写入另一部手机的套接字来将两者连接在一起。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)