FCM for android:当应用程序处于后台时弹出系统通知

时间:2017-02-18 12:45:04

标签: android firebase push-notification firebase-cloud-messaging

是否可以在屏幕顶部显示firebase系统通知的弹出窗口(当app在后台时)?我使用setPriority(Notification.PRIORITY_MAX)来显示前台onMessageReceived的通知。

我同时使用notificationdata字段,因此我无权访问前台收到的通知。我尝试将priority设置为high并使用仅通知推送 - 没有任何帮助。

2 个答案:

答案 0 :(得分:3)

当使用仅onMessageReceived有效负载时,当您的应用处于后台时,才能在data中处理该消息。

在您的有效负载中同时使用notificationdata时,预期的行为是Android系统将在应用处于后台时处理通知,而不管您的{{{{} 1}}。

有关详细信息,请参阅Handling Android Messages上的官方文档。

答案 1 :(得分:0)

如果您仅在通知中发送了数据字段,则可以在以下功能中处理通知

@Override
public void onMessageReceived(RemoteMessage remoteMessage) {

    if (remoteMessage.getData().size() > 0) {
        Log.d(TAG, "Message data payload: " + remoteMessage.getData());
    }

    // Check if message contains a notification payload.
    if (remoteMessage.getNotification() != null) {
        Log.d(TAG, "Message Notification Body: " +remoteMessage.getNotification().getBody());
    }

}

请注意,该请求中不包含通知字段