我正在寻找一种从我的 IOS 应用程序扫描可用 Wi-Fi 接入点(热点)的方法。
我所需要的只是设备能够连接到的当前活动热点名称的列表。 就像 Safari 在我们启动或激活它时会显示 Wi-Fi 热点列表一样。
我想在 App Store 上发布该应用程序,因此我无法使用任何类型的私有 API(对吗?)。 不幸的是 CoreWLAN.framework 不适用于 IOS(对吧?)。
那么,我的目标有可能实现吗?我可以通过某种方式收集可用的接入点名称 (SSID) 吗?
目前没有可用于获取可用 Wi-Fi 接入点列表的公共 API。当您计划在 App Store 上发布时,私有 API 不是一个选项。
您可以实现的最接近的事情是获取当前连接的 Wi-Fi 名称和详细信息,这可以通过 SystemConfiguration.framework 的
CaptiveNetwork
来实现。
+ (NSString *)currentSSID
{
NSString *ssid;
NSArray *interfaces = (__bridge_transfer id)CNCopySupportedInterfaces();
for (NSString *interfaceName in interfaces) {
NSDictionary *informations = (__bridge_transfer id)CNCopyCurrentNetworkInfo((__bridge CFStringRef)interfaceName);
if (informations[@"SSID"]) {
ssid = informations[@"SSID"];
}
}
return ssid;
}