您的位置:首页 > 移动开发 > IOS开发

OC- 获取当前设备WiFi信息

2016-09-06 15:47 1046 查看
首先,获取设备WiFi信息,需要添加系统库 <SystemConfiguration/CaptiveNetwork.h> 文件,
然后,上代码:

NSDictionary *currentWifiInfo = nil;
// 获取当前的interface 数组
CFArrayRef currentInterfaces = CNCopySupportedInterfaces();

if (!currentInterfaces) {
return nil;
}

// 类型转换,将CF对象,转为NS对象,同时将该对象的引用计数交给 ARC 管理
NSArray *interfaces = (__bridge_transferNSArray *)currentInterfaces;

if (interfaces.count >0) {
for (NSString *interfaceNamein interfaces) {
// 转换类型,不改变引用计数
CFDictionaryRef dictRef = CNCopyCurrentNetworkInfo((__bridge CFStringRef)(interfaceName));
if (dictRef) {
NSDictionary *networkInfo = (__bridge_transferNSDictionary *)dictRef;
NSString *SSID = [networkInfo objectForKey:(__bridge_transfer NSString *)kCNNetworkInfoKeySSID];
NSString *BSSID = [networkInfoobjectForKey:(__bridge_transferNSString *)kCNNetworkInfoKeyBSSID];
NSData *SSIDDATA = [networkInfoobjectForKey:(__bridge_transferNSData *)kCNNetworkInfoKeySSIDData];

currentWifiInfo = @{@"SSID":SSID,
@"BSSID":BSSID,
@"SSIDDATA":SSIDDATA};

}
}
}

NSLog(@"currentWifiInfo = %@",currentWifiInfo);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息