如何为iOS推送通知传递JSON对象

时间:2015-02-20 14:02:10

标签: java ios json apple-push-notifications javapns

我正在使用javapns向iOS设备发送推送通知,并且通常使用两种方法:alert()和payload()。使用此功能中的任何一个,我们都可以向iOS设备发送推送通知。这里我需要传递json对象,而不是在这些方法中的任何一个内部发送简单消息。所以,任何人都可以告诉我如何实现这一目标。

2 个答案:

答案 0 :(得分:0)

使用Push. payload(........)方法,它需要Payload个对象。

String rawJSON = "{\"aps\":{\"alert\":\"Message received from Bob\"},\"acme2\":[\"bang\",\"whiz\"]}";
Payload payload = new Payload(rawJSON);
//Or as mentioned in the comments
PushNotificationPayload payload = PushNotificationPayload.fromJSON(rawJSON);

json的例子是

{
    "aps" : { "alert" : "Message received from Bob" },
    "acme2" : [ "bang",  "whiz" ]
}

对于有效负载json The Notification Payload

javapns docs read here

答案 1 :(得分:0)

忽略APNS.newPayload如何创建默认的paypload。

像这样创建自定义有效负载。

JSONObject requestedData = new JSONObject();
requestedData.put("id", 1);
requestedData.put("firstName", "K");
requestedData.put("lastName", "Joshi");

JSONObject aps = new JSONObject();
aps.put("alert", "KJ sent a message");
JSONObject request = new JSONObject();
request.put("aps", aps);
request.put("requestedData", requestedData);
//Create Payload
String payload = request.toString();
//Push
apnsService.push("deviceid", payload);