¿Hay alguna manera de que el botón de un UIAlertView vaya a la aplicación de configuración para la aplicación específica que lo llama?iOS botón UIAlertView para ir a Configuración de la aplicación
Gracias
¿Hay alguna manera de que el botón de un UIAlertView vaya a la aplicación de configuración para la aplicación específica que lo llama?iOS botón UIAlertView para ir a Configuración de la aplicación
Gracias
Por ejemplo:
NSURL*url=[NSURL URLWithString:@"prefs:root=WIFI"];
[[UIApplication sharedApplication] openURL:url];
Y
[font=]
About — prefs:root=General&path=About
Accessibility — prefs:root=General&path=ACCESSIBILITY
Airplane Mode On — prefs:root=AIRPLANE_MODE
Auto-Lock — prefs:root=General&path=AUTOLOCK
Brightness — prefs:root=Brightness
Bluetooth — prefs:root=General&path=Bluetooth
Date & Time — prefs:root=General&path=DATE_AND_TIME
FaceTime — prefs:root=FACETIME
General — prefs:root=General
Keyboard — prefs:root=General&path=Keyboard
iCloud — prefs:root=CASTLE
iCloud Storage & Backup — prefs:root=CASTLE&path=STORAGE_AND_BACKUP
International — prefs:root=General&path=INTERNATIONAL
Location Services — prefs:root=LOCATION_SERVICES
Music — prefs:root=MUSIC
Music Equalizer — prefs:root=MUSIC&path=EQ
Music Volume Limit — prefs:root=MUSIC&path=VolumeLimit
Network — prefs:root=General&path=Network
Nike + iPod — prefs:root=NIKE_PLUS_IPOD
Notes — prefs:root=NOTES
Notification — prefs:root=NOTIFICATIONS_ID
Phone — prefs:root=Phone
Photos — prefs:root=Photos
Profile — prefs:root=General&path=ManagedConfigurationList
Reset — prefs:root=General&path=Reset
Safari — prefs:root=Safari
Siri — prefs:root=General&path=Assistant
Sounds — prefs:root=Sounds
Software Update — prefs:root=General&path=SOFTWARE_UPDATE_LINK
Store — prefs:root=STORE
Twitter — prefs:root=TWITTER
Usage — prefs:root=General&path=USAGE
VPN — prefs:root=General&path=Network/VPN
Wallpaper — prefs:root=Wallpaper
Wi-Fi — prefs:root=WIFI`
prefs:root=INTERNET_TETHERING
En IOS5 y por encima ...
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"prefs:root=General"]];
Al parecer, esto no funciona en iOS 5.1 lo que. He estado luchando toda la mañana, y luego corrió a través de este blog
configuración de apertura Aplicaciones mediante programación sólo es posible a partir de iOS 8. Por lo tanto, utilice el siguiente código ...
if([CLLocationManager locationServicesEnabled]&&
[CLLocationManager authorizationStatus] != kCLAuthorizationStatusDenied)
{
//...Location service is enabled
}
else
{
if([[[UIDevice currentDevice] systemVersion] floatValue]<8.0)
{
UIAlertView* curr1=[[UIAlertView alloc] initWithTitle:@"This app does not have access to Location service" message:@"You can enable access in Settings->Privacy->Location->Location Services" delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil, nil];
[curr1 show];
}
else
{
UIAlertView* curr2=[[UIAlertView alloc] initWithTitle:@"This app does not have access to Location service" message:@"You can enable access in Settings->Privacy->Location->Location Services" delegate:self cancelButtonTitle:@"OK" otherButtonTitles:@"Settings", nil];
curr2.tag=121;
[curr2 show];
}
}
- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex
{
NSLog(@"buttonIndex:%d",buttonIndex);
if (alertView.tag == 121 && buttonIndex == 1)
{
//code for opening settings app in iOS 8
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:UIApplicationOpenSettingsURLString]];
}
}
¿es posible ir a la Configuración de nivel superior general, no a las opciones de configuración de la aplicación? – zonabi
No @zonabi, iOS SDK no proporcionó ninguna opción para eso. –
funciona en iOS8 + también, pero necesitamos cambiar algo
NSURL*url=[NSURL URLWithString:@"prefs:root=WIFI"];
if([[UIApplication sharedApplication] canOpenURL:url]){
[[UIApplication sharedApplication] openURL:url];
}
Estaba probando esto y me di cuenta de que solo funcionaba en ios 5. Lo estaba probando en un iPhone 3G, no en S. Sé que es un viejo jaja. ¿Hay alguna manera para iOS 4? ¿O está limitado a dispositivos que admiten multitareas con iOS 5? –
Sí, solo funcionó en iOS 5. –
¿Es esa API pública? – Undo