在java中使用parse4j向设备发送推送通知

时间:2014-09-24 12:29:03

标签: java ios gwt parse-platform parse4j

我使用parse4j库进行服务器端编码,在客户端使用iOS设备。现在我想从我在JAVA中开发的Web浏览器页面发送推送通知,其中我使用parse4j库通过Parse云与iOS设备进行通信。我正在使用gwt对服务器端进行编码。

public void sendPushtoIOS() {
    Parse.initialize("appId", "restApiId");
    ParsePush parsePushObj = new ParsePush();
    parsePushObj.sendInBackground("hello from server",null);
}

我正在尝试使用上面的代码发送通知,但没有任何反应,iOS设备也没有收到任何通知。请有人指导我写的代码是否正确,如果没有,我该如何发送通知呢?

3 个答案:

答案 0 :(得分:2)

try {
    String rawJSON = "{\"aps\":{\"alert\":\""+"your message"+"\"},\"alerts\":{\"others\":\""+others+"\"}}";
    PushNotificationPayload payload=PushNotificationPayload.fromJSON(rawJSON);
    Push.payload(payload, "path of certificate.p12", password,false, appleDeviceToken);
}
catch (Exception e) {

}

答案 1 :(得分:0)

据我所知,您正在使用Parse4j库发送推送通知。如果可以发送Push通知,您是否控制了当前版本的parse4j?或者它正在等待增强?一个建议;为了发送推送通知,请编写云代码并从parse4j触发此云代码。然后云代码将发送推送通知。

希望这有帮助, 问候。

答案 2 :(得分:0)

这个库工作正常。您可以在解析仪表板中检查推送,很可能是您收集推送请求。唯一的问题是图书馆与渠道合作。也许你没有设置频道。 如果您想使用条件,请在库中添加以下代码行

JSONObject local = new JSONObject();
local.put("deviceType", "android");
data.put("where", local);

并删除

data.put("channel", "");
data.put("channels", new JSONArray(this.channelSet));

所有这些更改必须在类ParsePush

中的方法getJSONData()中完成

而不是Android,您可以设置您的设备