sya*_*yam 9 android firebase firebase-cloud-messaging
我从firebase获取的数据有效负载不是json格式,而是我得到以下格式的自定义键值对:
Data Payload:{image=https://www.xxxx.xxx/get-profile-picture, message=This is a test message., senderName=Mathew John}
Run Code Online (Sandbox Code Playgroud)
我必须使用Json解析来解析数据以进行进一步处理.这是我的代码:
@Override
public void onMessageReceived(RemoteMessage remoteMessage) {
if (remoteMessage.getData().size() > 0) {
Log.e(TAG, "Data Payload: " + remoteMessage.getData().toString());
try {
JSONObject json = new JSONObject(remoteMessage.getData().toString());
String title = remoteMessage.getData().get("senderName");
System.out.println("raja" + title);
String msg = remoteMessage.getData().get("message");
System.out.println("raja" + msg);
sendMessage(msg,title);
} catch (JSONException e) {
e.printStackTrace();
}
}
}
Run Code Online (Sandbox Code Playgroud)
Nil*_*hod 12
我从firebase获取的数据有效负载不是json格式
Yes,它的行为符合预期.
因为数据有效负载custom key-value pairs不包含JSON格式
我必须使用
Json解析来解析数据以进行进一步处理.
您需要使用Map<String, String>将数据有效负载转换为JSONObject
检查以下示例
示例代码
Map<String, String> params = remoteMessage.getData();
JSONObject object = new JSONObject(params);
Log.e("JSON_OBJECT", object.toString());
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1951 次 |
| 最近记录: |