2012-04-23 77 views
1

任何人都可以告诉我CoreBluetooth Framework是否能够启动应用程序(在检测到使用蓝牙的新设备时通知应用程序)。当应用程序没有在后台运行时。另外我想知道应用程序在后台运行时的情况。根据文档,此框架将从挂起状态启动应用程序。任何人都可以分享一些信息,因为我没有Iphone 4S来测试它。CoreBluetoothFramework - 当它未运行时是否启动IOS应用程序

由于提前

+0

您是否在应用程序检测到新设备时启动了应用程序 – srividya 2013-10-11 13:20:07

回答

4

据我所知,推出一个应用程序,无需用户干预的唯一方法是,当你的应用程序使用VoIP服务。要检测蓝牙LE(BTLE)设备,CBCentralManager实例需要在您设计的应用程序的后台运行。否则,无法检测到附近的BTLE设备。

如果你正在设计你的应用程序,core-bluetooth有两种类型的后台启用。事件和会话。

事件Backgrounding
事件backgrounding也许正是与蓝牙低功耗设备交互时,大多数应用程序将使用。此模式不允许在App处于后台时直接与附件通信,但在需要与应用程序通信时会提供附件通知。当您的应用程序处于后台并且将继续监视通知时,iOS将保持连接到BTLE附件。当连接的BTLE附件有可用通知时,iOS会通知用户该附件想要与您的应用程序通话,允许用户加载您的应用程序并与附件进行交互。由于许多设备需要节能,因此只有在确定的时间提供信息才能大大延长配件和iPhone 4S的电池寿命。

- 此模式不需要info.plist条目。

会议Backgrounding
有次,其中一个应用程序必须即使它在后台运行的附件进行交互。考虑一个需要实时监控心率的正在运行的应用程序。这个模型有一个明确的START和STOP。用户开始在应用程序中运行。当运行处于激活状态时,应用程序将读取心率信息,直到运行完成或停止。会话背景还允许扫描并连接到BTLE配件,而App在后台。即使App在后台,scanForPeripheralsWithServices或connectPeripheral call也会继续。 CoreBluetooth将继续监视与您的应用程序正在查找的服务相匹配的特定外围设备或外围设备,并在找到或连接时调用您的应用程序委托。请注意,每当BTLE外围设备或iPhone 4S使用其无线电时,都会耗尽相应设备的可用电量。使用基于会话背景的应用程序开发人员必须注意电源使用情况。

  • 会话背景需要背景模式进入UIBackgroundModes,蓝牙中央,在您的应用程序info.plist。
相关问题