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

ios 里如何判断当前应用的定位服务是否可用

2015-09-28 14:00 656 查看
如何在某个程序里面判定当前应用程序的定位服务是否可用,其实没有什么简单的方法。

这个[CLLocationManager locationServicesEnabled]检测的是整个iOS系统的位置服务开关,无法检测当前应用是否被关闭,只能通过CLLocationManagerDelegate的locationManager:didFailWithError:方法去检测:

[html] view
plaincopy

- (void)locationManager: (CLLocationManager *)manager

didFailWithError: (NSError *)error {

NSString *errorString;

[manager stopUpdatingLocation];

NSLog(@"Error: %@",[error localizedDescription]);

switch([error code]) {

case kCLErrorDenied:

//Access denied by user

errorString = @"Access to Location Services denied by user";

//Do something...

break;

case kCLErrorLocationUnknown:

//Probably temporary...

errorString = @"Location data unavailable";

//Do something else...

break;

default:

errorString = @"An unknown error has occurred";

break;

}

}

UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Error" message:errorString delegate:self cancelButtonTitle:@"Ok" otherButtonTitles:nil, nil];

[alert show];

[alert release];

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: