0

我正在使用谷歌的NearBy Messages API从服务器(这里是一个 android 设备)发布一些消息,并从客户端(另一个 android 设备)订阅这些消息。

在这个我想在服务器端维护客户端的日志时间

  • 当客户端找到发布的消息时
  • 当客户端超出范围时
  • 当客户取消订阅时

但到目前为止,我还没有在 API 中找到任何通知上述内容的内容。让我知道是否有任何解决方案。

还有一件事publishing withStrategy.BLE_ONLY给了 status in ResultCallback#onResultlike

Status{statusCode=TTL_SECONDS_INFINITE is not currently supported for publishes., resolution=null}
4

2 回答 2

1

你看过这个开发者指南吗? https://developers.google.com/nearby/messages/android/pub-sub

  • 当客户端找到消息时,这称为 public void onFound(Message message)
  • 当客户端超出范围时,这称为 public void onLost(Message message)
  • 发布者无法知道订阅者何时取消订阅,订阅者自己应该知道何时停止订阅。IE。当它调用取消订阅时。此外,订阅者可以指定 SubscribeCallback 来确定其订阅何时过期或用户停止订阅。请参阅上面的开发人员指南。

对于发布,您现在不能使用 Strategy.BLE_ONLY。您可以使用 Strategy.DEFAULT 进行发布或按照上面指南中的简单示例进行发布。

于 2016-06-22T03:29:07.447 回答
1

如果我正确阅读了您的问题,则您有一个设置,其中一台 Android 设备发布,另一台 Android 设备订阅。基于此,这里有一些答案:

when client found the published message

发布者无法知道订阅者何时找到消息(除非订阅者也发布,发布者也订阅)。

when client goes out of range

发布者将不知道订阅者何时不再在范围内。有两点需要注意:1) 订阅者将知道发布者何时超出范围,因为该信息将在 onLost() 中出现,以及 2) 如果两个设备都发布和订阅,则您想要实现的内容成为可能。

when client cancel subscription

同样,发布者无法知道订阅者何时在您拥有 AFAIK 的设置中停止订阅。

于 2016-06-24T16:08:22.347 回答