Swift3 &引用;prefs:root=CASTLE";无法在IOS10中打开iCloud设置?

Swift3 &引用;prefs:root=CASTLE";无法在IOS10中打开iCloud设置?,swift3,settings,icloud,ios10,openurl,Swift3,Settings,Icloud,Ios10,Openurl,在我的应用程序中,我有一个警报视图,可以选择打开IOS设置应用程序的iCloud部分。这以前适用于IOS8/9(Swift 2): 在IOS10(Swift 3)中,它不再工作了,因为openURL()已被弃用。我将代码更改为以下内容: let settingsCloudKitUrl = URL(string:"prefs:root=CASTLE") if let url = settingsCloudKitUrl { if #available(iOS 10, *) {

在我的应用程序中,我有一个警报视图,可以选择打开IOS设置应用程序的iCloud部分。这以前适用于IOS8/9(Swift 2):

在IOS10(Swift 3)中,它不再工作了,因为openURL()已被弃用。我将代码更改为以下内容:

let settingsCloudKitUrl = URL(string:"prefs:root=CASTLE")
if let url = settingsCloudKitUrl {
    if #available(iOS 10, *) {
        if UIApplication.shared.canOpenURL(url) {
            UIApplication.shared.open(url, options: [:], completionHandler: nil)
        }
    } else {
        UIApplication.shared.openURL(url)
    }
}

但是上面的代码不适用于IOS10。UIApplication.shared.canOpenURL(url)返回false。要在IOS10中重新运行,我需要做哪些更改?

对于IOS10以后的版本,将
prefs:root=CASTLE
更改为
App-prefs:root=CASTLE
,这样可以正常工作

let settingsCloudKitUrl = URL(string:"App-Prefs:root=CASTLE")
if let url = settingsCloudKitUrl {
    if #available(iOS 10, *) {
        if UIApplication.shared.canOpenURL(url) {
            UIApplication.shared.open(url, options: [:], completionHandler: nil)
        }
    } else {
        UIApplication.shared.openURL(url)
    }
}

对于iOS 10以后的版本,将
prefs:root=CASTLE
更改为
App-prefs:root=CASTLE
,这样可以正常工作

let settingsCloudKitUrl = URL(string:"App-Prefs:root=CASTLE")
if let url = settingsCloudKitUrl {
    if #available(iOS 10, *) {
        if UIApplication.shared.canOpenURL(url) {
            UIApplication.shared.open(url, options: [:], completionHandler: nil)
        }
    } else {
        UIApplication.shared.openURL(url)
    }
}

prefs:
自iOS 10起将不起作用。使用
uiapplicationopensetingsurlstring
uiapplicationopensetingsurlstring将在IOS设置应用程序中打开我的应用程序部分。那不是我想要的。我需要在设置应用程序中打开iCloud部分。prefs是一个私人API…苹果建议您使用UIApplicationOpenSettingsURLString…打开appAgain的设置:我不想打开我自己应用程序的设置!我想打开iCloud设置部分。
prefs:
自iOS 10后将无法工作。使用
uiapplicationopensetingsurlstring
uiapplicationopensetingsurlstring将在IOS设置应用程序中打开我的应用程序部分。那不是我想要的。我需要在设置应用程序中打开iCloud部分。prefs是一个私人API…苹果建议您使用UIApplicationOpenSettingsURLString…打开appAgain的设置:我不想打开我自己应用程序的设置!我想打开iCloud设置部分。像
App-Prefs:root
这样的URL在App Store中是被禁止的,使用它会导致应用被拒绝。不要这样做!!!苹果会拒绝你。很抱歉这里的上限,但我们刚刚被拒绝,因为像
App Prefs:root这样的URL在App Store中是被禁止的,使用它会导致App拒绝。不要这样做!!!苹果会拒绝你。很抱歉这里的上限,但我们刚刚被拒绝了