Ios 检查用户是否接受应用程序知道其位置

Ios 检查用户是否接受应用程序知道其位置,ios,cllocationmanager,Ios,Cllocationmanager,我想知道用户是否接受该应用程序来检查他的位置。如果“location=nil”,用户是否未经授权 coreLocationManager = [[CLLocationManager alloc] init]; [coreLocationManager setDistanceFilter:kCLDistanceFilterNone]; [coreLocationManager setDesiredAccuracy:kCLLocationAccuracyBest]; location = [core

我想知道用户是否接受该应用程序来检查他的位置。如果“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!
}

希望这能有所帮助,您可以在中找到更多信息。

您可以使用
授权状态
方法进行此操作

您可以使用:

if([CLLocationManager locationServicesEnabled] && 
   [CLLocationManager authorizationStatus] == kCLAuthorizationStatusAuthorized)
{
  // Do your code
}
locationServicesEnabled
用于检查设备上是否启用了位置服务

参考文献

授权状态

返回应用程序使用位置的授权状态 服务。
+(授权状态)授权状态

返回值

指示应用程序是否被授权使用的值 定位服务。讨论

给定应用程序的授权状态由 这一体系由多个因素决定。申请必须 用户明确授权使用定位服务,并且 当前必须为系统启用位置服务本身。 用户授权请求将在 应用程序首先尝试使用位置服务。可用性

Available in iOS 4.2 and later.
在CLLocationManager.h中声明


你有没有尝试过搜索苹果的文档和/或亲自尝试去发现?