【发布时间】:2017-09-20 14:05:54
【问题描述】:
使用 corebluetooth 库成功连接了我的 BLE 设备,并在我的 ios 应用程序上为某些服务设置了通知值。在前台和后台模式下都能正常工作。
我目前将设备的标识符保存到 UserDefaults 并需要 ios 设备始终连接到设备。
问题:在 ios 应用程序的状态下实现 corebluetooth 的最佳做法是什么?具体来说:
- 当用户打开应用程序时应该实现什么? (目前:我使用保存的标识符重新连接到 ble 设备.. 但这是必要的,因为 corebluetooth 应该自动保持连接到设备)
- 用户后台应用时应该实现什么?
- 当用户从后台重新打开应用程序时应该执行什么? (我应该重新连接到设备吗?)
- 当用户杀死应用程序时应该执行什么?核心蓝牙连接是否断开?
- 当电池电量低,蓝牙被设备掉电或关闭时,应该怎么做?
最后:
是否需要在单例类中实现 corebluetooth 库,以确保应用只使用一个蓝牙管理器来连接设备?
【问题讨论】:
-
由于您已删除上一个问题,我还建议您阅读另一个thread。这可能对您有所帮助。
-
感谢您的帮助,呵呵!翻阅了图书馆2天,终于发现了问题..问题是由cbcentralmanager在appdelegate中分配的位置引起的(forums.developer.apple.com/thread/53750)
标签: ios objective-c swift core-bluetooth