package com.nuvole.util;
|
|
import cn.hutool.core.convert.Convert;
|
import cn.jiguang.common.ClientConfig;
|
import cn.jiguang.common.resp.APIConnectionException;
|
import cn.jiguang.common.resp.APIRequestException;
|
import cn.jpush.api.JPushClient;
|
import cn.jpush.api.push.PushResult;
|
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.AndroidNotification;
|
import cn.jpush.api.push.model.notification.IosNotification;
|
import cn.jpush.api.push.model.notification.Notification;
|
|
import java.util.HashMap;
|
import java.util.Map;
|
|
/**
|
* Createed by PKZ
|
* Date 2019/5/28 14:46
|
* Description:极光推送
|
*/
|
public class JGPushUtil {
|
private static String MASTER_SECRET="142cc44b9a7031b1b461530a";
|
private static String APP_KEY="382144e6869af95cb99ba6f3";
|
/*
|
private static String MASTER_SECRET="7d926843009a59d013100ad9";
|
private static String APP_KEY="050c7ed3f0218d5c96a9c73c";
|
*/
|
//极光推送
|
private static PushPayload buildPushObject_ios_audienceMore_messageWithExtras(String content,String title,String userid,String businessid,String businesstype) {
|
Map m=new HashMap();
|
m.put("id",businessid);
|
m.put("type",businesstype);
|
return PushPayload.newBuilder()
|
.setPlatform(Platform.all())//推送所有平台
|
.setAudience(Audience.alias(userid))//别名推送
|
//.setAudience(Audience.all())//全部推送
|
/* .setMessage(Message.newBuilder()//发送透传消息
|
.setMsgContent(content)
|
.setTitle(title)
|
.addExtra("from", "JPush")
|
.addExtra("businessid",businessid)
|
.addExtra("businesstype",businesstype)
|
.build())*/
|
.setNotification(
|
Notification.newBuilder()
|
.addPlatformNotification(AndroidNotification.newBuilder().setAlert(content).setTitle(title).addExtras(m).build())
|
.addPlatformNotification(IosNotification.newBuilder().setAlert(content).addExtras(m).build())
|
.build()
|
)//发送通知
|
.build();
|
}
|
/**
|
* Createed by PKZ
|
* Date 2019/5/28 15:01
|
* Description:极光推送
|
* @param content 推送内容
|
* @param title 标题
|
* @param userid 推送别名
|
* @param businessid 业务id
|
* @param businesstype 业务类型(1:扫码支付订单)
|
**/
|
public static String push(String content,String title,String userid,String businessid,String businesstype){
|
PushPayload payload=buildPushObject_ios_audienceMore_messageWithExtras(content,title,userid,businessid,businesstype);
|
JPushClient jpushClient = new JPushClient(MASTER_SECRET, APP_KEY, null, ClientConfig.getInstance());
|
PushResult result=new PushResult();
|
try {
|
result= jpushClient.sendPush(payload);
|
} catch (APIConnectionException e) {
|
e.printStackTrace();
|
} catch (APIRequestException e) {
|
e.printStackTrace();
|
}
|
return Convert.toStr(result.statusCode);
|
}
|
|
public static void main(String[] args) {
|
|
push("支付宝收款成功2元","支付宝收款成功2元","1255396878833553408","1139417207521021952","1"
|
);
|
}
|
}
|