本文内容已过时,可以直接看最后。
应用内跳转到设置 设置详细界面
iOS 应用内跳转设置的方法主要有两种,但都是用openURL的方法来实现。
第一种 prefs 的方法
该方法可精确进入到设置详细,但是__不提倡使用__,容易__审核不通过__,__不建议使用__。
这里整理出来,作为笔记,纪念下很早前开发iOS的这种骚操作。
First Step 配置
如果直接进行Second Step 调取方法就可以成功的话,First Step可以不用设置了。很多人在使用代码直接调转的时候不成功,原因是 URL Type
没有设置对。
1
在plist
文件中设置URL typs
,
将URL types
中添加一个Item
,
然后在Item
中添加Document Role
,将Document Role
的值改为Editor
(这一步很重要)
2
然后将URL Schemes
的Item
的Value
改为prefs
Second Step 调取方法
示例
打开WiFi设置界面
1 | NSURL * url = [NSURL URLWithString:@"prefs:root=WIFI"]; |
以上代码会跳转到WIFI设置界面
常用的一些跳转URL
- About — prefs:root=General&path=About 或者 prefs:root=About
- Accessibility — prefs:root=General&path=ACCESSIBILITY 或者 prefs:root=ACCESSIBILITY
- Airplane Mode On — prefs:root=AIRPLANE_MODE
- Auto-Lock — prefs:root=General&path=AUTOLOCK
- Brightness — prefs:root=Brightness
- Bluetooth — prefs:root=General&path=Bluetooth 或者 prefs:root=Bluetooth
- Date & Time — prefs:root=General&path=DATE_AND_TIME
- FaceTime — prefs:root=FACETIME
- General — prefs:root=General
- Keyboard — prefs:root=General&path=Keyboard
- iCloud — prefs:root=CASTLE
- iCloud Storage & Backup — prefs:root=CASTLE&path=STORAGE_AND_BACKUP
- International — prefs:root=General&path=INTERNATIONAL
- Location Services — prefs:root=LOCATION_SERVICES
- Music — prefs:root=MUSIC
- Music Equalizer — prefs:root=MUSIC&path=EQ
- Music Volume Limit — prefs:root=MUSIC&path=VolumeLimit
- Network — prefs:root=General&path=Network
- Nike + iPod — prefs:root=NIKE_PLUS_IPOD
- Notes — prefs:root=NOTES
- Notification — prefs:root=NOTIFICATIONS_ID
- Phone — prefs:root=Phone
- Photos — prefs:root=Photos
- Profile — prefs:root=General&path=ManagedConfigurationList
- Reset — prefs:root=General&path=Reset
- Safari — prefs:root=Safari
- Siri — prefs:root=General&path=Assistant
- Sounds — prefs:root=Sounds
- Software Update — prefs:root=General&path=SOFTWARE_UPDATE_LINK
- Store — prefs:root=STORE
- Twitter — prefs:root=TWITTER
- Usage — prefs:root=General&path=USAGE
- VPN — prefs:root=General&path=Network 或者 VPN
- Wallpaper — prefs:root=Wallpaper
- Wi-Fi — prefs:root=WIFI
第二种 用 UIApplicationOpenSettingsURLString
1 | NSURL * url = [NSURL URLWithString:UIApplicationOpenSettingsURLString]; |
从iOS 8.0 开始,使用该方法会跳到应用自己的设置界面。推荐使用该方法。
第一种方法已失效,不能再用了,老老实用第二种。至于第一种方法,留作纪念吧,祭奠私有方法这种骚操作。