用户许可配对蓝牙设备

问题描述:

我在读“Performing Common Central Role Tasks",它有关于如何发现外围设备和如何连接到外设的信息,但我似乎无法找到如何检查用户是否选择取消或配对弹出,因为在弹出来的时候我打电话[myCentralManager connectPeripheral:peripheral options:nil];。我想连接(或断开连接)外围,如果用户点击了对弹出取消。我可以调用配对弹出一些其他的方式?用户许可配对蓝牙设备

+0

除非您的外设正在启动连接上的配对,否则在尝试读取/写入需要加密的特性之前,您不应该获得配对弹出窗口。 – Paulw11

的配对过程通过尝试读取/写入/通知需要加密的特征来启动

如果配对过程comp然后采用适当的方法(例如, didUpdateValueForCharacteristic:)将被调用一个零错误。

如果配对过程失败或被取消,则将使用NSError对象调用CBPeripheralDelegate方法,该对象指示'加密不足' - CBATTErrorInsufficientEncryption

如果您得到的加密错误不足,您可以从外设断开连接或重试操作,该操作将再次显示配对对话框。如果用户输入PIN码时出现错误,我建议您重试几次,如3。

+0

我已经使用了你的建议,并在'didUpdateValueForCharacteristic'中做了这个: '如果(error.domain == CBATTErrorDomain && error.code == 5){[managerCentral cancelPeripheralConnection:peripheral];}' 我想这是正确的方法去? – Spire