概览

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

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

附近发消息功能无需身份验证,也不需要 Google 账号。

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

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

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

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

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

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

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

  • 性能指标:使用附近分享 SDK 时,系统会收集发布和订阅的持续时间以及收到的消息数量。
  • 设备信息:系统会收集设备型号、国家/地区、build 版本和应用软件包名称,并将其与性能指标相关联,以识别地区和设备专用 slice。
  • 附近发送的消息会发布以下内容:Google 会存储通过附近发送的消息发布的数据,直到消息不再发布。系统会与位于设备附近的订阅者共享这些数据。

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