iOS10跳转系统设置的正确姿势

在iOS10更新后,系统设置跳转被禁用,只能跳转App设置? NO, NO, NO, 看这里,又可以换个姿势愉快的跳转啦。

其实方法很简单,例如原有跳转Wi-Fi设置是"prefs:root=WIFI",新的写法是"App-Prefs:root=WIFI"。怎么样,是不是很简单!!!

在非iOS10手机中,也可以用此方法进行跳转,但不保证跳转正确性

非iOS10系统跳转,可以参考这里(未测试)。

Objective-c

#define iOS10 ([[UIDevice currentDevice].systemVersion doubleValue] >= 10.0)

NSString * urlString = @"App-Prefs:root=WIFI";

if ([[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:urlString]]) {

if (iOS10) {

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:urlString] options:@{} completionHandler:nil];

} else {

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:urlString]];

}

}

Swift

if let url = URL(string:"App-Prefs:root=WIFI") {

if #available(iOS 10.0, *) {

UIApplication.shared.open(url, options: [:], completionHandler: nil)

} else {

UIApplication.shared.openURL(url)

}

}

当前iOS10支持的所有跳转,亲测可用(测试系统:10.2.1)

跳转写法

无线局域网App-Prefs:root=WIFI

蓝牙App-Prefs:root=Bluetooth

蜂窝移动网络App-Prefs:root=MOBILE_DATA_SETTINGS_ID

个人热点App-Prefs:root=INTERNET_TETHERING

运营商App-Prefs:root=Carrier

通知App-Prefs:root=NOTIFICATIONS_ID

通用App-Prefs:root=General

通用-关于本机App-Prefs:root=General&path=About

通用-键盘App-Prefs:root=General&path=Keyboard

通用-辅助功能App-Prefs:root=General&path=ACCESSIBILITY

通用-语言与地区App-Prefs:root=General&path=INTERNATIONAL

通用-还原App-Prefs:root=Reset

墙纸App-Prefs:root=Wallpaper

SiriApp-Prefs:root=SIRI

隐私App-Prefs:root=Privacy

SafariApp-Prefs:root=SAFARI

音乐App-Prefs:root=MUSIC

音乐-均衡器App-Prefs:root=MUSIC&path=com.apple.Music:EQ

照片与相机App-Prefs:root=Photos

FaceTimeApp-Prefs:root=FACETIME

你可能感兴趣的:(iOS10跳转系统设置的正确姿势)