6

我目前正在开发一个在后台运行的 iOS 应用程序,该应用程序需要我使用蓝牙 4.0 宣传和扫描设备。

在了解 Corebluetooth.framework 的过程中,我发现 iOS 开发者可以在外围设备上设置两种广告数据。

  1. 设备的本地名称。
  2. 服务 UUID。

我知道外围设备是否在后台运行,但是,本地名称不会被公布。此外,服务 UUID 将设置为中心设备只能通过主动扫描获取的溢出区域。但是,主动扫描只能在前台运行。

在这一点上,我有一个问题。

如果中心设备和外围设备都在后台运行,中心设备能否获取外围设备在溢出区域设置的服务 UUID?那就是当两个iOS应用程序都在后台运行时,是否可以开发一个应用程序,每个应用程序都在后台相互广告和扫描?

4

1 回答 1

3

由于您描述的原因,背景中心无法找到背景外围设备:

  1. 外围设备不宣传服务
  2. 中央只能使用服务过滤进行扫描(在后台时)

这一直是 iOS 6 中的一个问题,直到现在我还没有看到任何人能够在 iOS 7 中做到这一点。(进一步的测试正在进行中。)

于 2013-10-16T07:40:38.553 回答