Ios 点击按钮打开蓝牙设置

Ios 点击按钮打开蓝牙设置,ios,objective-c,bluetooth,Ios,Objective C,Bluetooth,到目前为止,我已经做了足够多的研究,了解到这在iOS 5.1及以下版本中是如何实现的,而在以上版本中是不可能实现的 但其他应用程序是如何做到这一点的呢 到目前为止,我已经尝试了以下方法(在iOS8.1模拟器上测试,在Xcode上测试): 打开应用程序的设置。不太理想,但事实就是这样 AFAIK,使用以下命令: [[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"prefs:root=General&path=

到目前为止,我已经做了足够多的研究,了解到这在iOS 5.1及以下版本中是如何实现的,而在以上版本中是不可能实现的

但其他应用程序是如何做到这一点的呢

到目前为止,我已经尝试了以下方法(在iOS8.1模拟器上测试,在Xcode上测试):

打开应用程序的设置。不太理想,但事实就是这样

AFAIK,使用以下命令:

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"prefs:root=General&path=Bluetooth"]]

不再有效。或者,有人能告诉我官方文档说明它不再适用于任何版本的iOS 5.1吗?

我也有同样的问题,现在你只能打开当前的应用程序设置,对不起=(

这在iOS版本5.1及以上版本中有效

您必须在Xcode的
info.plist
选项卡的URL类型中添加URL方案
prefs
,如下所示:

目标-C

- (void)turnOnBlueToothPressed:(id)sender {
    [[UIApplication sharedApplication] openURL:[NSURL  URLWithString:UIApplicationOpenSettingsURLString]];
}
[[UIApplication sharedApplication]openURL:[NSURL URLWithString:@“prefs:root=WIFI”];
Swift

- (void)turnOnBlueToothPressed:(id)sender {
    [[UIApplication sharedApplication] openURL:[NSURL  URLWithString:UIApplicationOpenSettingsURLString]];
}
UIApplication.sharedApplication().openURL(NSURL(字符串:“prefs:root=WIFI”)!)
这将从应用程序中打开WIFI设置

相关SO链接:


注意:以下方法适用于iOS 11以下的所有版本,对于更高版本,应用程序可能会被拒绝,因为它是一个私有API 这符合准则2.5.1-性能-软件要求

以下是所有项目的列表:

如果要打开蓝牙设置:

Swift 3:

let url = URL(string: "App-Prefs:root=Bluetooth")
let app = UIApplication.shared
app.openURL(url!)
使用以下代码仅打开设置:


UIApplication.sharedApplication().openURL(NSURL(字符串:UIApplicationOpenSettingsURLString))

在ios 9上测试过,它可以工作,但我在ios 11上试过,
prefs:root=Bluetooth
没有工作,
App-prefs:root=Bluetooth
打开了设置,但没有打开Bluetooth。
App-prefs:root=Bluetooth
在ios 11上工作过,所以这个案例似乎很重要。@GabLeRoux在ios 11上我们也需要添加URL类型吗?对我来说不是解决方案正在运行,知道吗?我正在升级到最新的ios版本并将重试。但是我发现这个github项目说ios11有问题:无法在ios 11上运行,只打开“设置”页面。有更新吗?