蓝牙 4.0 低功耗和 iOS:如何检测设备是否可绑定?
Bluetooth 4.0 Low Energy and iOS: How do I detect if device is bondable or not?
是否可以使用 corebluetooth 框架来检测外设是否可绑定?
我是否应该实施未能连接到委托?
目前没有任何内容。对于更高版本的 BLE,绑定信息(GAP 模式)位于 GAP 配置文件中,但您无法通过 CoreBluetooth 使用该信息的任何一位。除部分广告数据和有限的扫描响应数据外,仅提供GATT及以下信息。
您可以读取任何所需的特征属性以查看它是否需要加密 (CBCharacteristicPropertyNotifyEncryptionRequired
),这意味着您需要有一个受信任的连接(配对)才能访问它。这与您现在要达到的一样接近。
首次连接时不应提示您配对,因此 didFailToConnectPeripheral
在这里无济于事。只有在您尝试读取其中一个加密特征后,系统才会提示您进行配对。因此,如果您先检查特性的属性,您仍然应该在提示用户之前知道。
这来自 Apple Bluetooth Accessory Design Guidelines:
The accessory should not request pairing until an ATT request is
rejected using the Insufficient Authentication error code. See the
Bluetooth 4.0 specification, Volume 3, Part F, Section 4 for details.
If, for security reasons,the accessory requires a bonded relationship
with the Central,the Peripheral should reject the ATT request using
the Insufficient Authentication error code, as appropriate. As a
result, the Apple product may proceed with the necessary security
procedures.
是否可以使用 corebluetooth 框架来检测外设是否可绑定?
我是否应该实施未能连接到委托?
目前没有任何内容。对于更高版本的 BLE,绑定信息(GAP 模式)位于 GAP 配置文件中,但您无法通过 CoreBluetooth 使用该信息的任何一位。除部分广告数据和有限的扫描响应数据外,仅提供GATT及以下信息。
您可以读取任何所需的特征属性以查看它是否需要加密 (CBCharacteristicPropertyNotifyEncryptionRequired
),这意味着您需要有一个受信任的连接(配对)才能访问它。这与您现在要达到的一样接近。
首次连接时不应提示您配对,因此 didFailToConnectPeripheral
在这里无济于事。只有在您尝试读取其中一个加密特征后,系统才会提示您进行配对。因此,如果您先检查特性的属性,您仍然应该在提示用户之前知道。
这来自 Apple Bluetooth Accessory Design Guidelines:
The accessory should not request pairing until an ATT request is rejected using the Insufficient Authentication error code. See the Bluetooth 4.0 specification, Volume 3, Part F, Section 4 for details.
If, for security reasons,the accessory requires a bonded relationship with the Central,the Peripheral should reject the ATT request using the Insufficient Authentication error code, as appropriate. As a result, the Apple product may proceed with the necessary security procedures.