当 BLE 设备不再可见时处理

Posted

技术标签:

【中文标题】当 BLE 设备不再可见时处理【英文标题】:Handle when BLE device is no longer visible 【发布时间】:2013-06-27 08:02:47 【问题描述】:

我正在开发一个 ios 应用程序,它使用 CoreBluetooth 连接到 Bluetooth Low Energy 设备(心率监测器)。似乎CentralManager 委托没有在设备不再可见时处理的方法-它只有方法didDiscoverPeripheraldidRetrievePeripheral。此外,它成功地检索(根据请求)已断开连接并从手机上移开的外围设备。

我想要处理的只是当蓝牙不再可访问设备并将其从可用设备列表中删除。有可能吗?

【问题讨论】:

【参考方案1】:

不幸的是,corebluetooth.framework 目前没有内置选项来处理这种情况。但是,如果您只是使用此列表来填充 tableView,即仅在前台使用它,则只需运行 NSTimer 以定期停止和重新启动发现。清除您的数据阵列并重新启动。如果它在附近,你仍然会得到它。否则你不会。不过,在corebluetooth.framework 中肯定会为 ios 的下一个版本添加一些新内容,所以让我们一起期待吧!

【讨论】:

以上是关于当 BLE 设备不再可见时处理的主要内容,如果未能解决你的问题,请参考以下文章

杂记:解决Android扫描BLE设备名称不刷新问题

CoreBluetooth:检测设备超出范围/连接超时

从连接的 BLE 设备的 GATT 服务器断开连接

识别正在通知的 BLE 设备

设备配对时,Android BLE 读取数据速率很慢

BLE外围设备断开