4

1)。我想在 iphone 中以编程方式获取所有 wi-fi SSID 列表。

我尝试以下代码,但它只提供连接的 SSID 详细信息。

NSArray *ifs = (id)CNCopySupportedInterfaces();
NSLog(@"%s: Supported interfaces: %@", __func__, ifs);
id info = nil;
for (NSString *ifnam in ifs) {
    info = (id)CNCopyCurrentNetworkInfo((CFStringRef)ifnam);
    NSLog(@"%s: %@ => %@", __func__, ifnam, info);
    if (info && [info count]) {
        break;
    }
    [info release];
}

2)。另一个问题是,当我的 wi-fi 关闭时,我如何确定我是否在 wi-fi 范围内。当 wi-fi 关闭时,是否可以识别我在 wi-fi 范围内?

4

1 回答 1

1

1) 您只能使用示例中已经使用的CaptiveNetwork 框架获取有关当前网络的详细信息,例如 SSID 或 BSSID 。除了用户当前连接的网络之外,Apple 不允许开发人员寻找其他网络。

2) 根据Reachability页面,您可以使用该库检查用户当前是否通过 3G 或 WiFi 连接。当 Wi-Fi 设置为关闭时,您无法知道自己是否在范围内。

于 2016-01-23T01:31:59.650 回答