Bluetooth 如何在iOS 10中以编程方式打开蓝牙设置

Bluetooth 如何在iOS 10中以编程方式打开蓝牙设置,bluetooth,ios10,xcode8,Bluetooth,Ios10,Xcode8,我正在尝试使用swift通过我的应用程序访问蓝牙设置。如何访问蓝牙设置 Xcode版本-8.0 swift-2.3 iOS-10到目前为止,您无法从iOS 10从应用程序访问蓝牙设置。 你可以看到下面的链接来保持你的头脑平静 Swift 3.0:工作至iOS 10 注意:此URL是“专用API”。如果使用该应用,应用商店审查员将拒绝该应用。您将无法使用@Siddharth jain提供的解决方案。问题是:苹果将拒绝该应用程序,并警告您永远不要再使用非公共API。否则,您可能会冒开发人员程序的

我正在尝试使用swift通过我的应用程序访问蓝牙设置。如何访问蓝牙设置

Xcode版本-8.0 swift-2.3
iOS-10

到目前为止,您无法从iOS 10从应用程序访问蓝牙设置。 你可以看到下面的链接来保持你的头脑平静

Swift 3.0:工作至iOS 10


注意:此URL是“专用API”。如果使用该应用,应用商店审查员将拒绝该应用。

您将无法使用@Siddharth jain提供的解决方案。问题是:苹果将拒绝该应用程序,并警告您永远不要再使用非公共API。否则,您可能会冒开发人员程序的风险

据我所知,你所能做的就是打开iPhone的一般设置(或者,如果有一些设置的话,你可以直接进入你的应用程序设置)

guard let url = URL(string: UIApplication.openSettingsURLString) else {
    // Handling errors that should not happen here
    return
}
let app = UIApplication.shared
app.open(url)

通过此操作,您将始终获得一个可以在apple review中使用的URL。

请勿使用此URL。我们的应用程序因此被app Store拒绝。您的应用程序使用“prefs:root”="非公共URL方案,这是一个私有实体。不允许在应用商店中使用非公共API,因为如果这些API发生更改,可能会导致用户体验不佳。在以后提交此应用时继续使用或隐藏非公共API可能会导致终止您的Apple开发者帐户,并删除应用商店中的所有相关应用。我们的应用也被拒绝。你可能会通过一次或两次,但苹果会定期检查私人API。请不要使用此功能!那么苹果批准的解决方案是什么?苹果会拒绝你的应用,并可能会因为你使用“prefs:root=bluetooth”或app prefs:root=蓝牙"。遗憾的是,我找不到其他选择。UIApplicationOpenSettingsURLString是一个糟糕的替代品,它将用户带到应用程序的自定义设置,可能会让需要转到设置>蓝牙连接到您的设备的用户感到困惑。我刚刚在iPhone上启动了运行iOS 12的Google Map,Google提供了一个直接指向Priv的深层链接信息和定位服务。。
guard let url = URL(string: UIApplication.openSettingsURLString) else {
    // Handling errors that should not happen here
    return
}
let app = UIApplication.shared
app.open(url)