在后台应用中处理通知消息

时间:2018-11-28 09:17:40

标签: android firebase firebase-cloud-messaging

当前,我正在使用Firebase推送通知进行通知。我已经使用onMessageReceived()实现了FirebaseMessagingService方法。处于前台状态时,将触发onMessageReceived()通知方法,但是当应用程序处于后台状态时,不会调用onMessageReceived()

我没有得到服务器上可能设置的任何类型的数据。我已经进行了一些研发,但是所有解决方案都针对特定的库显示了handleIntent()或使用getIntent()的解决方案,并且我正在使用17.3.4以上的Firebase库版本。

有人可以告诉我使用应用程序时使用Firebase通知的正确方法吗? 背景状态和被杀死状态?

1 个答案:

答案 0 :(得分:0)

在应用程序前台状态下,onMessageReceived被调用,但在后台状态下,它将不被调用。因此,在您的主要活动中,请按意图遍历其他内容。

 Object value;
        String str;
        if (getIntent().getExtras() != null) {
            for (String key : getIntent().getExtras().keySet()) {
                value = getIntent().getExtras().get(key);

                if(key.equals("key")){
                    str = String.valueOf(value);

                }
            }

        }

“密钥”是您从控制台发送的密钥。 enter image description here

在我的情况下,str等于“测试通知”