java对接极光推送Rest API 实现消息推送
最近的一个项目需求是根据小区id给APP用户推送消息,我是使用别名来实现的。
需要的 maven:
<!--极光推送API-->
<dependency>
<groupId>cn.jpush.api</groupId>
<artifactId>jpush-client</artifactId>
<version>3.3.10</version>
</dependency>
<dependency>
<groupId>org.msgpack</groupId>
<artifactId>msgpack</artifactId>
<version>0.6.12</version>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
</dependency>
首先,定义一个JPushData消息类,包括标题,内容,别名等字段,(标签我没有用到)。
@Data
public class JPushData {
private Integer id;
private String title; //推送标题
private String content; //推送内容
private String tag; //推送分类标签
private List<String> alias; // 别名
}
关于别名,这个是客户端注册到极光的,需要与安卓与ios商量好别名的设置规则,只需要根据条件(我这里是小区id)查询用户的别名。
然后写了一个推送消息的工具类,在消息推送Controller里面调用该工具类的sendClient方法就可以啦,buyerAppKey 和 buyerMasterSecret 是极光后台获取的,需要填写自己的哦:
package com.zh.common.management