Как добавить JSON в полезную нагрузку в push-уведомлении JavaPNS?

1

Я хочу добавить JSON с уведомлением. Теперь я могу отправить предупреждение. Как я могу отправить JSON с уведомлением?

Код фрагмента Я использую сейчас:

PushNotificationPayload payload = PushNotificationPayload.complex();
payload.addAlert("Hello!!!");
payload.addBadge(1);
payload.addSound("default");
payload.addCustomDictionary("id", "1");
List<PushedNotification> NOTIFICATIONS = Push.payload(payload, "D:\\ios_dev.p12", "1234", true, "b3ead5d64ba0e08241e236f3ee041d8a9f036b39a0b0537e99a5f8b0607");

for (PushedNotification NOTIFICATION : NOTIFICATIONS) {
  if (NOTIFICATION.isSuccessful()) {
     System.out.println("PUSH NOTIFICATION SENT SUCCESSFULLY TO: " + NOTIFICATION.getDevice().getToken());
  }
}

Я хочу добавить JSON как:

{
  "message": message,
  "m_id": mId,
  "callNo": callNo
}

Как я могу это передать?

Теги:
notifications
javapns

2 ответа

2
Лучший ответ

Я нашел решение для вас.

PushNotificationPayload payload=PushNotificationPayload.fromJSON("{\"aps\":{\"content-available\":1,\"sound\":\"\",\"alert\":\"Some alert\"}}");

Возьмите только String, создайте объект JSON и передайте как String в 'PushNotificationPayload.fromJSON'

Меня устраивает :)

0

Я очень опаздываю на вечеринку, но для будущих читателей: вы можете добавить произвольный объект JSON к PushNotificationPayload с помощью метода addCustomDictionary который принимает Object в качестве второго параметра. Рассматривая исходный код, кажется, что вся полезная нагрузка является экземпляром JSONObject и что Object переданный addCustomDictionary, напрямую добавляется к нему. Итак, если вы JSONObject экземпляр JSONObject в addCustomDictionary, он будет правильно сериализован как объект JSON при отправке сообщения.

Если ваш пользовательский объект JSON большой, не забудьте использовать PushNotificationBigPayload.complex() для создания экземпляра PushNotificationPayload вместо PushNotificationPayload.complex().

Ещё вопросы

Сообщество Overcoder
Наверх
Меню