昨天把Xcode升级到11.0后, 自己的app就不能获取wifi ssid了。经过一翻查找,原来是新版本的ios因为担心获取wifi信息而泄漏了用户地理位置的隐私。所以直接获取ssid就失败了。
解决方法:增加一个获取地理位置权限,这样就可以了。
贴出swift代码:
import CoreLocation//导入位置包
CLLocationManagerDelegate//在vc里增加一个地理位置管理器代理
var locationManager:CLLocationManager?//定义一个地理管理器
//在viewDidLoad里输入代码
self.locationManager = CLLocationManager()
self.locationManager?.delegate = self
self.locationManager?.desiredAccuracy = kCLLocationAccuracyBest
self.locationManager?.distanceFilter = 1000.0
self.locationManager?.requestWhenInUseAuthorization()
self.locationManager?.requestAlwaysAuthorization()
self.locationManager?.startUpdatingLocation()
print("开始定位!")
还没有完,还得在info.list里面增加两个键
名字String随便写就行了。
然后再次运行app,选择允许地理位置就可以正确返回SSID了。