iOS蓝牙背景模式

时间:2015-12-06 12:21:20

标签: ios bluetooth bluetooth-lowenergy

我希望继续扫描蓝牙设备,我希望应用程序在后台运行。可能吗?好像我有一个连接的蓝牙设备,如果有数据传输,那么该应用程序在后台保持清醒状态。但是,如果我只是在后台进行扫描,即使我在plist中Uses Bluetooth LE accessories选中了bluetooth-central,应用程序最终也无法运行。

有没有办法让应用程序保持活动状态,并在设备处于后台时连续扫描设备?

2 个答案:

答案 0 :(得分:8)

如果您的应用程序不会在Apple Store上发布,您可以使用任何后台模式explained here。如果您不了解iOS中的后台执行,请阅读整篇文章 - 您必须知道这是iOS开发人员。

您似乎也完全不了解Core Bluetooth在后台如何工作,因此请阅读this article

简而言之:您需要有充分的理由让您的应用无限期地在后台运行,并被Apple Store Review接受。

编辑:

OP意味着设备不会被唤醒。解决方案:你需要在CoreBluetooth中监听特定的BLE服务才能被唤醒。

答案 1 :(得分:1)

根据Apple开发人员文档的技术问答。

我可以在使用我的应用程序时使用iOS设备发布iBeacon广告吗? 是在后台? 答:不能。对于要发布iBeacon广告的iOS设备,要求此功能的应用必须位于屏幕的最前面 打开并且设备已解锁。

参考-https://developer.apple.com/ibeacon/Getting-Started-with-iBeacon.pdf

我发现本文提供了一些特定情况下在后台连接BLE的详细信息。 https://medium.com/@cbartel/ios-scan-and-connect-to-a-ble-peripheral-in-the-background-731f960d520d