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