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

iOS 位置权限弹出框闪现问题

2017-02-09 16:39 141 查看
当编码如下的时候,进入页面的时候可以看到UIAlertView弹出框出现一下,刚想点击的时候,他不见了,这个郁闷

CLLocationManager* _locationManager = [[CLLocationManager alloc] init];
_locationManager.desiredAccuracy = kCLLocationAccuracyHundredMeters;
if ([[UIDevice currentDevice].systemVersion floatValue] >= 8) {
//由于IOS8中定位的授权机制改变 需要进行手动授权
//获取授权认证
[_locationManager requestWhenInUseAuthorization];
}
[_locationManager startUpdatingLocation];


究其原因是在arc下用完就被释放了,为了确保用户可以点击权限,只需要将 _locationManager 设置为属性即可,如下:

@property (strong, nonatomic) CLLocationManager* locationManager;


self.locationManager = [[CLLocationManager alloc] init];
_locationManager.desiredAccuracy = kCLLocationAccuracyHundredMeters;
if ([[UIDevice currentDevice].systemVersion floatValue] >= 8) {
//由于IOS8中定位的授权机制改变 需要进行手动授权
//获取授权认证
[_locationManager requestWhenInUseAuthorization];
}
[_locationManager startUpdatingLocation];


如此再测试,完全没问题!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  定位权限