ios - 如何在 iOS 应用程序中撤销/取消/注销 "Location Services"

标签 ios iphone objective-c

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

最佳答案

+[CLLocationManagerauthorizationStatus] 是只读方法。这是用户设置的,超出了您的应用的控制范围。

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

[myLocationManager stopUpdatingLocation];

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

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

关于ios - 如何在 iOS 应用程序中撤销/取消/注销 "Location Services",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19678674/

相关文章:

ios - 如何在ios中以终止状态获取每200米的位置

ios - 在 xcode iOS 中将内容迁移到 UIScrollView

objective-c - 在编写使用 NSDictionary 将变量转换为数字的方法时遇到问题

ios - 如何从流中获取音频以通过 iPhone 的普通(非扬声器)扬声器播放?

ios - 在sqlite中是否必须使用“END TRANSACTION”

ios - 绝对应用 CGAffineTransform* 到 UIView

ios - Settings.app中的表是如何实现的?

iphone - 使用 SQLite Manager 创建索引

ios - Xcode - 如何修复 'NSUnknownKeyException',原因 : … this class is not key value coding-compliant for the key X"error?

iphone - 使用 ARC 时释放对象