package com.rn.wisdom.utils.JPushUtil; import cn.jiguang.common.resp.APIConnectionException; import cn.jiguang.common.resp.APIRequestException; import cn.jpush.api.JPushClient; import cn.jpush.api.push.model.Message; import cn.jpush.api.push.model.Platform; import cn.jpush.api.push.model.PushPayload; import cn.jpush.api.push.model.audience.Audience; import cn.jpush.api.push.model.notification.Notification; import java.io.BufferedInputStream; import java.io.FileInputStream; import java.io.InputStream; import java.net.URL; import java.util.HashMap; import java.util.Map; import java.util.Properties; /** * Created by * on 2017/9/12. */ public class JPushUtil { static { URL url = JPushUtil.class.getClassLoader().getResource("PushConfig.properties"); Properties properties = new Properties(); InputStream in = null; try { in = new BufferedInputStream( new FileInputStream(url.getPath())); properties.load(in); masterSecret = properties.getProperty("JPush.masterSecret"); appKey = properties.getProperty("JPush.appKey"); //关闭流 } catch (Exception e) { e.printStackTrace(); } finally { try { in.close(); } catch (Exception e) { e.printStackTrace(); } } } private static String masterSecret;// 极光推送帐号 private static String appKey;// 极光推送密码 private Map<String, String> param = new HashMap<>();// 推送时附带参数 private String content;// 消息内容 private String alia;// 接收方标识 private String title;// 消息标题 public JPushUtil(String alia, String title, String content) { this.content = content; this.alia = alia; this.title = title; } /** * 用户执行调用 */ public void push() { new Thread(new JPushThread(this)).start(); } /** * 推送消息 */ void pushMessage(){ JPushClient jpushClient = new JPushClient(masterSecret, appKey); PushPayload androidPayload = buildPushObject_android_alias_alert(); PushPayload iosPayload = buildPushObject_ios_alias_alert(); try { jpushClient.sendPush(androidPayload); jpushClient.sendPush(iosPayload); } catch (APIConnectionException | APIRequestException e) { e.printStackTrace(); } } // 构建安卓推送对象 private PushPayload buildPushObject_android_alias_alert() { return PushPayload .newBuilder() .setPlatform(Platform.android()) .setAudience(Audience.alias(alia)) .setNotification(Notification.alert("")) .setMessage( Message.newBuilder().setTitle(title) .setMsgContent(content) .addExtras(param).build()).build(); } // 构建ios推送对象 private PushPayload buildPushObject_ios_alias_alert() { return PushPayload .newBuilder() .setPlatform(Platform.ios()) .setAudience(Audience.alias(alia)) .setNotification(Notification.alert("")) .setMessage( Message.newBuilder().setTitle(title) .setMsgContent(content) .addExtras(param).build()).build(); }String alias = uuid + String.valueOf(userId); alias = MD5Util.MD5(alias); JPushUtil jPushUtil = new JPushUtil(alias, "新通知", "您有一条新,请及时处理"); jPushUtil.push();
}
极光推送
最新推荐文章于 2023-04-28 14:10:19 发布