私有api,慎用!!!
在iOS10更新后,系統設置跳轉被禁用?只能跳轉App設置?
當然不,其實依舊可以跳轉,例如原有跳轉 Wi-Fi 設置是 prefs:root=WIFI
,新的寫法是 App-Prefs:root=WIFI
。怎么樣,是不是很簡單!
舉個栗子:
#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]];
}
}
- 當前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|
|Siri| App-Prefs:root=SIRI|
|隱私 |App-Prefs:root=Privacy|
|Safari |App-Prefs:root=SAFARI|
|音樂 |App-Prefs:root=MUSIC|
|音樂-均衡器 |App-Prefs:root=MUSIC&path=com.apple.Music:EQ|
|照片與相機| App-Prefs:root=Photos|
|FaceTime| App-Prefs:root=FACETIME|
注意:在非iOS10手機中,也可以用此方法進行跳轉,但不保證跳轉正確性。
非iOS10系統跳轉,可以參考關于iOS系統功能的URL匯總列表(未測試)。