概览

Nearby Messages API 是一种发布-订阅 API,可让您在联网的 Android 和 iOS 设备之间传递小型二进制载荷。设备不必连接到同一网络,但必须连接到互联网。

Nearby 使用低功耗蓝牙在设备之间传递一次性配对码。服务器有助于在检测到相同配对码的设备之间交换消息。当设备检测到附近设备的配对码时,会将该配对码发送到 Nearby Messages 服务器进行验证,并检查是否有任何消息要针对应用的当前订阅集进行传送。

附近消息未经身份验证,不需要 Google 账号。

数据交换的确切机制可能会因版本而异。以下序列显示了导致消息交换的事件:

  1. 发布应用会请求将二进制载荷(消息)与唯一的临时配对代码(令牌)相关联。服务器在消息载荷和令牌之间建立临时关联。

  2. 发布设备使用低功耗蓝牙技术,使附近的设备可以检测到令牌。发布设备还使用低功耗蓝牙扫描来自其他设备的令牌。

  3. 订阅应用将其订阅与令牌相关联,并使用低功耗蓝牙将其令牌发送给发布者,以及检测发布者的令牌。

  4. 当任一方检测到对方的令牌时,都会向服务器报告。

  5. 当两个设备都与一个通用令牌相关联,并且调用应用使用的 API 密钥与 Google Developers Console 中的同一项目相关联时,服务器会促成这两个设备之间的消息交换。

使用 Google Play 服务的 Nearby SDK 时,系统会收集使用情况分析数据,以改进体验。

  • 性能指标:使用 Nearby SDK 时,系统会收集发布和订阅的持续时间以及收到的消息数量。
  • 设备信息:系统会收集设备型号、国家/地区、build 版本和应用软件包名称,并将其与性能指标相关联,以确定区域和设备特定的细分。
  • “附近消息”发布:通过“附近消息”发布的数据由 Google 存储,直到相应消息不再发布为止。此数据会与设备附近的订阅者分享。

最终用户可以前往“设置”>“Google”>“使用情况和诊断信息”,允许或拒绝此数据收集。