FCM文档指出,当应用程序处于前台状态时,FCM消息将传递到系统托盘。
我想在FirebaseMessagingService中处理这些消息。是否可以访问系统托盘以获取firebase消息(因为我已经有预定的服务)或重新激活FirebaseMessagingService.onMessageReceived行为(如在较早的firebase API版本上一样)?
答案 0 :(得分:1)
onMessageReceived
仅在消息没有附加通知时调用。
因此,对于具有通知和有效负载的消息,将不会被调用。
onMessageReceived为大多数消息类型提供,但以下情况除外:
您的应用在后台运行时发送的通知消息。在这种情况下,通知将传递到设备的系统托盘。用户点击通知会默认打开应用启动器。
同时具有通知和数据有效负载的消息(在后台接收)。在这种情况下,通知将传递到设备的系统托盘,数据有效载荷将在启动器活动的意图之外传递。
如您所见,即使您的应用程序处于后台,也会调用onMessageReceived
。
答案 1 :(得分:0)
由于节电限制,消息在小米设备上消失了。 更改电池管理设置后,数据消息到达