import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
import com.alibaba.fastjson.JSONObject;
import com.gexin.rp.sdk.base.IPushResult;
import com.gexin.rp.sdk.base.impl.SingleMessage;
import com.gexin.rp.sdk.base.impl.Target;
import com.gexin.rp.sdk.exceptions.RequestException;
import com.gexin.rp.sdk.http.IGtPush;
import com.gexin.rp.sdk.template.LinkTemplate;
import com.gexin.rp.sdk.template.TransmissionTemplate;
import com.gexin.rp.sdk.base.payload.APNPayload;
public class PushtoSingle {
private static String appId = "6VRPucrCCMAmVFpzJSiTD5";
private static String appkey = "vBOsSFYSAr8be0ampsfEp8";
private static String master = "6nehewbFTgANLcAAk97TQ2";
private static String url = "http://sdk.open.api.igexin.com/serviceex";
static String host = "http://sdk.open.api.igexin.com/apiex.htm";
public static void main(String[] args) throws Exception {
IGtPush push = new IGtPush(host, appkey, master);
// LinkTemplate template = linkTemplateDemo();
SingleMessage message = new SingleMessage();
message.setOffline(true);
message.setOfflineExpireTime(24 * 3600 * 1000);
message.setData(transmissionTemplateDemo());
message.setPushNetWorkType(0);
Target target = new Target();
target.setAppId(appId);
// target.setClientId(CID);
target.setAlias("1026");
IPushResult ret = null;
try {
ret = push.pushMessageToSingle(message, target);
} catch (RequestException e) {
e.printStackTrace();
ret = push.pushMessageToSingle(message, target, e.getRequestId());
}
if (ret != null) {
System.out.println(ret.getResponse().toString());
} else {
System.out.println("��������Ӧ�쳣");
}
}
//透传消息
public static TransmissionTemplate transmissionTemplateDemo() {
TransmissionTemplate template = new TransmissionTemplate();
template.setAppId(appId);
template.setAppkey(appkey);
template.setTransmissionType(1);
Map<String,Object> mapObject=new HashMap<String,Object>();
mapObject.put("CUST_ID", "1026");
mapObject.put("NOTICE_ID", "13");
mapObject.put("NOTICE_URL", "http://www.baidu.com");
mapObject.put("IS_SEND", "2");
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
mapObject.put("SEND_DATE",sdf.format(new Date()));
mapObject.put("MSG_SOURCE", "8"); //消息类型
mapObject.put("ORDER_ID", "ddd");
mapObject.put("ORDER_NUM", "CD111111111");
mapObject.put("NOTICE_TITLE","通讯中");//标题
mapObject.put("MSG_DETAIL", "充电异常章思充电异常章思充电异常章思充电异常章思充电异常章思充电异常章思充电异常章思23发发大是大非"); //内容
JSONObject obj=new JSONObject(mapObject);
template.setTransmissionContent(obj.toJSONString());
//特别说明:推送内容,如果后台加入了下面APNS内容,则可以走全局,哪怕应用退出,也可以弹开内容,而这段代码不会影响到ANDROID开发
{
APNPayload payload = new APNPayload();
payload.setBadge(1);
payload.setContentAvailable(1);
payload.setSound("default");
// payload.setCategory("$由客户端定义");
payload.setAlertMsg(new APNPayload.SimpleAlertMsg("推送异常..."));
// 字典模式使用下者
// payload.setAlertMsg(getDictionaryAlertMsg());
template.setAPNInfo(payload);
}
return template;
}
}
个推JAVA版本中,关于走APNS通道的写法
最新推荐文章于 2021-08-12 15:02:56 发布