我想每小时将 BLE 传感器连接到我的 iOS 设备,以便将数据从传感器传输到 iOS 设备。如果应用程序在前台,从发现到连接到读取/写入数据,一切都很好。读/写我的 BLE 传感器后,我断开 iOS 设备与传感器的连接,传感器进入睡眠状态。
现在,当下一个同步周期到来(即下一小时)并且应用程序在后台时,我需要再次扫描外围设备并从中读取数据。当应用程序在后台时,是否可以发出命令扫描外围设备?
- 我已将后台模式启用为
bluetooth-central
. - 我已经实现了 CBCentralManager 的所有代表,但是当应用程序处于后台并且外围设备正在广告数据时没有得到任何回调。(
-didDiscoverPeripheral
, 或-didConnectPeripheral
)
所以我的问题是:
- 当我的应用程序在后台时,我应该在哪里
scanForPeripheralsWithServices
通过提供相应的服务 UUID 来传递命令 ()? - 有没有一种方法可以让我在后台连续扫描 BLE 设备,或者像每小时一样按某个时间表扫描?