iOS Corebluetooth 广告和扫描,同时应用程序在后台

标签 ios background bluetooth core-bluetooth

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

在学习Corebluetooth.framework时,发现iOS开发者可以在周边设备上设置两种广告数据。

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

我了解到如果外围设备在后台运行,但是本地名称不会被公布。此外,服务UUID将被设置到溢出区域,中心设备只能通过使用主动扫描才能获得。但是,主动扫描只能在前台运行。

此时我有一个问题。

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

最佳答案

由于您描述的原因,后台中央无法找到后台外围设备:

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

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

关于iOS Corebluetooth 广告和扫描,同时应用程序在后台,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19375913/

相关文章:

ios - 我可以在没有通知许可的情况下使用 FCM 接收消息吗?

30 天后带有 InApp 的 iOS 应用

iphone - 进入后台时使 NSTimer 无效

ios - NSLinguisticTagger:根据标记类型过滤掉指定的标记

ios - 创建 constraintsWithVisualFormat 时 SIGABRT 崩溃

css - 多重背景 : Semi-Transparent Color on a BG

servlets - Servlet 中的后台进程

android - 安卓手机的蓝牙设备类别有哪些?

android - AVG 将我的应用程序检测为恶意软件

ios - ESTBeaconConnection 使 Estimote 信标无法被发现