URL Scheme" Open Settings" IOS

时间:2014-09-23 06:25:13

标签: ios xcode ios7 ios8 url-scheme

我知道这个问题被问了很多次。答案说这在Xcode>中不可用。 5.x的但我看到一些可以使用它的应用程序(转到设置)(iOS7)。有没有办法做到这一点?它在Xcode 6中可用吗? Facebook 可以检测到蜂窝数据和wifi

enter image description here enter image description here

5 个答案:

答案 0 :(得分:77)

从iOS 8开始,可以通过以下方式启动直接打开隐私应用部分的“设置”应用:

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

在斯威夫特:

if let settingsURL = NSURL(string: UIApplicationOpenSettingsURLString) {
    UIApplication.sharedApplication().openURL(settingsURL)
}

在Swift 3.0中:

if let settingsURL = URL(string: UIApplicationOpenSettingsURLString + Bundle.main.bundleIdentifier!) {
    UIApplication.shared.openURL(settingsURL as URL)
}

答案 1 :(得分:7)

1.-添加网址类型 enter image description here

2.-使用:

目标 - C

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"prefs:root=General"]];

<强>夫特

 UIApplication.sharedApplication().openURL(NSURL(string: "prefs:root=General")!)

3.-在此答案中找到其他路径:iOS Launching Settings -> Restrictions URL Scheme

答案 2 :(得分:3)

这在iOS 11中不再可行,我们只需打开“设置”即可。这是一个Swift 4代码片段:

if let url = URL(string:UIApplicationOpenSettingsURLString) {
   if UIApplication.shared.canOpenURL(url) {
     UIApplication.shared.open(url, options: [:], completionHandler: nil)
   }
}

答案 3 :(得分:2)

屏幕截图上的提醒是系统提醒。 第一种情况发生在应用程序想要使用互联网并且有一个被阻止的蜂窝数据用于应用程序(并且未连接Wifi)。第二种情况发生在应用程序想要使用位置服务时,您已关闭wifi。 无法控制这些警报的显示

在iOS 8(Xcode 6)中,可以直接从应用程序打开设置。请阅读以下主题: How to open Settings programmatically like in Facebook app?

Opening the Settings app from another app

答案 4 :(得分:1)

iOS 13,Swift 5.0

打开设置的语法稍有更改。

if let url = URL(string:UIApplication.openSettingsURLString) {
     if UIApplication.shared.canOpenURL(url) {
       UIApplication.shared.open(url, options: [:], completionHandler: nil)
     }
  }