iOS - 在后台扫描BLE设备

时间:2014-10-04 12:17:34

标签: ios bluetooth-lowenergy

我注意到scanForPeripheralsWithServices无法在后台运行。我尝试了以下内容:

  1. 指定UUID和选项nil
  2. 设置UIBackgroundModes bluetooth-central和bluetooth-peripheral info.plist
  3. 我想要一个后台服务,它应该连续扫描背景中的BLE设备。 谢谢你的帮助!

1 个答案:

答案 0 :(得分:0)

后台模式对扫描的工作方式不同。

每个外围设备仅在第一次观察时被报告(在后台模式下,如果不连接RSSI,则无法跟踪RSSI的接近度。)

您可以向不在范围内的外围设备发起连接请求,并在外围设备可用时完成连接。不必主动扫描(初始发现除外,因此您知道要连接的UUID)。

也许,您可以在后台发送连接请求而不是扫描来解决问题。这样,iOS知道你真的对特定的外围设备感兴趣,我可以想象这会影响发现时间。