android - 两个移动设备之间直接通信

标签 android mobile nat hole-punching

我最感兴趣的是针对移动设备的通用答案,但也可以接受特定于 Android 的答案。

给定 2 个移动设备,我如何才能在它们之间建立连接。我是移动开发新手,不太清楚移动设备后面是什么NAT。是否可以进行某种“打洞”(使用外部服务器来帮助建立连接)将它们连接在一起?

我看过这个问题,但对我帮助不大,我仍然不知道如何获取 IP 和/或穿越 NAT。 Android - communicating between two devices

最佳答案

如果您想使用通用无线模块,如 GSM、UMTS、LTE,您需要提供独立的硬件来实现所需的协议(protocol)。对于 GSM,您可以查看 OpenBTS http://openbts.org/这是免费软件。

作为其他通信可能性,您可以使用 Wi-Fi 点对点 http://developer.android.com/guide/topics/connectivity/wifip2p.html用于建立 wifi 连接。

通信能力取决于芯片的规范,并非所有 Wi-Fi 都支持这种连接。另一方面,您还可以建立蓝牙连接。

关于android - 两个移动设备之间直接通信,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18433033/

相关文章:

html - 创建 HTML 选项卡,每个选项卡都是浏览器宽度的一部分

javascript - 在计算机上打开链接的新选项卡,但在移动设备上则不打开

python - 如何在转发之前进行深度数据包检查

network-programming - nat遍历: UPnP/IGD vs NAT-PMP

java - 线程在android中是如何工作的

android - 如何绘制局部位图圆弧?就像一个圆形进度轮,但带有越来越多显示的位图。

android - 华为 EMUI 4.0+ 上的电池优化(唤醒锁)

ios - 德尔福 TWebBrowser 错误

c - libiptc : adding nat rule with mark based match?

android - 从 Android Studio 启动应用程序时如何选择设备