ios - 为什么在使用 CoreBluetooth 时会发生这种情况?
问题描述
我制作了一个演示 iOS 应用程序,通过它我可以跟踪附近的 BLE 设备,当我用这种方法接到电话时
centralManager:didDiscoverPeripheral:advertisementData:RSSI
我使用找到的外围设备的信息创建本地通知。当我的应用程序处于前台状态时,这工作正常。但是然后杀死了该应用程序并且什么也不做。突然间,当应用程序未运行时,我收到了本地通知。我读到 CoreBluetooth 无法从未运行状态唤醒 iOS 应用程序。这怎么可能?这种情况不是连续的,而是有时会发生。
解决方案
Core Bluetooth 可以唤醒(甚至启动)iOS 应用。我不确定谁告诉你不能。这是一个非常重要的特性。也许你的意思是你没想到它会启动一个被强制退出的应用程序?通常这是真的,但系统可能会或可能不会将您的应用程序从其观察者列表中删除。它不保证您在强制退出后不会重新启动。
推荐阅读
- python - 将单个 8 位值 (0-255) 转换为 3、8 位值
- answer-set-programming - ASP 中的谋杀谜题
- javascript - 以角度将文件转换为base64
- javascript - VueJS 模板未在 Laravel 7 中呈现
- sql - SQL查询以获取其他行的平均总和并存储在当前行中
- python - 将 numpy.einsum 用于切片的张量点
- perl - 想知道 sed 或 awk 是否可以使用行号重新排序
- javascript - 如何在 componentWillUnmount 中从 core-ui/react 隐藏 AppAsideToggler 组件?
- list - 使用冒泡排序按长度对列表中的列表进行排序 - Haskell
- reactjs - 如果您必须拆分代码以提高性能,那么单页大型应用程序的意义何在?