跳转系统设置界面,例如提示用户打开定位、蓝牙或者WIFI,提醒用户打开推送或者位置权限等

在iOS6之后,第三方应用需要跳转系统设置界面,需要在URL type中添加一个prefs值,如下图:

跳转系统设置根目录中的项目使用下面的方法

 1          _array = @[
2 @{@"系统设置":@"prefs:root=INTERNET_TETHERING"},
3 @{@"WIFI设置":@"prefs:root=WIFI"},
4 @{@"蓝牙设置":@"prefs:root=Bluetooth"},
5 @{@"系统通知":@"prefs:root=NOTIFICATIONS_ID"},
6 @{@"通用设置":@"prefs:root=General"},
7 @{@"显示设置":@"prefs:root=DISPLAY&BRIGHTNESS"},
8 @{@"壁纸设置":@"prefs:root=Wallpaper"},
9 @{@"声音设置":@"prefs:root=Sounds"},
10 @{@"隐私设置":@"prefs:root=privacy"},
11 @{@"APP Store":@"prefs:root=STORE"},
12 @{@"Notes":@"prefs:root=NOTES"},
13 @{@"Safari":@"prefs:root=Safari"},
14 @{@"Music":@"prefs:root=MUSIC"},
15 @{@"photo":@"prefs:root=Photos"}
16 ];
17 NSURL * url = [NSURL URLWithString:[_array[index] allValues].firstObject];
18 [[UIApplication sharedApplication]openURL:url];

如果要跳转第三方应用的设置界面中,使用prefs:root=boundleId的方式,boundleId是第三方应用的boundleId。
如果需要继续向项目内层进行跳转,可以通过添加path路径的方式,如下:

 1              _array = @[
2 @{@"关于本机":@"prefs:root=General&path=About"},
3 @{@"软件升级":@"prefs:root=General&path=SOFTWARE_UPDATE_LINK"},
4 @{@"日期时间":@"prefs:root=General&path=DATE_AND_TIME"},
5 @{@"Accessibility":@"prefs:root=General&path=ACCESSIBILITY"},
6 @{@"键盘设置":@"prefs:root=General&path=Keyboard"},
7 @{@"VPN":@"prefs:root=General&path=VPN"},
8 @{@"壁纸设置":@"prefs:root=Wallpaper"},
9 @{@"声音设置":@"prefs:root=Sounds"},
10 @{@"隐私设置":@"prefs:root=privacy"},
11 @{@"APP Store":@"prefs:root=STORE"},
12 @{@"还原设置":@"prefs:root=General&path=Reset"},
13 @{@"应用通知":@"prefs:root=NOTIFICATIONS_ID&path=应用的boundleId"}
14 ];

UI进阶 跳转系统设置相关界面的方法的更多相关文章

  1. iOS应用内跳转系统设置相关界面的方法

    在iOS开发中,有时会有跳转系统设置界面的需求,例如提示用户打开蓝牙或者WIFI,提醒用户打开推送或者位置权限等.在iOS6之后,第三方应用需要跳转系统设置界面,需要在URL type中添加一个pre ...

  2. iOS之应用内跳转系统设置相关界面

    在iOS开发中,有时会有跳转系统设置界面的需求,例如提示用户打开蓝牙或者WIFI,提醒用户打开推送或者位置权限等.在iOS6之后,第三方应用需要跳转系统设置界面,需要在URL type中添加一个pre ...

  3. Android界面刷新方法

    Android提供了Invalidate方法实现界面刷新,但是Invalidate不能直接在线程中调用,因为他是违背了单线程模型:Android UI操作并不是线程安全的,并且这些操作必须在UI线程中 ...

  4. iOS开发之如何跳到系统设置里的各种设置界面

    跳到更多设置界面 除了跳到WiFi设置界面,能不能跳到其他的设置界面呢?比如:定位服务.FaceTime.音乐等等.都是可以的,一起来看看如何实现的! 定位服务 定位服务有很多APP都有,如果用户关闭 ...

  5. iOS跳转系统设置界面

    iOS开发之如何跳到系统设置里的各种设置界面:http://www.superqq.com/blog/2015/12/01/jump-setting-per-page/ iOS:你App的设置做对了吗 ...

  6. OC如何跳到系统设置里的各种设置界面

    当 iOS系统版本 <= iOS7时 , 只能跳转到 系统设置页面 ,楼主试了下,非真机是没有任何效果的 当iOS系统版本 < iOS 10.0 时 NSURL *url= [NSURL ...

  7. iOS开发 - 如何跳到系统设置里的各种设置界面

    在iOS开发中,有时会有跳转系统设置界面的需求,例如提示用户打开蓝牙或者WIFI,提醒用户打开推送或者位置权限等.在iOS6之后,第三方应用需要跳转系统设置界面,需要在URL type中添加一个pre ...

  8. iOS 跳转系统设置界面

    iOS 跳转系统设置界面   [[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"prefs:root=Pri ...

  9. iOS如何跳到系统设置里的各种设置界面

    最近项目需要授权时候跳转到相关的设置页面,自己总结了一下,想写到简书上来,和大家分享一下. 在本人测试后,iOS8和9都没有问题,直接跳转到各个页面,这可能苹果对这方面开放了吧.第一步修改plist文 ...

随机推荐

  1. CS193P - 2016年秋 第三讲 Swift 语言及 Foundation 框架

    这一讲介绍一些 Swift 的重点概念.特别是一些有别于其它语言的地方.但本质上还都是语法糖. 想充分理解这一讲的内容,最好的方式就是 打开 playgound,亲自动手来实验. 1,Optional ...

  2. Windows Server 2008 R2 组策略基本设置

    域控组策略基本设置 标注: 组策略计算配置:系统需要重启才生效                          组策略用户配置:系统注销即可生效 一.              域用户登录桌面后自动 ...

  3. [Android Tips] 23. How to fail/stop Gradle task immediately if some conditions are not met

    throw new GradleException("conditions are not met") 参考 How to fail/stop task immediately i ...

  4. Hadoop的核心组件和生态圈

    摘要:Hadoop是一个由Apache基金会所开发的分布式系统基础架构.Hadoop的框架最核心的设计就是:HDFS和MapReduce.HDFS为海量的数据提供了存储,则MapReduce为海量的数 ...

  5. 使用flume-ng聚合双活Nginx日志

    前不久使用Keepalived搭建了Nginx双活代理服务器,以达到一个公网IP后支持多个云主机的多个域名网站的目的.完成后又想在这双活的Nginx上有所有访问网站的日志,之前有了解过Google A ...

  6. 写了placement new就要写placement delete

    "placement new"通常是专指指定了位置的new(std::size_t size, void *mem),用于vector申请capacity剩余的可用内存. 但广义的 ...

  7. 关于hasNextInt判断后无限循环输出else项的解决办法

    话不多说,上来就是干! import java.util.Scanner; public class Test_hasNextInt { /** * @param args */ public sta ...

  8. Python Thread related

    1.Thread.join([timeout]) Wait until the thread terminates. This blocks the calling thread until the ...

  9. html5 离线存储

    在html页面中引入manifest文件 <html manifest="sample.appcache"> 在服务器添加mime-type text/cache-ma ...

  10. 多线程迭代之——LINQ to TaskQuery

    平时经常会迭代集合,如果数据多的话会很耗时. 例子: , , }; list.ForEach(a => DoSomething(a)); void DoSomething(int a) { // ...