How to get custom data from android firebase notif

2019-04-07 21:24发布

I'm trying to implement firebase notifications. But I have trouble finding any documentation on how to retrieve custom data from firebase notification.

Firebase console

But in in code how to get the custom key.

enter image description here

I'm using FirebaseMessagingService.onMessageReceived to get the message data.

@Override
public void onMessageReceived(RemoteMessage remoteMessage) {
    // TODO(developer): Handle FCM messages here.
    // If the application is in the foreground handle both data and notification messages here.
    // Also if you intend on generating your own notifications as a result of a received FCM
    // message, here is where that should be initiated. See sendNotification method below.
    Log.d(TAG, "From: " + remoteMessage.getFrom());
    Log.d(TAG, "Notification Message Body: " + remoteMessage.getNotification().getBody());
}

2条回答
对你真心纯属浪费
2楼-- · 2019-04-07 22:07

You can check your custom data using:

for (Map.Entry<String, String> entry : remoteMessage.getData().entrySet()) {
    String key = entry.getKey();
    String value = entry.getValue();
    Log.d(TAG, "key, " + key + " value " + value);
}

To get specific key:

String value = remoteMessage.getData().get("<YOUR_KEY>");
查看更多
爷、活的狠高调
3楼-- · 2019-04-07 22:16

Let A be your key, then you can easily parse this value by using the following code.

JSONObject json = new JSONObject(remoteMessage.getData());
    Iterator itr = json.keys();
    while (itr.hasNext()) {
    String key = (String) itr.next();
           if (key.equals("A")) {
                flag = json.getString(key);
           }
           Log.d(TAG, "..." + key + " => " + json.getString(key));
    }
查看更多
登录 后发表回答