关于ios极光推送server端注意的地方
今天试用了极光推送API
用它是因为,大多数人说它的文档是最全的,但是用过之后,发现关于IOS的文档,还是很不够,导致走了一点弯路!
特别是服务端的代码:https://github.com/jpush/jpush-api-java-client for java
JPushClient jpushClient = new JPushClient(masterSecret, appKey, 0, DeviceEnum.Android, false);
CustomMessageParams params = new CustomMessageParams();
params.setReceiverType(ReceiverTypeEnum.TAG);
params.setReceiverValue(tag);
MessageResult msgResult = jpushClient.sendCustomMessage(msgTitle, msgContent, params, null);
LOG.debug("responseContent - " + msgResult.responseResult.responseContent);
if (msgResult.isResultOK()) {
LOG.info("msgResult - " + msgResult);
LOG.info("messageId - " + msgResult.getMessageId());
} else {
if (msgResult.getErrorCode() > 0) {
// 业务异常
LOG.warn("Service error - ErrorCode: "
+ msgResult.getErrorCode() + ", ErrorMessage: "
+ msgResult.getErrorMessage());
} else {
// 未到达 JPush
LOG.error("Other excepitons - "
+ msgResult.responseResult.exceptionString);
}
}这是它的推送案例,只有android的,没有IOS的!
附送ios的代码:
后来发现IOS完全不能试用sendCustomMessage这个方法.
/**
*
*/
package org.haoyi.push;
import java.util.HashMap;
import java.util.Map;
import org.apache.log4j.Logger;
import cn.jpush.api.JPushClient;
import cn.jpush.api.common.DeviceEnum;
import cn.jpush.api.push.IosExtras;
import cn.jpush.api.push.MessageResult;
import cn.jpush.api.push.NotificationParams;
import cn.jpush.api.push.ReceiverTypeEnum;
/**
* @author zfanxu
*
*/
public class PushDemo {
public static final int MAX = Integer.MAX_VALUE / 2;
public static final int MIN = MAX / 2;
private static Logger LOG = Logger.getLogger(PushDemo.class);
public static void main(String[] args) {
JPushClient jpushClient = new JPushClient(Config.JPUSH_MASTER_SECRET,
Config.JPUSH_APPKEY, 0, DeviceEnum.IOS, false);
for (int i = 0; i < 1; i++) {
String notificationContent = "show me your money!";
NotificationParams param = new NotificationParams();
param.setSendNo(getRandomSendNo());
param.setReceiverType(ReceiverTypeEnum.REGISTRATION_ID);
param.setReceiverValue("071f06f8c18");
Map<String, Object> extras = new HashMap<String, Object>();
IosExtras iosExtra = new IosExtras(1, "message.wav");// badge
// set badge and sound
extras.put("ios", iosExtra);
MessageResult msgResult = jpushClient.sendNotification(
notificationContent, param, extras);
if (msgResult.isResultOK()) {
LOG.info("msgResult - " + msgResult);
LOG.info("messageId - " + msgResult.getMessageId());
} else {
if (msgResult.getErrorCode() > 0) {
// 业务异常
LOG.warn("Service error - ErrorCode: "
+ msgResult.getErrorCode() + ", ErrorMessage: "
+ msgResult.getErrorMessage());
} else {
// 未到达 JPush
LOG.error("Other excepitons - "
+ msgResult.responseResult.exceptionString);
}
}
}
}
/**
* 保持 sendNo 的唯一性是有必要的 It is very important to keep sendNo unique.
*
* @return sendNo
*/
public static int getRandomSendNo() {
return (int) (MIN + Math.random() * (MAX - MIN));
}
}先挖个坑,下班后,再填满!
相关推荐
发条戏子 2019-12-17
fengjb 2019-11-05
缘来如此 2015-04-01
jscjxysx 2019-09-08
liujia 2019-07-01
wangdazhu0 2015-10-06
好好学习天天 2019-06-27
MonkeyKingBi 2019-06-27
手把手教你学安卓 2019-06-21
mlsnatalie 2015-04-01
IT运维小白 2016-04-15
KUNPHP 2018-09-06
张明云的知识共享 2018-05-21
安在信息安全新媒体 2018-04-04
龙玉崇拜的起源与华夏北来说 2018-01-25
稀土 2017-12-27
chenxiangpeng 2019-06-28
大数据实战派 2019-06-21
微软信仰中心 2017-12-11