拔出电池后重新连接到 BLE 设备



我有一个BLE设备,我正在编写一个要与之配对的应用程序。 我可以毫无问题地发现并连接到设备。 但是,如果我已连接并在BLE设备上拉动并重新插入电池,则会收到didDisconnectPeripheral回调,但即使我仍在扫描,我也永远不会再收到didConnectPeripheral。 我也试着打电话给retrieveConnectedPeripheralsWithServicesretrievePeripheralsWithIdentifiers但都没有返回任何东西。

在重启

BLE 设备的电源后,如何可靠地重新连接?

一旦外围设备断开连接,您就可以发出另一个连接 - iOS 将在设备再次可见时自动重新连接到设备并调用您的 didConnectPeripheral: 委托方法

-(void) centralManager:(CBCentralManager *)central didDisconnectPeripheral:(CBPeripheral *)peripheral error:(NSError *)error {
    NSLog(@"Disconnected from peripheral");
    [central connectPeripheral:peripheral options:nil];
}

无需重新扫描/重新发现外围设备。

您可能需要更新 UI 等的更全面的实现。

下面是一些连接到外设并显示供应商信息的示例代码 -https://github.com/paulw11/BTBackground

相关内容

  • 没有找到相关文章

最新更新