2015-02-05 117 views
1

是否有可能使用corebluetooth框架来检测外设是否可绑定?蓝牙4.0低功耗和iOS:如何检测设备是否可绑定?

我应该执行失败连接到委托吗?

+0

我想回答这个问题非常多,但我不知道答案是肯定的。我所知道的是[可以检测何时在iOS设备端的请求提醒上点击“Pair”或“Cancel”](http://stackoverflow.com/a/12953887/981049)。 – 2015-02-05 18:54:56

+0

是的,这是不够的= =( – stackOverFlew 2015-02-05 19:30:48

回答

3

目前没有任何东西。对于更高版本的BLE,绑定信息(GAP模式)位于GAP配置文件中,但不能通过CoreBluetooth为您提供该信息的一个位。除了一些广告数据和有限的扫描响应数据外,它仅在下面提供GATT信息。

您可以阅读任何需要的特征属性以查看它是否需要加密(CBCharacteristicPropertyNotifyEncryptionRequired),这意味着您需要有一个可信连接(配对)才能访问它。这和你现在要做的一样接近。

当您第一次连接时,不应提示您配对,因此didFailToConnectPeripheral在这里不起作用。只有在您尝试读取其中一个加密特征后才会提示您配对。因此,在提示用户之前,您应该仍然知道是否首先检查特性的属性。

这从苹果公司的Bluetooth Accessory Design Guidelines

附件不应该要求配对,直到ATT请求 使用不足验证错误代码拒绝。有关详细信息,请参阅 蓝牙4.0规范,第3卷,F部分,第4节。

如果,出于安全考虑,该附件需要与中央保税关系 ,外围应该拒绝使用 的不足验证错误代码ATT请求,如适当。作为 的结果,Apple产品可能会执行必要的安全 程序。

相关问题