iOS设备之间和支持Wi-Fi Direct的设备之间是否可以建立Wi-Fi Direct连接?

29

在iOS设备之间以及在启用Wi-Fi Direct的设备之间是否可以建立Wi-Fi Direct连接?

目标是在没有控制器(WAPs)的情况下,使iOS设备和其他设备(不一定是其他iOS设备。可以是Android、Mac、PC等)之间进行通信。


2
一个WiFi直连设备具有向后兼容机制,以简化与老旧的非WiFi直连设备的连接。它可以自动创建一个临时网络,其他支持临时网络的WiFi设备可以加入,就像它们加入任何其他临时网络一样。因此,问题变成了两个问题,需要有比我更熟悉iOS WiFi的人回答:1)iOS设备能否加入一个临时无线网络?2)iOS设备在临时网络上可以使用哪些网络服务? - Julian Higginson
你找到解决方案了吗? - testing
3个回答

21

iOS设备可以连接到一个Ad-hoc网络,连接后将具备完整的无线网络功能。但设备本身不能创建Ad-hoc网络,这是不允许/不可能的。

一种替代方案是使用GameKit/Game Center API,它使用蓝牙在iOS设备之间创建网络。这显然包括了蓝牙与WiFi相比更有限的范围以及Apple SDK的限制。

有关iOS 6中Game Center的更多信息,请参见此处:http://developer.apple.com/library/ios/#documentation/NetworkingInternet/Conceptual/GameKit_Guide/Introduction/Introduction.html#//apple_ref/doc/uid/TP40008304


1
截至iOS6,使用iOS设备连接Ad-Hoc网络是不可能的(至少在大多数情况下)。来源:https://discussions.apple.com/thread/4327536?start=0&tstart=0 如果有人知道这背后的原因,请告诉我。 - Groot

6
我最近在研究这个问题,从我的调查中得知(请参阅Daniel Camps-Mur的“使用WiFi Direct进行设备间通信:概述和实验”),WiFi Direct不会创建adhoc网络。它实际上是创建了一个WiFi基础架构网络,其中一方扮演AP(软AP)的角色。一旦建立了这个网络,它的工作方式就像一个普通的WiFi网络。我们对此是否认同?
鉴于这一事实,苹果iPhone应该能够连接到已经设置为AP的WiFi Direct设备。虽然我没有检查过。
话虽如此,如何让三星Galaxy S3或S4等Android手机充当AP呢?据我所知,设置中没有任何内容。如果您连接两个这样的设备,其中之一将扮演AP的角色。现在,iPhone将检测到已建立的网络,但在尝试连接时,将被要求输入WPA密码。祝你好运找到它!因为你无法从手机中获取它。我在三星Galaxy中读到过一个名为WPA_Supplicant.conf的文件中有WPA密钥,但我没有在那里看到它。
我相信,如果您能找到WPA密码,您可以轻松地让iPhone连接。

1
我可以确认,如果已经以组的形式初始化了wifi-direct网络,iOS设备可以连接到该网络。我通过使用我的Linux机器创建wifi直连组来尝试过这一点。这将自动创建一个可见的wifi热点,其他设备,如iPhone、iMac等,都能够连接。 - chris LB
1
你能分享一些实现 iOS Wi-Fi Direct 的例子吗?我也在寻找这方面的资料,但还没有找到... - FormigaNinja
连接到支持WiFi Direct的设备或自己创建一个WiFi Direct组,其他不支持WiFi Direct的设备可以加入后,您就可以获取WiFi名称和密码。请参见:https://developer.android.com/training/connect-devices-wirelessly/wifi-direct#create-group 和 https://developer.android.com/reference/android/net/wifi/p2p/WifiP2pManager#requestGroupInfo(android.net.wifi.p2p.WifiP2pManager.Channel,%20android.net.wifi.p2p.WifiP2pManager.GroupInfoListener) - xuiqzy

3

iOS 设备不支持 Wi-Fi Direct 功能,它们不具备 WFD(Wi-Fi Direct)组创建或角色协商(P2P 组所有者或组客户端)支持。 在正常的 WFD 连接中,两个设备中的一个扮演组所有者(Soft-AP),允许另一个设备作为组客户端连接。

iOS 支持热点功能,通常在“设置”中称为“个人热点”选项。它可用于 iOS 和非 iOS 设备之间的通信。例如,应用程序 ShareIt 使用类似的方式将 iOS 连接到非 iOS 设备,通过创建临时热点并在非 iOS 设备上提示 iOS 用户去到 Wi-Fi 屏幕并手动连接。当没有公共 Wi-Fi 网络存在时,通常建议使用这种方法。


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