我正在尝试在BLE断开连接时使我的应用程序在后台运行。但是系统会在一段时间后杀死该应用程序。因此,我阅读了苹果的文档——《Core Bluetooth编程指南》。最后,我在“iOS应用程序的Core Bluetooth后台处理”中发现以下内容:
“在后台执行长期操作
有些应用程序可能需要使用Core Bluetooth框架在后台执行长期操作。例如,假设您正在为配备蓝牙低功耗技术的门锁与iOS设备通信的家庭安全应用程序进行开发。当用户离开家并在用户返回时自动锁定和解锁门时,应用程序和锁定交互都在后台运行。当用户离开家时,iOS设备可能最终超出锁定范围,导致连接丢失。此时,应用程序可以简单地调用CBCentralManager类的connectPeripheral:options:方法,因为连接请求不会超时,所以当用户回家时,iOS设备将重新连接。现在想象一下,如果用户离家几天。如果应用程序在用户离开时被系统终止,则应用程序将无法在用户返回时重新连接到锁,并且用户可能无法打开门。对于这样的应用程序,能够继续使用Core Bluetooth执行长期操作(例如监视活动和挂起的连接)非常关键。”
从这段话中,我们知道“监视活动和挂起的连接可以解决问题”。但是我找不到任何实现“监视活动和挂起的连接”的方法。
Core Bluetooth框架参考
如何实现在BLE断开连接时保持我的应用程序在后台运行?
有人有任何想法吗?