首页 文章

iPhone-从我的应用程序iOS 6打开设置

提问于
浏览
18

我知道有很多与此相关的问题 .

1)is it possible to open Settings App using openURL?

2)Opening the Settings app from another app

3)iOS Launching Settings -> Restrictions URL Scheme

我已经按照这些问题进行了参考,但这并没有解决我的疑问 . 我知道使用 openURL 方法可以打开设置,但这仅对iOS 5.0 - 5.0.1有效 . 在iOS 5.1中,它已被弃用 .

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"prefs://"]];

我仍然看到许多应用程序主要基于位置,要求用户打开位置服务的权限并直接转到 Location Services Settings--> Privacy. 下面的应用程序的屏幕截图,安装在iOS 6.1运行设备上,下面显示点击设置采取你直接 Location Services .

我试图在我的应用程序中运行代码,但它无法正常工作(我想将用户带到“设置”页面,以允许我的应用程序直接从我的应用程序访问联系信息) . 如果Apple为此禁用了URL方案,那么许多应用程序仍在使用它?

enter image description here

2 回答

  • 16

    对于与位置等服务相关的应用程序,当他们第一次请求访问时,操作系统将使用链接到“设置”的按钮抛出警报 . 这不是由应用程序操作,而是由操作系统的底层安全性操作 .

    如上所述,iOS 6自行删除了自行执行此操作的功能 .

  • 26

    您可以在iOS8中以编程方式打开设置应用程序,但不能在早期版本的iOS中打开 .

    In Swift:

    UIApplication.sharedApplication().openURL(NSURL(string:UIApplicationOpenSettingsURLString));
    

    Swift 4:

    if let url = NSURL(string: UIApplicationOpenSettingsURLString) as URL? {
        UIApplication.shared.openURL(url)
    }
    

    In Objective-C

    [[UIApplication sharedApplication] openURL:[NSURL URLWithString:UIApplicationOpenSettingsURLString]];
    

相关问题