WiFi Direct(Android 4.0)与多个(3个以上)设备的使用方法

24

像这里所说的:Android WiFi Direct 的自动认证,我希望使用官方 Android WiFi Direct API 创建移动自组织 Wifi 网络,支持三个或更多 Android 设备连接。不同于上面链接中的问题,官方 API 自从 Android 4.0 版本就支持了。

那么有没有一种方法可以连接三个或更多设备,使得消息能够通过其他多个设备中转从而跨越发送者和接收者之间较大的距离呢?

Wifi Direct demo 只适用于配对两个设备,并且我找不到其他功能的实现方法。

谢谢!


Calvin在链接中使用了Android API。 - Erdinc Ay
4个回答

28

是否有办法通过WiFi Direct不仅将2个设备连接起来,而且还能连接三个或更多设备?

可以的。WiFi Direct规范中解释了可以创建1对多的连接。其中一个设备将充当组所有者(类似于访问点)。 在一些测试中,我已经成功地使用3个设备创建了WiFi Direct网络。

由于所有设备都必须在组所有者的范围内,因此您可以确保消息将到达第二个客户端。 第一个客户端 -> 组所有者 -> 第二个客户端


2
Fabien,你能解释一下你是如何做到这个的吗?我已经成功地连接了两个同行用于我正在开发的应用程序,但是在线上没有任何开发人员指南似乎解释了我如何连接一个额外的同行。 - Chucky
2
嗨,Chucky,考虑到这2个设备已连接,其中一个是组所有者(GO)。在您的第三个设备上,您应该执行“requestPeers”。当同行列表可用时,您可以向其中一个设备发送“connect”请求。如果失败,您应该识别GO并将连接请求发送到该特定设备。 - Fabien Demangeat
1
我需要连接多个设备(大约40个以上),你有任何示例代码参考或解决方案可以让我开始吗?我已经测试了使用两个设备,对我来说可以工作,但是无法在超过2个设备上工作。 - Bette Devine
@BetteDevine 我认为这个问题在超过5个设备上不会发生,因为我在网上读到了相关信息。 - David
1
请问有人可以提供一个连接多个设备的演示链接吗? - Aarti verma
显示剩余2条评论

6

Irfan,我也想连接多个设备并创建组。我已经完成了简单的一对一发送。你能指导我如何在wifi-direct中创建组吗?这将是非常有帮助的。 - Hardik Trivedi

1
您可以使用Java NIO(非阻塞IO)来实现。Wifi Direct中也有一个创建群组的选项,使用该群组,群组所有者将被用作服务器并可以广播消息。通过利用群组,使用多个客户端和一个服务器,所有设备都可以相互通信。

-1

问题是关于安卓的。 - xuiqzy

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接