Firebase Cloud Messaging为一组用户发送通知

时间:2016-10-24 11:37:00

标签: firebase firebase-cloud-messaging

我正在使用Firebase开发应用,在应用中有群组,群组中有多个成员。我想根据其中一个用户活动向特定组中的成员发送通知。作为聊天应用中的示例,通知其他人通知有新消息。

我提到this blog post。由于看起来最好的方法是使用Firebase主题消息,所有成员都可以订阅组ID作为主题。

我的事情是如何避免接收通知给行动导致通知的会员。

我尝试将Firebase消息发送到多个主题,但它只允许两个逻辑操作(&&,||)

1 个答案:

答案 0 :(得分:0)

Firebase Cloud Messaging有两种类型的消息:通知消息和数据消息。

Firebase的默认行为是,如果应用在后台或未运行,将自动显示通知消息。无法修改此行为。如果应用程序位于前台,则不会自动显示通知消息,而是会将其发送到您应用的代码。

另一方面,数据消息将始终传递到您应用的代码。

由于发送消息的用户通常会打开应用程序,因此默认行为将自动确保发送用户的设备上不显示通知。

但是在博文中你提到的是竞争条件。如果用户在将通知发送到服务器的时间与服务器发出通知的时间之间关闭应用程序,则通知也可能会在其设备上显示。

如果这是您应用的问题,则不应使用通知消息。改为使用数据消息并在消息中包含足够的信息以检测哪个用户已将其发送(例如用户的uid)。