android - 直接连接2个或更多安卓客户端

标签 android networking p2p wifi-direct

我想通过 p2p 连接连接 2 个或更多 Android 设备。据我了解,我可以在一个 wifi 网络下使用 Wi-Fi Direct https://developer.android.com/guide/topics/connectivity/wifip2p.html

但我想连接位于不同地方但可能使用一个 IP(vpn 或其他)的 Android 客户端。我该怎么做?

这是我的算法

Client_1 register its name and current IP on Server
Client_2 register its name and current IP on Server
Client_1 request registred IP from Server by Client_2 name
Client_2 request registred IP from Server by Client_1 name
Client_1 send message directly to Client_2 IP

如果 Client_1 和 Client_2 具有相同的 IP,则此算法将不起作用。或者如果客户端位于 NAT 之后。

是否有现成的库以这种方式连接 2 个或更多 Android 设备?

最佳答案

您可以使用 Fixed Ip Simcards如果您想为个人目的进行设置。另一种选择是将你的 android 手机本地私有(private) ip 转换为公共(public) ip,这可以通过 Update No-IP 完成。应用程序,此应用程序将为您提供一个直接链接,以与您拥有的公共(public) IP 进行通信。

希望我的回答对您有所帮助。

关于android - 直接连接2个或更多安卓客户端,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38804485/

相关文章:

c++ - 建立SSL连接并发送GET信息

java - HttpsURLConnection 不适用于 Android API 19(但适用于 API 22 至 29)

unity3d - 游戏架构 P2P 加入游戏中期

java - 发送消息而不使用端口转发

java - 为什么Java中返回false?

javascript - 使用 JavaScript XMLHttpRequest 发送凭据不起作用

android - ListView 中的重叠行

android - 设备旋转后未设置 EditText

networking - 限制 Docker 仅从特定 IP 地址公开端口

c# - 如何获取本地网络上运行我的程序的主机的 IP 地址