我们可以通过不关闭应用程序并转到设置页面来再次调用位置服务警报吗?就像有些用户不知道一旦弹出窗口便是否必须选择“允许或不允许”。问题的任何解决方案。
最佳答案
如果您的要求是要提醒用户有关其位置服务状态的信息,则可以提供有关它的警报,并可以将用户导航到“设置”页面。
- (void) showLocationAlert {
if ([CLLocationManager authorizationStatus] != kCLAuthorizationStatusAuthorized) {
//Check whether Settings page is openable (iOS 5.1 not allows Settings page to be opened via openURL:)
if ([[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"prefs:root=LOCATION_SERVICES"]]) {
UIAlertView *alert = [[UIAlertView alloc]initWithTitle:@"Error" message:@"You must enable location service,Turn on location service to allow \"YourApp\" to determine your location" delegate:self cancelButtonTitle:@"Settings" otherButtonTitles:@"Cancel", nil];
[alert show];
}
else {
UIAlertView *alert = [[UIAlertView alloc]initWithTitle:@"Error" message:@"You must enable location service" delegate:self cancelButtonTitle:@"Cancel" otherButtonTitles:@"OK", nil];
[alert show];
}
}
}
- (void) alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex {
if (buttonIndex == 0) {
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"prefs:root=LOCATION_SERVICES"]];
}
}