首页 > 解决方案 > 为什么总是在 FirebaseMessagingService 的 onMessageReceived() 方法上获取空白数据

问题描述

我尝试实现推送通知。推动来得很好。该消息显示在状态栏上,但onMessageRecieved()我得到的是空白数组。到目前为止,我正在使用:

@Override
public void onMessageReceived(RemoteMessage remoteMessage) {
    Log.e(TAG, "From: " + remoteMessage.getFrom());


    Map<String, String> data = remoteMessage.getData();
    String value1 = data.get("key1");
    String value2 = data.get("key2");

}

标签: androidfirebasefirebase-cloud-messaging

解决方案


试试这个。msg 是一个字符串变量

     if (remoteMessage.getData() != null && remoteMessage.getData().size() > 0) {
            System.out.println("remoteMessage. Data():" + remoteMessage.getData());
            Map<String, String> data = remoteMessage.getData();
            msg = data.get("body");

        } else if (remoteMessage.getNotification() != null) {
            System.out.println("remoteMessage.Display():" + remoteMessage.getData());
            msg = remoteMessage.getNotification().getBody();
        }

推荐阅读