Java 当应用程序不在前台时,在服务中接收FCM数据消息

Java 当应用程序不在前台时,在服务中接收FCM数据消息,java,android,firebase,firebase-cloud-messaging,background-service,Java,Android,Firebase,Firebase Cloud Messaging,Background Service,FCM文档说明,当应用程序位于前台时,FCM消息会传递到系统托盘 我想在FirebaseMessagingService中处理这些消息。是否可以访问系统托盘以获取firebase消息(因为我已经有一个计划服务)或重新激活FirebaseMessagingService.onMessageReceived行为,就像在旧的firebase API版本上一样?onMessageReceived仅当消息没有附加通知时才会调用。 因此,对于同时具有通知和负载的消息,不会调用它 根据: onMessageR

FCM文档说明,当应用程序位于前台时,FCM消息会传递到系统托盘


我想在FirebaseMessagingService中处理这些消息。是否可以访问系统托盘以获取firebase消息(因为我已经有一个计划服务)或重新激活FirebaseMessagingService.onMessageReceived行为,就像在旧的firebase API版本上一样?

onMessageReceived
仅当消息没有附加通知时才会调用。 因此,对于同时具有通知和负载的消息,不会调用它

根据:

onMessageReceived适用于大多数消息类型,但以下例外情况除外:

当你的应用程序在后台时发送通知消息。在这种情况下,通知将发送到设备的系统托盘。默认情况下,用户点击通知会打开应用程序启动器

在后台接收时,同时包含通知和数据负载的消息。在这种情况下,通知被传送到设备的系统托盘,数据有效负载在启动器活动的目的的附加部分中传送


如您所见,即使您的应用程序位于后台,也会调用onMessageReceived。

由于节能限制,消息在小米设备上消失。
更改电池管理设置后,数据信息到达

@FurkanYurdakul抱歉,这是一个打字错误,我应该写“无通知”而不是“无数据负载”