1. 程式人生 > >iOS應用內跳轉到系統設定頁面

iOS應用內跳轉到系統設定頁面

在iOS開發中,有時會有跳轉系統設定介面的需求,例如提示使用者開啟藍芽或者WIFI,提醒使用者開啟推送或者位置許可權等。

設定跳轉有三種方式,每一種的使用場景都不同。 並且你在跳轉到系統中自己應用下面設定的時候,你的應用要提前至少申請了某一個許可權,如通知,定位等。否則,會引起崩潰。

方式一:prefs:root=某項服務

方式二:prefs:root=bundleID

方式三: UIApplicationOpenSettingsURLString

跳轉
當 iOS系統版本 <= iOS7時 , 只能跳轉到 系統設定頁面

NSURL *url= [NSURL URLWithString:@"prefs:root=LOCATION_SERVICES"];

跳轉到: 隱私-定位服務。


prefs:root=某項服務


系統設定: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


蜂窩網路:prefs:root=MOBILE_DATA_SETTINGS_ID


音樂:prefs:root=MUSIC


APP Store:prefs:root=STORE


Notes:prefs:root=NOTES


Safari:prefs:root=Safari


Music:prefs:root=MUSIC


photo":prefs:root=Photos



這種跳轉方式,都是跳轉到系統的設定介面。 

當 iOS系統版本 >= iOS8 ,支援跳轉到第三方應用的設定介面中使用prefs:root= bundleID ,

bundleID是你第三方應用工程的唯一ID  侷限性:只支援iOS8,iOS9系統,在iOS10系統上,不會跳轉。
當系統版本號大於iOS
UIApplicationOpenSettingsURLString欄位,是在iOS8上才提供的,支援iOS8,iOS9,iOS10系統,推薦使用。

參考資料