我的应用程序应该使用CoreBluetooth立即连接到不同的设备。 我的问题是意外断开连接。一旦我连接到任何外设方法
func centralManager(_ central: CBCentralManager, didDisconnectPeripheral peripheral: CBPeripheral, error: Error?) {
自行调用,这意味着设备已断开连接。 我浏览了文档,但没有发现任何有用的东西。我知道BLE可以是一对多的,所以这个问题来自哪里? 我检查了iOS BLE peripherals keep disconnecting immediately after discoverServices is called中的答案,并且我已经在阵列中保存了CBPeripherals但问题仍然存在。
我得到的输出示例
Connect to <CBPeripheral: 0x15e85a80, identifier = 1BD21078-B2B7-1EE9-5BDC-324DEC7A1BD6, name = Mac mini, state = connected>
Connect to <CBPeripheral: 0x15d83b20, identifier = 6BA160A7-55E7-501D-F195-437CDCD2B558, name = Mac mini, state = connected>
Disconnect from <CBPeripheral: 0x15e85a80, identifier = 1BD21078-B2B7-1EE9-5BDC-324DEC7A1BD6, name = Mac mini, state = disconnected>
错误域= CBErrorDomain代码= 6&#34;连接意外超时。&#34; UserInfo = {NSLocalizedDescription =连接意外超时。}
答案 0 :(得分:1)
链接断开有一些不同的原因。某一方启动断开程序。错误6&#34;连接意外超时&#34;意味着蓝牙链路在无线电级别上丢失连接,例如由于超出范围或其他类型的干扰。
答案 1 :(得分:1)
经过大量搜索后,我发现连接到多个设备会导致此问题。 https://spin.atomicobject.com/2016/01/20/multiple-ble-devices-in-ios/