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