Nearby Messages API 是一种发布-订阅型 API,可让您在连接到互联网的 Android 和 iOS 设备之间传递小型二进制负载。设备不必位于同一网络上,但必须连接到互联网。
附近分享使用低功耗蓝牙在设备之间传递一次性配对码。服务器会促成检测到相同配对码的设备之间的消息交换。当设备检测到附近设备的配对码时,会将配对码发送到 Nearby Messages 服务器进行验证,并检查是否有任何消息要为应用当前的一组订阅传递。
Nearby Messages 未经过身份验证,不需要 Google 账号。
数据交换的确切机制可能会因版本而异。以下序列显示了导致消息交换的事件:
发布应用会请求将二进制载荷(消息)与一次性配对码(令牌)相关联。服务器会在消息负载和令牌之间建立临时关联。
发布设备使用低功耗蓝牙,使附近的设备可以检测到令牌。发布设备还使用低功耗蓝牙扫描其他设备的令牌。
订阅应用将其订阅与令牌相关联,并使用蓝牙低功耗模式将其令牌发送给发布者,并检测发布者的令牌。
当任一方检测到对方的令牌时,都会向服务器报告。
当两台设备都与一个通用令牌相关联,并且调用应用使用的 API 密钥与 Google Developers Console 中的同一项目相关联时,服务器会促成这两台设备之间的消息交换。
使用 Google Play 服务 Nearby SDK 时,系统会收集使用情况分析数据以改善体验。
- 性能指标: 使用 Nearby SDK 时,系统会收集发布和订阅的持续时间以及收到的消息数量。
- 设备信息: 系统会收集设备型号、国家/地区、 build 版本和应用软件包名称,并将其与性能指标相关联,以识别区域和设备特定的细分。
- Nearby Messages 发布: 通过 Nearby Messages 发布的数据由 Google 存储,直到消息不再发布为止。此数据会与设备附近的订阅者共享。
最终用户可以依次前往“设置”>“Google”>“使用情况和诊断信息”,允许或拒绝此收集。