gpt4 book ai didi

ios - CoreBluetooth Central Manager 无法在后台发现外围设备

转载 作者:技术小花猫 更新时间:2023-10-29 11:04:26 24 4
gpt4 key购买 nike

我有一个使用蓝牙 4.0 LE 的应用程序。该应用程序允许设备充当中央设备和外围设备。

我希望应用程序在后台运行。我已经在 info.plist 中包含了带有“bluetooth-central”和“bluetooth-peripheral”的 UIBackgroundModes。

我在两台启用了低功耗蓝牙 4.0 的不同设备上运行该应用程序。

当两个设备都在前台运行时,一切都会完美运行,并且信息会双向传递。

当一台设备在前台运行,另一台设备在后台运行时,在后台运行的设备可以扫描和发布,但无法发现在后台运行的另一台设备。在前台运行的设备能够发现并连接到在后台运行的设备。

看完Apple's Core Bluetooth Programming Guide ,我知道可以通过两种方式连接到另一台设备并共享信息。

我可以根据要求发布更多信息。谢谢你。

最佳答案

外设应用后台时,广告服务被推送到“溢出区”,外设名称根本不被广告。此外,提高了广告间隔。理论上,iOS BLE 堆栈应该处理这种情况并请求溢出区域数据,但它没有这样做。同时,对后台中心 的扫描也变慢了,另外它需要特定的服务 UUID 才能工作。 (您无法使用 nil 服务在后台扫描)

因此,无法在后台中央扫描后台设备

这是错误还是功能,只有 Apple 知道。打开雷达并告诉他们您的问题。我们这样做的人越多,我们得到回应的机会就越大。

关于ios - CoreBluetooth Central Manager 无法在后台发现外围设备,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18411970/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com