如何从BLE设备控制iOS应用程序进行后台处理而无需将应用程序放在前面

时间:2014-06-25 07:28:58

标签: ios ios7 bluetooth bluetooth-lowenergy core-bluetooth

我正在开发支持蓝牙低功耗(BLE)的DSLR(数码相机)控制器,它可以接收GPS坐标并允许远程聚焦/快门控制。

在理想的情况下,我不必从口袋里取出我的iPhone。 BLE设备在我的相机开启后立即连接,如果应用程序尚未启动,则应启动应用程序。当相机关闭时,BLE断开连接,应用程序应进入睡眠模式(停止更新位置并通过BLE发送数据)(请注意,此时应用可能处于后台)。当相机再次关闭时(当应用程序处于后台/ iphone锁定时),应用程序应重新连接并开始更新位置并将数据发送到BLE接收器。

要问的很多,可能太好了,不可能,但这可能吗? (iOS 7+ SDK可以)

1 个答案:

答案 0 :(得分:0)

您可以在后台操作蓝牙LE中央(扫描外围设备) - 但请参阅Core Bluetooth Programming Guide,而在后台外围扫描和检测可能不会像应用程序在前景。

您的应用可以在检测到外围设备时发布本地通知,并且用户可以响应此通知以将您的应用启动到前台,但您无法在没有用户互动的情况下强制您的应用进入前台。即使您的应用程序在后台,您也可以通过BLE向摄像机发送信息,您也可以在后台接收位置信息 - 请参阅核心位置编程指南。

断开是直截了当的。当您检测到断开连接时,您可以关闭位置服务以节省电池电量。