我在我的应用程序中使用firebase云消息,我可以接收远程消息,包括数据和我需要的一切。但即使我对远程消息不做任何操作,也会自动出现一个通知,其中包含消息的内容。

public class MyFirebaseMessagingService extends FirebaseMessagingService {
    @Override
    public void onMessageReceived(RemoteMessage remoteMessage) {
        // This line is executed, with the full message
    }
}

有了这段代码,android通知仍然会被触发,我不需要它。我没有设置默认频道,甚至在android 8上(我需要创建一个发送通知的频道),默认情况下也有一个。
如何删除此通知?
我只想以我自己的方式显示通知,而不是Firebase的方式

最佳答案

不要使用通知消息而是使用数据消息。
在通知消息中,当您的应用程序处于后台且无法阻止时,FireBase将始终显示通知。
因此,唯一的方法是使用数据消息并自己处理通知。
发件人:https://firebase.google.com/docs/cloud-messaging/concept-options#notifications_and_data_messages
通知消息:fcm自动将消息显示给
代表客户端应用程序的最终用户设备。通知消息
具有一组预定义的用户可见键和可选数据
自定义键值对的负载。
数据消息:客户端应用程序负责处理数据消息。
数据消息只有自定义的键值对。
在我的所有应用程序中,由于缺乏控制和自定义,我只将通知消息用于非常简单的促销。

07-27 19:17