准备
1. Cid
手机的唯一标识 通过此cid可以发送消息到达指定的手机app App 会在登录的时候将用户的cid 和用户信息一起上传到服务器
2. Api key
推送需要配置的官方key,集成到项目中即可 注:测试key 测试app
apiId:7UC5gPVsl88KkNPCwpksEA
apiKey:kHp4cdwSJi8iAipW91WWZ9
masterSecret:qmIcfZMWCNA0KTvQr2vvi5
url = "http://sdk.open.api.igexin.com/apiex.htm"
host = "http://sdk.open.api.igexin.com/apiex.htm"
二、集成
1. 外部jar
个推jar:官网 Api jar :附件
2. Maven
<dependency>
<groupId>com.gexin.platform</groupId>
<artifactId>gexin-rp-sdk-http</artifactId>
<version>4.1.0.5</version>
</dependency>
三、Api
1. 发送一条
示例:
@Test
public void test2() throws Exception {
//填入key
GtPush push = new GtPush(String appId,String appKey,String masterSecret,String host);
//设置消息内容
push.setGtPush_gt(String cid, String title, String content);
//推送
String msg = push.pushStart_gt();
System.out.println(msg);
}
返回值:
{result=ok, taskId=OSS-0115_6e01cf68ee10d21a6adde5dd758693a2, status=successed_offline}
错误返回值详见 官方文档 http://docs.getui.com/getui/server/java/errorcode/
2. 批量发送
@Test
public void test4() throws Exception {
//填入key
GtPush push = new GtPush(String appId,String appKey,String masterSecret,String host);
//封装要发送的消息
List<Map<String,String>> list = new ArrayList<Map<String,String>>();
//每一个人发送的消息,内容可不同
Map<String,String> m1 = new HashMap<String, String>();
m1.put("title", "");
m1.put("content", "dfdsfdsfsdfs");
m1.put("cid", "d105a6dca21cd6401665ce14b1e3ee54");
list.add(m1);
Map<String,String> m2 = new HashMap<String, String>();
m2.put("title", "");
m2.put("content", "555555");
m2.put("cid", "fb89d5a563ceffeaa4562d23d052d2fc");
list.add(m2);
//推送
String msg = push.pushStrat(list);
System.out.println(msg);
}
返回值
{result=ok, info={"1":{"result":"ok","taskId":"OSS-0115_7lrx4FPmSS6p1lkc5I9CQ8","cid":"d105a6dca21cd6401665ce14b1e3ee54","status":"successed_offline"},"2":{"result":"ok","taskId":"OSS-0115_X7Bu4CkCxf5ZpYQmH96H39","cid":"fb89d5a563ceffeaa4562d23d052d2fc","status":"successed_offline"}}}
错误返回值详见 官方文档 http://docs.getui.com/getui/server/java/errorcode/
异常 Exception 为避免 请参数传入的时候进行设置 new
Exception(“标题长度不能大于32字符,内容不能大于80字符”);
其他方法
//自定义设置发送
push.setOtherParam(Boolean isRing, Boolean isVibrate, Boolean isClearable, Long offlineExpireTime, String transmissionContent);
Boolean isRing;// 是否响铃
Boolean isVibrate;// 是否震动
Boolean isClearable;// 是否可清楚
Long offlineExpireTime;// 过多久该消息离线失效(单位毫秒) 支持1-72小时*3600000毫秒
String transmissionContent;// 透传内容(app 暂不支持,清传空)
构造器说明 public GtPush() {} 内部有测试需要的参数和key 可用于测试使用 public GtPush(String
appId,String appKey,String masterSecret,String host) {} 正式环境使用,可通过
setOtherParam方法设置其他内容电当家app 推送api 地址:url + /appCid/appPush 参数:deviceNo 报警设备编号 必填
content:报警内容 必填 不能大于160字符 title:标题 非必填 不能大于64字符示例:http://ip+port/appCid/appPush?deviceNo=1170601447&title=设备报警&content=A相电压越线
返回格式
//成功
{
"result": "ok"
}
//失败
{
"result": "error"
“error_user_List”:[失败推送用户的userid]
}
result=ok表示成功 否则失败
本文档介绍了如何在Java后端集成个推服务,包括准备CID和API Key,集成外部jar和Maven,以及如何发送单条和批量推送通知。详细阐述了发送过程中的参数限制和错误返回值参考。
1444

被折叠的 条评论
为什么被折叠?



