atitit.极光消息推送服务器端开发实现推送 jpush v3. 总结o7p
https://github.com/jpush/jpush-api-java-client
作者:: 老哇的爪子 Attilax 艾龙, EMAIL:1466519819@qq.com
转载请注明来源: http://www.cnblogs.com/attilax/
以下片断来自项目代码里的文件:cn.jpush.api.examples.PushExample
JPushClient jpushClient = new JPushClient(masterSecret, appKey, 3);
// For push, all you need do is to build PushPayload object.
PushPayload payload = buildPushObject_all_all_alert();
try {
PushResult result = jpushClient.sendPush(payload);
LOG.info("Got result - " + result);
} catch (APIConnectionException e) {
// Connection error, should retry later
LOG.error("Connection error, should retry later", e);
} catch (APIRequestException e) {
// Should review the error, and fix the request
LOG.error("Should review the error, and fix the request", e);
LOG.info("HTTP Status: " + e.getStatus());
LOG.info("Error Code: " + e.getErrorCode());
LOG.info("Error Message: " + e.getErrorMessage());
}
进行推送的关键在于构建一个 PushPayload 对象。以下示例一般的构建对象的用法。
Pushx。Java
private static void single_test(final double i) throws APIConnectionException,
APIRequestException {
core.execMeth_Ays(new Runnable() {
@Override
public void run() {
String r = "";
try {
r = new pushX().push(".", 1099);
} catch (APIConnectionException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
System.out.println(String.valueOf(i) + "::" + r);
}
}, " threadName");
}
public String push(final String txt, final Object... target)
throws APIConnectionException, APIRequestException {
// attilax 老哇的爪子 X5042 o7m // k_56_44 o80 老哇的爪子 Attilax
core.log("---- o8q14 add act n seruinfo before txt:" + txt);
core.log("----add act n seruinfo before len:"
+ String.valueOf(txt.length()));
final String s = jpushCompressor.kmprs(txt);
core.log("----add act n seruinfo aft len:" + String.valueOf(s.length()));
logger.info(txt + "\r\ntarget:" + StringUtils.join(target, ",") + " ");
// new com.attilax.tryX<String>() {
// @Override public String $$(Object t) throws Exception {
// attilax 老哇的爪子 2_q_9 o86
setInvokeTimes();
try {
PushExample.SendPush_msgFmt(s, core.toStrArr(target));
} finally {
// this.respMsg=r;
this.sendMsg = PushExample.sendMsg_thrdloc.get();
}
// catch (APIConnectionException e) {
// respMsg="APIConnectionException";
// }
// catch (APIRequestException e) {
// respMsg=
// }
// return null;
// }
// }.$("");
new com.attilax.tryX<String>() {
@Override
public String $$(Object t) throws Exception {
// attilax 老哇的爪子 2_q_9 o86
// PushExample.SendPush(s, core.toStrArr(target));
return null;
}
}.$("");
String r = PushExample.rzt.get();
return r;
}
atitit.极光消息推送服务器端开发实现推送 jpush v3. 总结o7p
原文:http://www.cnblogs.com/attilax/p/5117420.html