现在的位置: 首页 > 综合 > 正文

iOS中如何查询当前网络信息

2018年02月23日 ⁄ 综合 ⁄ 共 683字 ⁄ 字号 评论关闭

 iOS中目前没有提供公开的API用于获得当前所有可用的wifi信号,如果你用了私有的API,那么你的应用将被APP Store拒绝。
但iOS提供了查询当前连接的网络信息的API, CNCopyCurrentNetworkInfo
这个API位于SystemConfiguration.framework里面,使用时需要增加.h和包含库文件

#import <SystemConfiguration/CaptiveNetwork.h>
- (id)fetchSSIDInfo
{
    NSArray *ifs = (id)CNCopySupportedInterfaces();
    NSLog(@"%s: Supported interfaces: %@", __func__, ifs);
    id info = nil;
    for (NSString *ifnam in ifs) {
        info = (id)CNCopyCurrentNetworkInfo((CFStringRef)ifnam);
        if (info && [info count]) {
            break;
        }
        [info release];
    }
    [ifs release];
    return [info autorelease];
}

下面是调用的例子:
 NSDictionary *ifs = [self fetchSSIDInfo];
 NSLog(@"ifs:%@",ifs);
 NSString *ssid = [[ifs objectForKey:@"SSID"] lowercaseString];
 NSLog(@"ssid:%@",ssid);

抱歉!评论已关闭.