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
}

我怎么能通过这个?

4

2 回答 2

2

我为你找到了解决方案。

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

只取一个字符串,创建 JSON 对象并作为字符串传递给 'PushNotificationPayload.fromJSON'

这个对我有用 :)

于 2015-03-26T17:45:56.317 回答
0

我参加聚会已经很晚了,但是对于未来的读者:您可以使用将 a作为第二个参数PushNotificationPayloadaddCustomDictionary方法将任意 JSON 对象添加到 a。Object源码,好像整个payload都是一个JSONObject实例,而Object传递的toaddCustomDictionary是直接加进去的。因此,如果您将JSONObject实例传递给addCustomDictionary,则在发送消息时它将被正确序列化为 JSON 对象。

如果您的自定义 JSON 对象很大,请记住使用PushNotificationBigPayload.complex()创建PushNotificationPayload实例而不是PushNotificationPayload.complex().

于 2016-08-23T17:17:43.797 回答