iOS跳轉(zhuǎn)系統(tǒng)設(shè)置和打開(kāi)其他APP

歡迎訪問(wèn)我的博客muhlenXi,該文章出自我的博客。

導(dǎo)語(yǔ):

在項(xiàng)目中,有時(shí)需要跳轉(zhuǎn)到系統(tǒng)設(shè)置的某一個(gè)界面讓用戶去設(shè)置相關(guān)屬性。比如一個(gè)藍(lán)牙的APP需要檢測(cè)用戶是否打開(kāi)了藍(lán)牙,否則需要提醒用戶并跳轉(zhuǎn)到藍(lán)牙設(shè)置界面讓用戶去打開(kāi)藍(lán)牙。有時(shí)需要打開(kāi)自帶或第三方APP去操作。比如,打開(kāi)微信、支付寶等。

本文 已更新到 Xcode8.0 Swift3.0

關(guān)于適配

通過(guò)一張圖,我們可以查看到 2017-2-20 號(hào)用戶的系統(tǒng)版本的分布比例,所以我們只要是配到 9.0 和 9.0 以上就可以滿足大部分用戶了。最新系統(tǒng)版本分布圖傳送門

選項(xiàng)列表圖

跳轉(zhuǎn)到系統(tǒng)設(shè)置

由于在iOS 10 以上iOS 10 以下分別是通過(guò)不同的方法打開(kāi)URL的,所以我們要對(duì)系統(tǒng)版本做判斷操作!

舉例1:跳轉(zhuǎn)到 系統(tǒng)藍(lán)牙設(shè)置 界面

let urlStr = "App-Prefs:root=Bluetooth"
if let url = URL(string:urlStr) {
    if #available(iOS 10.0, *) {
        UIApplication.shared.open(url, options: Dictionary(), completionHandler: nil)
    } else {
        // Fallback on earlier versions
        UIApplication.shared.openURL(url)
    }
}

打開(kāi)其他APP

舉例2:打開(kāi) App Store 應(yīng)用

let urlStr = "itms-apps://"
if let url = URL(string:urlStr) {
    if #available(iOS 10.0, *) {
        UIApplication.shared.open(url, options: Dictionary(), completionHandler: nil)
    } else {
        // Fallback on earlier versions
        UIApplication.shared.openURL(url)
    }
}

常用的第三方應(yīng)用都定義了不同的 URL Scheme,我們通過(guò) UIApplication.shared.open() 方法打開(kāi)相應(yīng)的URL,即可跳轉(zhuǎn)到對(duì)應(yīng)的 App 中。iOS10 以下的系統(tǒng)則是使用 UIApplication.shared.openURL() 方法

舉例3:打開(kāi) 微信 應(yīng)用

let urlStr = "weixin://"
if let url = URL(string:urlStr) {
    if #available(iOS 10.0, *) {
        UIApplication.shared.open(url, options: Dictionary(), completionHandler: nil)
    } else {
        // Fallback on earlier versions
        UIApplication.shared.openURL(url)
    }
}

了解更多詳情,請(qǐng)下載本文 demo 研究!本文的 Demo 在 10.2.19.3.2 的真機(jī)上都測(cè)試過(guò),相關(guān)操作均能正常執(zhí)行!

本文demo

GitHub傳送

親測(cè)可以正常使用的 URL Scheme

系統(tǒng)設(shè)置

要跳轉(zhuǎn)的設(shè)置界面 URL String 備注
WIFI App-Prefs:root=WIFI
Bluetooth App-Prefs:root=Bluetooth
蜂窩移動(dòng)網(wǎng)絡(luò) App-Prefs:root=MOBILE_DATA_SETTINGS_ID
個(gè)人熱點(diǎn) App-Prefs:root=INTERNET_TETHERING
VPN App-Prefs:root=VPN
運(yùn)營(yíng)商 App-Prefs:root=Carrier
通知 App-Prefs:root=NOTIFICATIONS_ID
定位服務(wù) App-Prefs:root=Privacy&path=LOCATION
通用 App-Prefs:root=General
關(guān)于本機(jī) App-Prefs:root=General&path=About
鍵盤 App-Prefs:root=General&path=Keyboard
輔助功能 App-Prefs:root=General&path=ACCESSIBILITY
語(yǔ)言與地區(qū) App-Prefs:root=General&path=INTERNATIONAL
還原 App-Prefs:root=General&path=Reset
墻紙 App-Prefs:root=Wallpaper
Siri App-Prefs:root=SIRI
隱私 App-Prefs:root=Privacy
Safari App-Prefs:root=SAFARI
音樂(lè) App-Prefs:root=MUSIC
照相與照相機(jī) App-Prefs:root=Photos
FaceTime App-Prefs:root=FACETIME
電池電量 App-Prefs:root=BATTERY_USAGE
存儲(chǔ)空間 App-Prefs:root=General&path=STORAGE_ICLOUD_USAGE/DEVICE_STORAGE
顯示與亮度 App-Prefs:root=DISPLAY
聲音設(shè)置 App-Prefs:root=Sounds
App Store App-Prefs:root=STORE
iCloud App-Prefs:root=CASTLE
語(yǔ)言設(shè)置 App-Prefs:root=General&path=INTERNATIONAL

自帶 App 和第三方 App

要打開(kāi)的APP URL Scheme Bundle Identifier
打10086 tel://10086
App Store itms-apps://
Safari http://muhlenxi.com/
Maps maps://
備忘錄 mobilenotes://
SMS sms://
Mail mailto://
iBooks ibooks://
Music music://
Videos videos://
QQ mqq://
微信 weixin://
淘寶 taobao://
支付寶 alipay://
新浪微博 sinaweibo://
知乎 zhihu://

后記

感謝閱讀,有什么問(wèn)題可以給我留言。如果覺(jué)得不錯(cuò)的話,可以點(diǎn)個(gè) Star 支持一下作者!本文不階段更新中...

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 178,983評(píng)論 25 709
  • 發(fā)現(xiàn) 關(guān)注 消息 iOS 第三方庫(kù)、插件、知名博客總結(jié) 作者大灰狼的小綿羊哥哥關(guān)注 2017.06.26 09:4...
    肇東周閱讀 15,219評(píng)論 4 61
  • 知我者謂我心憂,不知我者謂我何求。 -----《詩(shī)經(jīng)》 其實(shí),我一直覺(jué)得我本該自卑的,盡管我沒(méi)有,但大部分人...
    馬小小軍閱讀 266評(píng)論 0 1
  • 主題:播種 問(wèn)題:回想朋友對(duì)自己有什么深刻的影響?告訴TA,感謝TA在你身上曾經(jīng)的播種。 Theme: Plant...
    每天都是正能量閱讀 245評(píng)論 0 1
  • 我的今生遇見(jiàn)你,是我前世修來(lái)的福氣。 修一世的塵緣,那一生我虔誠(chéng)的祈福,不為了卻凡塵輪回的劫,不為消除現(xiàn)世種下的業(yè)...
    墨靈卷閱讀 432評(píng)論 0 1

友情鏈接更多精彩內(nèi)容