4

我希望能够使用谷歌附近的 API 从一个用户向另一个用户发送消息。但是,根据他们的指导方针,让设备处于订阅/发布状态会比平时多消耗 2.5-3.5 倍的电量。因此,他们建议您仅在您的活动进入前台后订阅/发布。但这意味着,除非两台设备同时在屏幕上显示应用程序,否则它们将无法相互发送/接收消息。我想让用户 A 进入前台,发送一条消息,当用户 B 进入前台时,让他们看到该消息。

理想的情况是执行类似 firechat 的操作(https://play.google.com/store/apps/details?id=com.opengarden.firechat&hl=en)。您实时发送/接收消息的位置。无论电池消耗如何,他们是否一直在后台进行订阅/发布?

我想补充一点,我的最终目标是能够在附近的人之间进行无摩擦(无需配对)聊天(能够达到 30m 距离)。因此,如果总体上有更好的方法来做到这一点,那将会很有趣。

4

1 回答 1

2
I would like for user A to enter the foreground, send a message, and when user B enters the foreground, for them to see that message.

这正是它的工作原理。每条消息都有一个 TTL(生存时间)属性,默认设置为 300 秒(请参阅:策略)。只要消息是活动的(意味着 TTL 仍然有效并且用户 A 没有取消发布它),用户 B在订阅后很快就能找到它。

使用 Nearby API 进行消息传递的整个概念应该被视为发布-发现流程,而不是标准的发送-接收通信。

于 2015-10-08T22:40:17.000 回答