Android 在onMessageReceived中显示默认通知

Android 在onMessageReceived中显示默认通知,android,firebase-cloud-messaging,android-notifications,Android,Firebase Cloud Messaging,Android Notifications,我正在为Android使用Firebase云消息。当我的应用程序位于前台时,FCM将调用我的应用程序的FirebaseMessagingService子类上的onMessageReceived 当我的应用程序在后台时,Android操作系统将在系统托盘中创建一个默认通知条目。通知条目在我看来相当不错;对于我需要发送的通知,我并不特别需要用通知中断用户。系统托盘中的默认通知很好 我的问题是,当我的应用程序在前台时,如何在onMessageReceived中发出“默认”通知?有没有一种方式可以说,“

我正在为Android使用Firebase云消息。当我的应用程序位于前台时,FCM将调用我的应用程序的
FirebaseMessagingService
子类上的
onMessageReceived

当我的应用程序在后台时,Android操作系统将在系统托盘中创建一个默认通知条目。通知条目在我看来相当不错;对于我需要发送的通知,我并不特别需要用通知中断用户。系统托盘中的默认通知很好

我的问题是,当我的应用程序在前台时,如何在
onMessageReceived
中发出“默认”通知?有没有一种方式可以说,“我不需要截取这个通知;请做你通常会做的事情,如果我在后台”


(我必须用
NotificationCompat.Builder
手动模拟吗?如果是,我需要通过哪些设置才能获得默认行为?

当应用程序位于后台时,您的通知由谷歌服务处理,谷歌服务负责按需显示您的通知,包括默认的点击操作(打开应用程序)和通知图标

当应用程序位于前台时,应用程序将处理收到的消息

是的,您必须模仿NotificationCompat.Builder,使其看起来像默认值。如果不使用onMessageReceived()回调进行拦截,则没有其他方法可以做到这一点

参考: