Android中Wifi aware和Wifi P2P的区别是什么?

17

WiFi Aware和WiFi P2P技术的主要区别是什么?

使用WiFi P2P,您可以在不需要公共网络的情况下,在两个或更多附近设备之间建立连接。但是 Android 文档也说明:

Wi-Fi Aware功能使得运行Android 8.0(API 级别 26)及更高版本的设备能够直接发现并连接到彼此,而无需任何其他类型的连接。

它们之间有什么区别呢?


根据Android文档,使用Wifi Aware,您可以在服务发现阶段之间在设备之间发送数据(仅限轻量级!最大255字节)。与Wifi P2P不同的是,您必须首先执行某种身份验证(PBC、Passkey等),然后打开套接字才能在设备之间发送数据。 - bmdelacruz
@bmdelacruz,也许你可以把这个发表为一个答案? - CybeX
首先,这是正确的答案吗?为什么作者评论而不是回答?@bmdelacruz - Themelis
3个回答

12
根据Android文档,使用Wi-Fi Aware,您可以在设备间进行数据传输(仅限轻量级!最大为255字节),而此操作需在服务发现阶段完成。如果需要发送更大的数据,您可以打开设备间的连接。而使用Wi-Fi对等连接,则需要先执行某种形式的身份验证,然后才能打开套接字,在设备之间进行数据传输。
以下是我获取这些信息的Wi-Fi Aware概述的部分内容:
Wi-Fi Aware API让应用执行以下操作:
- 发现其他设备:[...] 订阅者发现发布者后,可以向其发送简短消息或与其建立网络连接。 - 创建网络连接:两个设备发现彼此后,它们可以创建双向的Wi-Fi Aware网络连接,无需访问点。
注意:消息通常用于轻量级消息传递,因为可能无法传递(或传递顺序混乱、重复传递),并且长度限制约为255字节。此外,使用Wi-Fi Aware,开发者可以在DiscoverySession类中的createNetworkSpecifierOpen()createNetworkSpecifierPassphrase()方法之间进行选择,分别打开未加密或加密连接。
对于Wi-Fi点对点连接,开发者除了使用WifiP2PManager.connect()方法外别无选择。调用它将在要连接的设备上触发一个对话框(推按钮配置),而该对话框仅在两台设备首次连接时才会出现。
顺便说一句...修改WifiP2pConfigWpsInfo是无用的;它总是使用推按钮配置选项。我在我手头的设备上进行了测试(Asus ZC520TL-Nougat、Asus ZE551ML-Marshmallow、Huawei Y5-Marshmallow和Huawei T1-KitKat)。即使wifip2pconfig.wps.setup不等于WpsInfo.PBC,PBC对话框也会出现。如果这不适用于所有设备,请随时更正我,因为这可能只是原始设备制造商的问题。
有关更多信息,请访问Wi-Fi点对点概述

1
有几种方法可以解决P2P连接限制的问题 - 例如使用P2P DNS-SD来广告PSK,以创建等效的“开放”网络。 - Costin Manolache
你从哪里得到的信息,说“修改WifiP2pConfig的WpsInfo是无用的;它总是使用Push Button配置选项”? - xuiqzy
我在我手头的设备上进行了测试(Asus W Nougat,Asus W Marshmallow,Huawei W Marshmallow和Huawei W Lollipop)。即使wifip2pconfig.wps.setup不等于WpsInfo.PBC,PBC对话框也会出现。如果这不是所有设备都适用的话,请随意纠正我,因为这可能只是OEM的事情。 - bmdelacruz
没有任何连接时,发送最多255个字节的允许频率是多少? - Sazzad Hissain Khan

5

WiFi Aware能更快地建立连接。

发现阶段更加灵活:您可以在服务公告中添加自己的信息(255字节),并与其他对等设备交换短消息(255字节),而无需建立连接。

但是,WiFi Aware中的所有连接都是一对一的。一个设备只能有非常有限的同时连接(在Pixel 2中为两个)。

相比之下,WiFi P2P更类似于自动热点:设备之间协商谁将创建WiFi网络,然后其他设备可以加入。如果您成功获得了WiFi SSID /密码,则可以手动加入网络。

我理解的是,WiFi P2P在电池方面的性能较差(至少在中心节点的情况下)。


更快的连接是指发现过程,还是与WiFi Direct(P2P)建立数据传输的真实连接比WiFi直接连接更快?如果是,您知道原因吗? - xuiqzy

4

来自https://www.wi-fi.org/knowledge-center/faq/what-is-the-relationship-between-wi-fi-aware-and-wi-fi-direct

Wi-Fi Aware是一种类似于Wi-Fi Direct的点对点连接技术。然而,Wi-Fi Direct需要一个称为组所有者的集中式协调器,而Wi-Fi Aware创建了分散的、动态的点对点连接。许多应用程序,如Miracast和直接打印机连接,与Wi-Fi Direct配合良好。Wi-Fi Aware定位为在高度移动的环境中提供点对点连接,设备以较不确定的方式加入或离开。无论是在拥挤的会议上寻找彼此的专业人士,还是陌生人在地铁上短暂地加入多人游戏,Wi-Fi Aware连接都能无缝地适应不断变化的环境和使用条件。


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