是否可以在iPhone应用程序中撤销定位服务?我想将[CLLocationManager authorizationStatus]
从kCLAuthorizationStatusAuthorized
更改为kCLAuthorizationStatusDenied
或kCLAuthorizationStatusRestricted
,就像我们可以对通知状态所做的那样,调用:[[UIApplication sharedApplication] unregisterForRemoteNotifications]
。
+[CLLocationManager authorizationStatus]
是一个只读方法。这是用户设置的内容,超出了您的应用程序的控制范围。
您应该做的是停止CLLocationManager
更新,如果您已完成它。为位置管理器创建一个属性或 iVar,然后当您不再需要更新时,只需调用:
[myLocationManager stopUpdatingLocation];
您还可以在开始位置信息更新之前检查授权状态,如下所示:
if ([CLLocationManager authorizationStatus] == kCLAuthorizationStatusNotDetermined || [CLLocationManager authorizationStatus] == kCLAuthorizationStatusAuthorized) {
// start updating location
}