概览

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

“附近”功能使用低功耗蓝牙在设备之间传递唯一的实时配对码。服务器可在检测到相同配对码的设备之间实现消息交换。当设备从附近的设备检测到配对码时,会将配对码发送到“附近消息”服务器进行验证,并检查对于应用的当前订阅集,是否有任何消息要传送。

“附近消息”应用未经过身份验证,无需 Google 账号。

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

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

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

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

  4. 只要任一方检测到另一方的令牌,就会向服务器报告。

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

当您使用 Google Play 服务 Nearby SDK 时,系统会收集使用情况分析数据以提升体验。

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

最终用户可以依次转到“设置”>“Google”>“使用情况和诊断信息”来允许或拒绝此项收集。