允许iPhone中的位置服务

时间:2012-12-20 12:06:27

标签: iphone objective-c ios xcode cllocationmanager

我正在创建一个我希望用户所在位置的应用。我正在使用此代码 -

locationManager = [[CLLocationManager alloc] init];
    locationManager.delegate = self; 

如果用户不允许有位置,那么下次当用户打开应用程序时,我会使用此代码来允许用户的位置 -

 if([CLLocationManager locationServicesEnabled] && 
       [CLLocationManager authorizationStatus] != kCLAuthorizationStatusDenied)
    {
        NSLog(@"enable");
    }
    else {
        NSLog(@"disable");
        [[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"prefs:root=LOCATION_SERVICES"]];
    }  

但这在iOS SDK 5.1中无效。所以我希望每当应用程序进入前台时,如果位置服务被禁用,那么如何弹出允许位置服务。

1 个答案:

答案 0 :(得分:2)

设置应用程序网址方案不再可用,您只需向用户显示UIAlertView或以UIViewController模式提供,告知用户为您的应用启用位置服务。

你不能真正强制允许位置对话框,它只是第一次弹出。