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

Raf*_*ves 3 cllocationmanager ios

我想知道用户是否接受了该应用以检查其位置.如果"location = nil"用户未获得授权,这是真的吗?

coreLocationManager = [[CLLocationManager alloc] init];
[coreLocationManager setDistanceFilter:kCLDistanceFilterNone];
[coreLocationManager setDesiredAccuracy:kCLLocationAccuracyBest];
location = [coreLocationManager location];
[coreLocationManager startUpdatingLocation];
Run Code Online (Sandbox Code Playgroud)

mat*_*odv 12

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

+(CLAuthorizationStatus)authorizationStatus;
Run Code Online (Sandbox Code Playgroud)

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

typedef enum {
   kCLAuthorizationStatusNotDetermined = 0,
   kCLAuthorizationStatusRestricted,
   kCLAuthorizationStatusDenied,
   kCLAuthorizationStatusAuthorized
} CLAuthorizationStatus;
Run Code Online (Sandbox Code Playgroud)

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

if ([CLLocationManager authorizationStatus] == kCLAuthorizationStatusAuthorized)
{
    // Your app is authorized!
}
Run Code Online (Sandbox Code Playgroud)

希望这可以提供帮助,您可以在文档中找到更多信息.