Java 使用第三方推送 -- 极光推送
官网链接 : https://www.jiguang.cn/
注册完成登录后,点击创建应用 这里不细说
Java后端的整合如下:
添加maven依赖的包
<dependency> <groupId>cn.jpush.api</groupId> <artifactId>jpush-client</artifactId> <version>3.4.2</version> </dependency> <dependency> <groupId>cn.jpush.api</groupId> <artifactId>jiguang-common</artifactId> <version>1.1.3</version> </dependency>
创建一个工具类 JiGuangPushUtil.java
/**
* @ClassName 极光推送工具类
* @Author Mr.Tang
* @Date 2019/11/14 14:01
* @Version 1.0
**/
public class JiGuangPushUtil {
/**
* 两个参数分别填写你申请的masterSecret和appKey##
*/
private static String masterSecret = "你的masterSecret";
private static String appKey = "你的appKey";
private static JPushClient jPushClient=new JPushClient(masterSecret,appKey);
/**
* 全平台推送
* @param parm map里面可以根据自身情况增加一些参数 比如页面跳转的地址等
* @param list 用户id集合 这里我们是以用户id作为别名的方式注册到极光 所以我们只需要把用户id给极光 他就会直接给对应用户推送
*/
public static void jpushAll(Map<String, String> parm,List<String> list) {
PushPayload payload = PushPayload.newBuilder()
//所有平台的用户
.setPlatform(Platform.all())
//指定用户
.setAudience(Audience.alias(list))
.setNotification(Notification.newBuilder()
//ios推送
.addPlatformNotification(IosNotification.newBuilder()
.setAlert(IosAlert.newBuilder().setTitleAndBody(parm.get("title"),null,parm.get("body")).build())
.setBadge(+1)
.setSound("qxgf")
.addExtras(parm)
.build())
//Android推送 也可以分开写
.addPlatformNotification(AndroidNotification.newBuilder()
.setTitle(parm.get("title"))
.addExtras(parm)
.setAlert(parm.get("body"))
.build())
.build())
//指定开发环境
.setOptions(Options.newBuilder().setApnsProduction(false).build())
//自定义信息
.setMessage(Message.newBuilder().setMsgContent(parm.get("title")).addExtras(parm).build())
.build();
try {
PushResult pushResult = jPushClient.sendPush(payload);
System.out.println(pushResult);
if(pushResult.getResponseCode()==200){
System.out.println(pushResult.getResponseCode());
}
} catch (APIConnectionException e) {
e.printStackTrace();
} catch (APIRequestException e) {
e.printStackTrace();
}
}
/**
* 参数设置
* @param title
* @param body
* @param list 用户集合
*/
public static void jpushPush(String title,String body,List<String> list){
Map<String, String> parm = new HashMap<> ();
//标题
parm.put("title",title);
//内容
parm.put("body",body);
JiGuangPushUtil.jpushAll(parm,list);
}
}
哪里需要 哪里调用
JiGuangPushUtil.jpushPush(MedicalConstant.System_Schedule,body,list);
以上就是 Java后台整合的代码了
QQ群 :216868740