iOS 怎样获取wifi名(无法获取wifi名)(亲测有效)

文章目录

  • 1.代码实现
  • 2.iOS12后要求在开发者网站的App ID Configuration和Xcode中打开wifi开关
  • 3.ios13后要求用户授权开启定位权限,才能获取wifi名

1.代码实现

#import "ViewController.h"
#import 
#import 

@interface ViewController ()

@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view.
   NSString *wifiName =  [self getWifi];
    NSLog(@"%@",wifiName);
}

- (id)getWifi {
    NSArray *ifs = (__bridge_transfer id)CNCopySupportedInterfaces();
    id info = nil;
    for (NSString *ifnam in ifs) {
        info = (__bridge_transfer id)CNCopyCurrentNetworkInfo((__bridge CFStringRef)ifnam);
        if (info && [info count]) {
            break;
        }
    }
    NSLog(@"%@",info);
    return info[@"SSID"];
}

@end

打印结果:
2020-08-05 08:41:07.089798+0800 wifiName[573:112951] {
BSSID = “dc:fe:18:69:f:8c”;
SSID = “Linxbot_5G”;
SSIDDATA = <4c696e78 626f745f 3547>;
}
2020-08-05 08:41:07.090151+0800 wifiName[573:112951] Linxbot_5G

Linxbot_5G为手机当前连接上的wifi名

2.iOS12后要求在开发者网站的App ID Configuration和Xcode中打开wifi开关

  • 在开发者网站的Identifiers选中当前app的idenfify。
  • 在Edit your App ID Configuration中勾上Access WiFi information.点击save
  • 然后重新生成改app的Profiles(配置文件)

iOS 怎样获取wifi名(无法获取wifi名)(亲测有效)_第1张图片


3.ios13后要求用户授权开启定位权限,才能获取wifi名

ios13无法获取wifi名(SSID)(亲测有效)

你可能感兴趣的:(ios)