当蓝牙设备靠近时唤醒ios应用程序

时间:2014-01-30 02:28:36

标签: ios objective-c cocoa-touch core-bluetooth

我在后台运行核心蓝牙来扫描设备。它工作正常,当我手动退出应用程序时,它几乎停止。 Apple文档声明该应用程序有时会被外围设备唤醒,这可能会使其从暂停状态大约10秒左右,执行某些操作然后再返回暂停状态。

来源: https://developer.apple.com/library/IOs/documentation/NetworkingInternetWeb/Conceptual/CoreBluetooth_concepts/CoreBluetoothBackgroundProcessingForIOSApps/PerformingTasksWhileYourAppIsInTheBackground.html

为了使其工作,外围设备是否需要已经“连接”才能唤醒应用程序?或者任何新的(未发现的)外围设备可以唤醒应用程序吗?

1 个答案:

答案 0 :(得分:6)

您的应用只会因周边事件(连接/断开连接等)而被唤醒。但是,如果用户选择强制终止您的应用(在iOS 7中向上滑动),您的应用将无法唤醒这些事件。 iOS系统将删除您,直到用户再次手动打开您的应用程序。

为了订阅这些外围唤醒事件,您需要在启动管理器时传入具有相应恢复选项的NSDictionary。您在上面的问题中添加的链接中提供了确切的详细信息。

至于你的上一个问题:不,扫描然后找到一些外设不会在后台唤醒你的应用程序。它仅适用于预先指定的外围设备。