转 ios 里如何判断当前应用的定位服务是否可用
2013-05-28 10:31
316 查看
如何在某个程序里面判定当前应用程序的定位服务是否可用,其实没有什么简单的方法。
这个[CLLocationManager locationServicesEnabled]检测的是整个iOS系统的位置服务开关,无法检测当前应用是否被关闭,只能通过CLLocationManagerDelegate的locationManager:didFailWithError:方法去检测:
参考:http://blog.csdn.net/jinglijun/article/details/8893062
另外还有一种变通的方法:不需要通过上述方式来判断用户是否为应用程序开启了定位服务,而是通过判断获取的坐标值是否为空或者为零来判断用户是否为应用程序开启了定位功能。
这个[CLLocationManager locationServicesEnabled]检测的是整个iOS系统的位置服务开关,无法检测当前应用是否被关闭,只能通过CLLocationManagerDelegate的locationManager:didFailWithError:方法去检测:
- (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]; }
参考:http://blog.csdn.net/jinglijun/article/details/8893062
另外还有一种变通的方法:不需要通过上述方式来判断用户是否为应用程序开启了定位服务,而是通过判断获取的坐标值是否为空或者为零来判断用户是否为应用程序开启了定位功能。
相关文章推荐
- ios 里如何判断当前应用的定位服务是否可用
- ios 里如何判断当前应用的定位服务是否可用
- ios 里如何判断当前应用的定位服务是否可用
- ios 里如何判断当前应用的定位服务是否可用
- ios 里如何判断当前应用的定位服务是否可用
- 转 ios 里如何判断当前应用的定位服务是否可用
- ios 判断当前应用的定位服务是否可用
- iOS 判断当前APP是否开启定位服务,未开通点击确定进入设置里进行设置
- 判断一个坐标点是否在一个无规则的多边形内 (iOS定位服务与地图应用开发:高德地图开发)
- iOS——判断当前应用是否允许定位
- IOS中如何判断当前网络状态是否可用
- 【iOS解决方案】如何判断当前网络连接状态(网络是否正常)
- iOS开发 判断用户是否开启了定位服务
- 如何判断应用是否允许开启定位
- 判断应用是否允许定位当前位置
- IOS 判断定位服务是否开启代码
- IOS--判断当前网络是否可用
- iOS如何判断应用是否开启摄像头权限
- ios 定位是否可用的判断
- iPhone中如何判断当前相机是否可用