7

当我的应用程序在后台运行时,我无法弄清楚如何接收蓝牙 LE 外围设备广告。也就是说,当我的应用程序在后台时,它永远不会到达 didDiscoverPeripheral() 方法——广告所在的位置。有谁知道我需要如何配置我的应用程序,以便在我的应用程序处于背景?当我的应用程序在后台时,这可以通过线程轮询来完成吗?注意:我想从所有 BLE 设备获取广告,而不是定义数量的 BLE 设备。

感谢帮助,

凯西

4

1 回答 1

8

我正在从我的应用程序中执行此操作。

在后台模式下,CoreBluetooth 据说比外围设备的广告间隔慢 55 倍。为了加快速度,我对外围设备进行了编程,使其在前 30 秒内每 20 毫秒发布一次广告。

此外,您必须在项目 Targets -> Info 中使用“App 使用 CoreBluetooth 进行通信”定义“需要后台模式”。

应用程序确实需要一段时间才能在后台模式下找到外围设备。

于 2012-12-29T23:22:08.483 回答