在我目前正在从事的项目中,我正在使用单例类来处理所有与蓝牙相关的任务。它的CBCentralManager
对象处理与多个外围设备的连接。当CBPeripherals
被发现时,我让用户选择外围设备并连接到它。建立连接后,他/她可以选择另一个可用的设备,因此连接是按顺序完成的。
但是在检索连接时,我得到了一组检索到的外围设备。检索多个外围设备的最佳做法是什么?一次创建到外围设备的多个连接请求是否可以,还是应该按顺序完成?
现在我正在遍历检索到的外围设备并尝试与它们连接而无需等待。它可以工作,但需要一些时间,尽管我连接的 ble 硬件可能有问题。
更重要的是,当我触发方法时retrievePeripheralsWithIdentifiers:
,它没有给我委托回调,所以我正在检索centralManager:didDisconnectPeripheral:error:
方法,我在哪里
NSArray *retrieved = [self.centralMgr retrievePeripheralsWithIdentifiers:identifiers];
然后遍历检索到的对象。
它有效,但它是正确的方法吗?