2

我正在 Android 上创建一个移动应用程序,该应用程序需要设备在很远的距离内相互通信。当手机通过 WiFi 连接到互联网时,我可以使用 IP 地址。但是如果它是通过 3G 连接的,我除了电话号码之外什么都没有,我可以通过 SMS 进行通信,但我想使用更好的东西,比如 3G 连接。

那么问题来了,如果 WiFi 不可用,Android 设备如何通过 3G 网络直接连接到另一台设备?

注意:我想到了一个充当代理的服务器,将电话号码映射到 IP 地址,但如果我可以建立一个直接通道,只需使用电话号码作为 3G 上的 ID。

提前感谢任何可以提供任何信息的人。

4

3 回答 3

1

谷歌搜索 3G 网络是如何工作的,我发现出站和入站连接涉及 NATing(NAT Traversal)。通过 WiFi 连接时不需要这样做。因此,在 android+NAT+3G+sockets 上进行一些搜索导致了我对这个问题的回答。

Android 客户端、PC 服务器套接字不能超过 3g

https://stackoverflow.com/questions/917385/nat-traversal-with-java

于 2012-06-19T07:35:33.067 回答
0

我已经使用 Google Play Games Services 来实现这一点,iOS / Android 跨平台也是如此。

您可以根据需要使用实时或回合制 API。 https://developers.google.com/games/services/common/concepts/realtimeMultiplayer

于 2017-04-28T16:05:33.480 回答