2012-02-01 12 views

Respuesta

86

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 
+0

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? –

+1

Sí, solo funcionó en iOS 5. –

+0

¿Es esa API pública? – Undo

6

En IOS5 y por encima ...

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"prefs:root=General"]]; 
+0

habría manzana aprobar esta forma de abrir los ajustes aplicación? – Lukas

+1

Ya no funciona :( – Yoga

+0

Funciona bien, pero debe configurar sus tipos de URL para abrir las preferencias: http://i.stack.imgur.com/Nq6qQ.png –

26

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]]; 
} 
} 
+0

¿es posible ir a la Configuración de nivel superior general, no a las opciones de configuración de la aplicación? – zonabi

+1

No @zonabi, iOS SDK no proporcionó ninguna opción para eso. –

1

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]; 
} 
Cuestiones relacionadas