CoreWLAN 或任何其他适用于 IOS 7 的公共 API

问题描述 投票:0回答:1

我正在寻找一种从我的 IOS 应用程序扫描可用 Wi-Fi 接入点(热点)的方法。

我所需要的只是设备能够连接到的当前活动热点名称的列表。 就像 Safari 在我们启动或激活它时会显示 Wi-Fi 热点列表一样。

我想在 App Store 上发布该应用程序,因此我无法使用任何类型的私有 API(对吗?)。 不幸的是 CoreWLAN.framework 不适用于 IOS(对吧?)。

那么,我的目标有可能实现吗?我可以通过某种方式收集可用的接入点名称 (SSID) 吗?

ios objective-c public corewlan
1个回答
7
投票

目前没有可用于获取可用 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;
}
© www.soinside.com 2019 - 2024. All rights reserved.