即使我的应用程序处于后台,当蓝牙设备与 iOS 连接或断开连接时,是否可以收到通知?
在 Android 上,我使用ACTION_ACL_CONNECTED
and ACTION_ACL_DISCONNECTED
事件。但我找不到 iOS 的等效项。
我找到了CBCentralManager
可用于监视蓝牙事件,但是当蓝牙设备连接/断开连接时,仅当我启用/禁用蓝牙时,才调用我的函数。这是我这边的错误还是正常现象?
我还找到了有关音频路由更改的文档,这也可以是检测蓝牙连接/断开连接的想法。只需检查新路由的种类并检测当时连接的蓝牙设备即可。
在文档中,我还发现NSNotification
类型如IOBluetoothHostControllerXXX
但没有任何关于它们的解释。有人已经使用过它们吗?
有更好的东西还是我错过了什么?
您无法接收有关蓝牙外围设备连接和断开连接的通知一般来说。您可以获得 BLE 外设的连接和断开事件your app连接到.
例如,如果您的应用程序启动与心率传感器的连接,那么您将接到电话CBCentralManagerDelegate
连接成功时的连接功能。如果该设备随后关闭或超出范围,那么您将收到对断开连接委托方法的调用。
如果其他应用程序启动并建立连接,那么您将不会收到回调。
正如您所提到的,您可以监视音频路由更改以推断蓝牙音频设备已连接/断开,但插入耳机时也会触发。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)