конвертировать ответ уведомления fcm в json

Bundle
[{
google.sent_time=1487229288769,
gcm.notification.created_at=2017-02-16 12:44:52,
gcm.notification.e=1,
gcm.notification.Content_available=1,
gcm.notification.badge=1,
gcm.notification.title=, from=388143837768,
google.message_id=0:1487229288775757%19aca14d19aca14d,
gcm.notification.body=hi,
gcm.notification.uid=160,
collapse_key=com.sid.Smessenger
}]

Я получаю ответ выше от fcm и хочу преобразовать его в json
пожалуйста, проверьте код Android выше.

получать ответ от remoteMessage.
Я не получаю данные в getBody ().
получить только нулевое значение.

public void onMessageReceived(RemoteMessage remoteMessage)
{
Log.d(TAG, "FROM: " + remoteMessage.getFrom());
remoteMessage.getFrom();

if (remoteMessage.getData().size() > 0)
{
Log.d(TAG, "Message data: " + remoteMessage.getData());
}
if (remoteMessage.getNotification() != null)
{
Log.d(TAG, "Message body:" +
remoteMessage.getNotification().getBody());

String questionId =
remoteMessage.getData().get("gcm.notification.gid");
String userId =
remoteMessage.getData().get("gcm.notification.uid");
Log.e("Group ID", questionId);
Log.e("U ID", userId);

Bundle bundle = new Bundle();
for (Map.Entry<String, String> entry :
remoteMessage.getData().entrySet()) {
bundle.putString(entry.getKey(), entry.getValue());
Log.e(entry.getKey(), entry.getValue());

//run it/// and get notification///
}
// String created_at = remoteMessage.
sendNotification(remoteMessage.getNotification().getBody());
}

// String value = bundle.getString("request");
}

0

Решение

Из вашего фрагмента ответа я считаю, что вы говорите о том, как вы должны сделать это на Android.

Он находится в формате JSON, но упакован в ваш пакет данных, который вы получили как
аргумент в функции приемника FCM попробуйте получить значения из вашего пакета, как
Обычно мы делаем в Android.

Вместо того, чтобы думать «JSON», подумайте «пары ключ / значение». Ваш сервер
отправляет данные в парах ключ / значение. Ваше приложение получает эти данные как
пары ключ / значение в дополнениях в Intent, которые вы получаете. Ты знаешь какие у тебя ключи
так что просто извлекайте значения из дополнений, которые привязаны к
эти ключи (например, getStringExtra («message»), getStringExtra («title»))

Надеюсь, это решит вашу проблему.

1

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector