Как я могу предложить пользователю включить службы определения местоположения, например Перейти в Настройки → Конфиденциальность → Службы определения местоположения
Следующий код больше не работает, так что мы можем сделать
[[UIApplication sharedApplication] openURL:[NSURL URLWithString: @"prefs:root=LOCATION_SERVICES"]];
Выполните следующие действия для Перейдите в Настройки → Ваше приложение → Местоположение, но я хочу получить доступ.
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:UIApplicationOpenSettingsURLString]];
У меня проблема такая же, как ниже вопросы
Приложение "Настройки" из другого приложения программно в iPhone
1 ответ
Я использую этот код, если пользователь не включает службы определения местоположения
- (void)locationManager:(CLLocationManager *)manager
didFailWithError:(NSError *)error {
if ([[error domain] isEqualToString: kCLErrorDomain] && [error code] == kCLErrorDenied) {
// The user denied your app access to location information.
UIAlertView* alert=[[UIAlertView alloc] initWithTitle:@"This app does not have access to Location" message:@"You can enable access in Settings" delegate:self cancelButtonTitle:@"OK" otherButtonTitles:@"Settings", nil];
alert.delegate = self;
[alert show];
}
NSLog(@"%@", error.description);
}
и ханле Settings
кнопка в UIAlertView
в этом коде:
- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex
{
NSLog(@"buttonIndex:%d",buttonIndex);
if (buttonIndex == 1) {
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:UIApplicationOpenSettingsURLString]];
}
}