[英]Auto connect to BLE device in iOS app
我正在编写一个iOS应用程序,它将使用低功耗蓝牙(BLE)与设备进行通信。
当我连接的设备超出范围时,我的应用程序将收到断开连接事件。
但是当设备返回范围时,我没有收到任何连接事件。
请提出任何检测设备何时返回范围的方法。
当您收到设备无法访问的事件时,可以启动一种方法来连续检查设备是否仍然无法访问。
例如:while(isConnected == false)...您说如果设备断开连接,您会收到一条通知,因此您可以使用该事件来启动这种方法。
当您收到断开连接事件时,只需重新启动扫描功能: scanForPeripheralsWithServices
或者可以通过[_manager scanForPeripheralsWithServices:self.targetDeviceServiceIDs options:@{CBCentralManagerScanOptionAllowDuplicatesKey:@YES}]
设置扫描模式以接受重复密钥。 这意味着将在停止扫描之前多次发现同一设备。
如果连接超时,只需使用断开连接方法重新连接。 无需开始扫描。 它将自动尝试重新连接,直到进入范围。
当您的设备断开连接或进入蓝牙范围之外时,您无需扫描外围设备,因为它已经扫描了BLE设备。
调用函数[centralObj connectPeripheral:peripheral options:nil];
当BLE设备断开连接时,进入didDisconnectPeripheral
委托方法。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.