6

如果是,我们是否还可以获得有关网络配置的其他信息?

一种有用的方法是获取当前网络的 SSID。有没有 API 可以做到这一点?

更新:我在这里发现了一个类似的问题:

iPhone SDK能否获取当前连接的Wi-Fi SSID?

4

4 回答 4

2

尝试以下方法:

#import <SystemConfiguration/CaptiveNetwork.h>

NSString *wifiName = @"Not Found";
CFArrayRef myArray = CNCopySupportedInterfaces();

if (myArray != nil) {

    CFDictionaryRef myDict = CNCopyCurrentNetworkInfo(CFArrayGetValueAtIndex(myArray, 0));

    if (myDict != nil) {
        NSDictionary *dict = (NSDictionary*)CFBridgingRelease(myDict);

        wifiName = [dict valueForKey:@"SSID"];

    }  
}

NSLog(@"wifiName:%@", wifiName);
于 2015-04-09T09:12:56.897 回答
1

无法评论,但这可能是重复的:

通过 SDK 访问 iPhone WiFi 信息

答案似乎是否定的。我已经对此进行了自己的研究,但无法找到获得 SSID 的受支持方式。

于 2010-04-14T14:01:11.937 回答
1

(保存历史等的单独答案)

看起来您可能无法确定您连接到的 WLAN 的 SSID,至少在将进入 App Store 的应用程序中。这些人使用私有 API - Preferences.framework - 来获取 WLAN 的详细信息(例如“它是否隐藏?”“名字是什么?”等)。

于 2010-04-14T13:55:58.430 回答
0

您是否查看过Reachability示例应用程序?

编辑:Reachability 应用程序演示了使用 SystemConfiguration 框架来显示您的手机是否连接到互联网,如果是,如何连接。

它还允许您区分本地 WiFi 连接和非本地 WiFi 连接 (+[Reachability reachabilityForLocalWiFi])。

关于您问题的实质,您必须查阅手机的 ARP 表。这个答案向您展示了如何做到这一点。

于 2010-04-14T12:01:26.697 回答