iOS 应用内跳转到设置页

直接点击跳转到系统设置界面, 设置通知定位等等

在操作之前, 你需要info中设置 URLTypes, 如下图所示 
演示图

直接通过 root= *  什么来配置
NSArray *dataArray = @[  
@{@"系统设置":@"prefs:root=INTERNET_TETHERING"},  
@{@"WIFI设置":@"prefs:root=WIFI"},  
@{@"蓝牙设置":@"prefs:root=Bluetooth"},  
@{@"系统通知":@"prefs:root=NOTIFICATIONS_ID"},  
@{@"通用设置":@"prefs:root=General"},  
@{@"显示设置":@"prefs:root=DISPLAY&BRIGHTNESS"},  
@{@"壁纸设置":@"prefs:root=Wallpaper"},  
@{@"声音设置":@"prefs:root=Sounds"},  
@{@"隐私设置":@"prefs:root=privacy"},  
@{@"APP Store":@"prefs:root=STORE"},  
@{@"Notes":@"prefs:root=NOTES"},  
@{@"Safari":@"prefs:root=Safari"},  
@{@"Music":@"prefs:root=MUSIC"},  
@{@"photo":@"prefs:root=Photos"}  
];


如果要跳转本应用的设置界面中,使用prefs:root=boundleId的方式,bundled是应用的bundled

像这样, 我直接调到本应用的通知设置界面

{@"应用通知":@"prefs:root=NOTIFICATIONS_ID&path=boundleId"}

通过添加path路径的方式进行

NSArray *dataArray0 = @[  

@{@"关于本机":@"prefs:root=General&path=About"},  

@{@"软件升级":@"prefs:root=General&path=SOFTWARE_UPDATE_LINK"},  

@{@"日期时间":@"prefs:root=General&path=DATE_AND_TIME"},  

@{@"Accessibility":@"prefs:root=General&path=ACCESSIBILITY"},  

@{@"键盘设置":@"prefs:root=General&path=Keyboard"},  

@{@"VPN":@"prefs:root=General&path=VPN"},  

@{@"壁纸设置":@"prefs:root=Wallpaper"},  

@{@"声音设置":@"prefs:root=Sounds"},  

@{@"隐私设置":@"prefs:root=privacy"},  

@{@"APP Store":@"prefs:root=STORE"},  

@{@"还原设置":@"prefs:root=General&path=Reset"}  

];

之后使用openURL方法

NSURL *url = [NSURL URLWithString:[dataArray0[11] objectForKey:@"应用通知"]];  

if ([UIDevice currentDevice].systemVersion.floatValue <= 10.0) {  

[[UIApplication sharedApplication] openURL:url];  

}else{  

// iOS10 之后, 比较特殊, 只能跳转到设置界面 , UIApplicationOpenSettingsURLString这个只支持iOS8之后.  

NSURL *url = [NSURL URLWithString:UIApplicationOpenSettingsURLString];  

[[UIApplication sharedApplication] openURL:url options:@{} completionHandler:^(BOOL success) {  

// 还可以跳过success这个bool值进行更加精确的判断.  

NSLog(@"跳转成功回调");  

}];  

}


更多参数配置, 可以在应用中加入更多的设置需求.

prefs:root=General&path=About

prefs:root=General&path=ACCESSIBILITY

prefs:root=AIRPLANE_MODE

prefs:root=General&path=AUTOLOCK

prefs:root=General&path=USAGE/CELLULAR_USAGE

prefs:root=Brightness

prefs:root=General&path=Bluetooth

prefs:root=General&path=DATE_AND_TIME

prefs:root=FACETIME

prefs:root=General

prefs:root=General&path=Keyboard

prefs:root=CASTLE

prefs:root=CASTLE&path=STORAGE_AND_BACKUP

prefs:root=General&path=INTERNATIONAL

prefs:root=LOCATION_SERVICES

prefs:root=ACCOUNT_SETTINGS

prefs:root=MUSIC

prefs:root=MUSIC&path=EQ

prefs:root=MUSIC&path=VolumeLimit

prefs:root=General&path=Network

prefs:root=NIKE_PLUS_IPOD

prefs:root=NOTES

prefs:root=NOTIFICATIONS_ID

prefs:root=Phone

prefs:root=Photos

prefs:root=General&path=ManagedConfigurationList

prefs:root=General&path=Reset

prefs:root=Sounds&path=Ringtone

prefs:root=Safari

prefs:root=General&path=Assistant

prefs:root=Sounds

prefs:root=General&path=SOFTWARE_UPDATE_LINK

prefs:root=STORE

prefs:root=TWITTER

prefs:root=General&path=USAGE

prefs:root=VIDEO

prefs:root=General&path=Network/VPN

prefs:root=Wallpaper

prefs:root=WIFI

prefs:root=INTERNET_TETHERING



-- NORMAL --

猜你喜欢

转载自blog.csdn.net/HDFQQ188816190/article/details/80537731