iOS:打开我的应用专用位置设置

时间:2017-03-30 01:40:41

标签: ios objective-c geolocation cllocationmanager

我需要打开我的iOS应用专用位置设置。我知道我们可以通过以下方式打开常规位置设置:

  

[[UIApplication sharedApplication] openURL:[NSURL   URLWithString:@ “首选项:根= LOCATION_SERVICES”]]; *

我有两个问题:

  1. 根据Apple指南(或),我们是否应该打开设置应用并允许用户更改设置?

  2. 我的要求是打开我的应用程序的特定位置设置 - 显示“始终”,“使用应用程序时”,“从不”,以便用户可以修改相同的位置设置。这可能吗

  3. 提前致谢。

2 个答案:

答案 0 :(得分:6)

适用于Swift 3及以上版本: 此外,该代码还会检查ios版本并完成所有版本的工作。

if let url = URL(string: UIApplicationOpenSettingsURLString){
        if #available(iOS 10.0, *){
            UIApplication.shared.open(url, completionHandler: nil)
            print("\n--- in ios 10 ")
        } else{
            UIApplication.shared.openURL(url)
            print("\n--- in ios other than 10 ")
        }
    }
  

UIApplicationOpenSettingsURLString:基本上打开您的应用程序的设置,它还显示应用程序使用的所有服务,包括位置服务,移动数据,照片库等...

现在将Cocoa Keys添加到您的应用中,即在plist文件中 这是一些网址 Cocoa keys for iOS 10Cocoa Keys from developer.apple

答案 1 :(得分:0)

这将使用户进入应用程序特定设置屏幕,其中列出了应用程序请求的位置,相机,通知和任何其他权限,供用户切换。

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

希望这有帮助。