ios - 检查用户是否接受该应用知道他的位置

标签 ios cllocationmanager

我想知道用户是否接受该应用程序来检查他的位置。如果“location = nil”用户未被授权,这是真的吗?

coreLocationManager = [[CLLocationManager alloc] init];
[coreLocationManager setDistanceFilter:kCLDistanceFilterNone];
[coreLocationManager setDesiredAccuracy:kCLLocationAccuracyBest];
location = [coreLocationManager location];
[coreLocationManager startUpdatingLocation];

最佳答案

如果你想知道用户是否授权你的应用程序检查他的位置,你必须使用

+(CLAuthorizationStatus)authorizationStatus;

此类方法返回一个 CLAuthorizationStatus 常量,它可以采用这些值;

typedef enum {
   kCLAuthorizationStatusNotDetermined = 0,
   kCLAuthorizationStatusRestricted,
   kCLAuthorizationStatusDenied,
   kCLAuthorizationStatusAuthorized
} CLAuthorizationStatus;

最后,要检查您的应用是否已获得授权,您只需执行以下操作:

if ([CLLocationManager authorizationStatus] == kCLAuthorizationStatusAuthorized)
{
    // Your app is authorized!
}

希望这对您有所帮助,您可以在 documentation 中找到更多信息.

关于ios - 检查用户是否接受该应用知道他的位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19121545/

相关文章:

iphone - XCode:从plist读取数据到NSmutablearray

ios - 防止在设备之间共享应用程序购买中的 iOS

ios - 如何在没有 ViewControllers 的情况下使用 SwiftUI 获取当前位置?

ios - 即使在 CLLocationManager 上明确调用 stopUpdatingLocation 后,状态栏上的位置服务指示器仍然出现

ios - 使用 Passkit 库读取二维条码

ios - 手动和自动签名中的到期日期不匹配

ios - 创建地理围栏时 NSCFNumber getCString maxLength 编码错误

swift - 如何让Swift持续更新速度

ios - "Cannot convert value of type '(字符串)-> bool 值 ' to expected argument "

ios - 检查是否启用推送或启用位置 ios sdk