需求
在我们的应用中有时候需要对应用的权限做一些修改,但是有无法直接的在App中进行操作,有些需要用户到设置中心去进行修改。怎么办呢?直接告诉客户去系统中心修改,呃(⊙o⊙)…客户可能会觉得太麻烦,今天呢我们来说一下如何直接跳转到对应的设置界面。
实现
NSURL *url = [NSURL URLWithString:@"prefs:root=General"];
[[UIApplication sharedApplication] openURL:url];
对应的权限
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 //打开Brightness(亮度)设置界面
prefs:root=Bluetooth //打开蓝牙设置
prefs:root=General&path=DATE_AND_TIME //日期与时间设置
prefs:root=FACETIME //打开FaceTime设置
prefs:root=General //打开通用设置
prefs:root=General&path=Keyboard //打开键盘设置
prefs:root=CASTLE //打开iClound设置
prefs:root=CASTLE&path=STORAGE_AND_BACKUP //打开iCloud下的储存空间
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 //打开设置下的safari设置
prefs:root=General&path=Assistant //打开siri不成功
prefs:root=Sounds //打开设置下的声音设置
prefs:root=General&path=SOFTWARE_UPDATE_LINK //打开通用下的软件更新
prefs:root=STORE //打开通用下的iTounes Store和App Store设置
prefs:root=TWITTER //打开设置下的twitter设置
prefs:root=FACEBOOK //打开设置下的Facebook设置
prefs:root=General&path=USAGE //打开通用下的用量
prefs:root=VIDEO
prefs:root=General&path=Network/VPN //打开通用下的vpn设置
prefs:root=Wallpaper //打开设置下的墙纸设置
prefs:root=WIFI //打开wifi设置
prefs:root=INTERNET_TETHERING
如果无法跳转,就需要你在info里边设置一下了
但是可能会发现iOS10之后好像是不可以的,是为什么呢?iOS10之后prefs已经不行了,我们要将prefs更换为App-Prefs
这个时候应该就可以跳转了,但是这个时候我们发现一个问题。跳转之后的界面并不是我们想要的。出现了一排的列表,我们还要去找到我们的应用。那么直接跳转到我们应用怎么做呢。
NSURL *url = [NSURL URLWithString:UIApplicationOpenSettingsURLString];
if([[UIApplication sharedApplication] canOpenURL:url]) {
[[UIApplication sharedApplication] openURL:url];
}
这样我们就可以轻松的跳转到我们应用对应的设置界面了。