iOS跳转系统设置和打开其他APP
关于适配
通过一张图,我们可以查看到 2017-2-20 号用户的系统版本的分布比例,所以我们只要是配到 9.0 和 9.0 以上就可以满足大部分用户了。最新系统版本分布图传送门

选项列表图
跳转到系统设置
由于在iOS 10 以上 和 iOS 10 以下分别是通过不同的方法打开URL的,所以我们要对系统版本做判断操作!
举例1:跳转到 系统蓝牙设置 界面
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)
}
}
打开其他APP
举例2:打开 App Store 应用
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)
}
}
常用的第三方应用都定义了不同的 URL Scheme,我们通过 UIApplication.shared.open() 方法打开相应的URL,即可跳转到对应的 App 中。iOS10 以下的系统则是使用 UIApplication.shared.openURL() 方法)
举例3:打开 微信 应用
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)
}
}
了解更多详情,请下载本文 demo 研究!本文的 Demo 在 10.2.1 和 9.3.2 的真机上都测试过,相关操作均能正常执行!
本文demo
亲测可以正常使用的 URL Scheme
系统设置
| 要跳转的设置界面 | URL String | 备注 |
|---|---|---|
| WIFI | App-Prefs:root=WIFI | |
| Bluetooth | App-Prefs:root=Bluetooth | |
| 蜂窝移动网络 | App-Prefs:root=MOBILE_DATA_SETTINGS_ID | |
| 个人热点 | App-Prefs:root=INTERNET_TETHERING | |
| VPN | App-Prefs:root=VPN | |
| 运营商 | App-Prefs:root=Carrier | |
| 通知 | App-Prefs:root=NOTIFICATIONS_ID | |
| 定位服务 | App-Prefs:root=Privacy&path=LOCATION | |
| 通用 | 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=General&path=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=Photos | |
| FaceTime | App-Prefs:root=FACETIME | |
| 电池电量 | App-Prefs:root=BATTERY_USAGE | |
| 存储空间 | App-Prefs:root=General&path=STORAGE_ICLOUD_USAGE/DEVICE_STORAGE | |
| 显示与亮度 | App-Prefs:root=DISPLAY | |
| 声音设置 | App-Prefs:root=Sounds | |
| App Store | App-Prefs:root=STORE | |
| iCloud | App-Prefs:root=CASTLE | |
| 语言设置 | App-Prefs:root=General&path=INTERNATIONAL |
自带 App 和第三方 App
| 要打开的APP | URL Scheme | Bundle Identifier |
|---|---|---|
| 打10086 | tel://10086 | |
| App Store | itms-apps:// | |
| Safari | http://muhlenxi.com/ | |
| Maps | maps:// | |
| 备忘录 | mobilenotes:// | |
| SMS | sms:// | |
| mailto:// | ||
| iBooks | ibooks:// | |
| Music | music:// | |
| Videos | videos:// | |
| mqq:// | ||
| 微信 | weixin:// | |
| 淘宝 | taobao:// | |
| 支付宝 | alipay:// | |
| 新浪微博 | sinaweibo:// | |
| 知乎 | zhihu:// |
浙公网安备 33010602011771号