如何在iOS应用程序内撤销/取消/取消注册"Location Services"



是否可以在iPhone应用程序中撤销定位服务?我想将[CLLocationManager authorizationStatus]kCLAuthorizationStatusAuthorized更改为kCLAuthorizationStatusDeniedkCLAuthorizationStatusRestricted,就像我们可以对通知状态所做的那样,调用:[[UIApplication sharedApplication] unregisterForRemoteNotifications]

+[CLLocationManager authorizationStatus]是一个

只读方法。这是用户设置的内容,超出了您的应用程序的控制范围。

您应该做的是停止CLLocationManager更新,如果您已完成它。为位置管理器创建一个属性或 iVar,然后当您不再需要更新时,只需调用:

[myLocationManager stopUpdatingLocation];

您还可以在开始位置信息更新之前检查授权状态,如下所示:

if ([CLLocationManager authorizationStatus] == kCLAuthorizationStatusNotDetermined || [CLLocationManager authorizationStatus] == kCLAuthorizationStatusAuthorized) {
    // start updating location
}

最新更新