public class JPushUtil {
private static final String jiguang_appKey="123";
private static final String jiguang_masterSecret="4566";
protected static final Logger LOG = LoggerFactory.getLogger(JPushUtil.class);
//别名推送
public static PushPayload buildPushObject_android_and_ios_singleNotice(String title, String alert, String alias, Map<String, String> extras, boolean apnsProduction) {
return PushPayload.newBuilder()
.setPlatform(Platform.android_ios())
.setAudience(Audience.alias(alias))
.setNotification(Notification.newBuilder().setAlert(alert)
.addPlatformNotification(AndroidNotification.newBuilder()
.setTitle(title)
.addExtras(extras)
.build())
.addPlatformNotification(IosNotification.newBuilder()
.addExtras(extras)
.setSound("default")
.build())
.build())
.setOptions(Options.newBuilder()
.setApnsProduction(apnsProduction)
.build())
.build();
}
//别名推送
public static PushPayload buildPushObject_android_and_ios_batchNotice(String title,String alert,List<String> alias,Map<String, String> extras,boolean apnsProduction) {
return PushPayload.newBuilder()
.setPlatform(Platform.android_ios())
.setAudience(Audience.alias(alias))
.setNotification(Notification.newBuilder().setAlert(alert)
.addPlatformNotification(AndroidNotification.newBuilder()
.setTitle(title)
.addExtras(extras)
.build())
.addPlatformNotification(IosNotification.newBuilder()
.addExtras(extras)
.setSound("default")
.build())
.build())
.setOptions(Options.newBuilder()
.setApnsProduction(apnsProduction)
.build())
.build();
}
//标签推送
public static PushPayload buildPushObject_android_and_ios_tag_singleNotice(String title,String alert,String tag,Map<String, String> extras,boolean apnsProduction) {
return PushPayload.newBuilder()
.setPlatform(Platform.android_ios())
.setAudience(Audience.tag(tag))
.setNotification(Notification.newBuilder().setAlert(alert)
.addPlatformNotification(AndroidNotification.newBuilder()
.setTitle(title)
.addExtras(extras)
.build())
.addPlatformNotification(IosNotification.newBuilder()
.addExtras(extras)
.setSound("default")
.build())
.build())
.setOptions(Options.newBuilder()
.setApnsProduction(apnsProduction)
.build())
.build();
}
//标签 批量推送
public static PushPayload buildPushObject_android_and_ios_tag_batchNotice(String title,String alert,List<String> tags,Map<String, String> extras,boolean pnsProduction) {
return PushPayload.newBuilder()
.setPlatform(Platform.android_ios())
.setAudience(Audience.tag(tags))
.setNotification(Notification.newBuilder().setAlert(alert)
.addPlatformNotification(AndroidNotification.newBuilder()
.setTitle(title)
.addExtras(extras)
.build())
.addPlatformNotification(IosNotification.newBuilder()
.addExtras(extras)
.setSound("default")
.build())
.build())
.setOptions(Options.newBuilder()
.setApnsProduction(pnsProduction)
.build())
.build();
}
//全平台发送
public static PushPayload buildPushObject_all_notice(String title,String alert,Map<String, String> extras,boolean pnsProduction) {
return PushPayload.newBuilder()
.setPlatform(Platform.android_ios())
.setAudience(Audience.all())
.setNotification(Notification.newBuilder().setAlert(alert)
.addPlatformNotification(AndroidNotification.newBuilder()
.setTitle(title)
.addExtras(extras)
.build())
.addPlatformNotification(IosNotification.newBuilder()
.addExtras(extras)
.setSound("default")
.build())
.build())
.setOptions(Options.newBuilder()
.setApnsProduction(pnsProduction)
.build())
.build();
}
/**
* 根据别名 单个推送
*/
public static boolean sendSingleNotice(String title,String alert,Long alias,Map<String, String> extras,String profilesActive) {
try {
boolean apnsProduction=false;
if("prod".equals(profilesActive)){
apnsProduction=true;
}
String aliasStr=profilesActive+alias;
JPushClient jpushClient = new JPushClient(jiguang_masterSecret, jiguang_appKey);
PushPayload payload =buildPushObject_android_and_ios_singleNotice(title,alert,aliasStr,extras,apnsProduction);
jpushClient.sendPush(payload);
} catch (Exception e) {
return false;
}
return true;
}
/**
* 根据别名 批量推送
*/
public static boolean sendBatchNotice(String title,String alert,List<Long> alias,Map<String, String> extras,String profilesActive) {
try {
boolean apnsProduction=false;
if("prod".equals(profilesActive)){
apnsProduction=true;
}
List<String> aliasStr=new ArrayList<>();
for (Long alia:alias){
aliasStr.add(profilesActive+alia);
}
JPushClient jpushClient = new JPushClient(jiguang_masterSecret, jiguang_appKey);
PushPayload payload =buildPushObject_android_and_ios_batchNotice(title,alert,aliasStr,extras,apnsProduction);
jpushClient.sendPush(payload);
} catch (Exception e) {
return false;
}
return true;
}
/**
* 根据标签 单个推送
*/
public static boolean sendTagSingleNotice(String title,String alert,String tag,Map<String, String> extras,String isProduce) {
try {
boolean apnsProduction=false;
if("prod".equals(isProduce)){
apnsProduction=true;
}
JPushClient jpushClient = new JPushClient(jiguang_masterSecret, jiguang_appKey);
PushPayload payload =buildPushObject_android_and_ios_tag_singleNotice(title,alert,tag,extras,apnsProduction);
jpushClient.sendPush(payload);
} catch (Exception e) {
return false;
}
return true;
}
/**
* 根据标签 批量推送
*/
public static boolean sendTagBatchNotice(String title,String alert,List<String> tags,Map<String, String> extras,String isProduce) {
try {
boolean apnsProduction=false;
if("prod".equals(isProduce)){
apnsProduction=true;
}
JPushClient jpushClient = new JPushClient(jiguang_masterSecret, jiguang_appKey);
PushPayload payload =buildPushObject_android_and_ios_tag_batchNotice(title,alert,tags,extras,apnsProduction);
jpushClient.sendPush(payload);
} catch (Exception e) {
return false;
}
return true;
}
/**
* 全平台发送
*/
public static boolean sendAllNotice(String title,String alert,Map<String, String> extras,String isProduce) {
try {
boolean apnsProduction=false;
if("prod".equals(isProduce)){
apnsProduction=true;
}
JPushClient jpushClient = new JPushClient(jiguang_masterSecret, jiguang_appKey);
PushPayload payload =buildPushObject_all_notice(title,alert,extras,apnsProduction);
jpushClient.sendPush(payload);
} catch (Exception e) {
return false;
}
return true;
}
public static void main(String[] args) {
List<Long> aliases=new ArrayList<Long>();
aliases.add(1l);
aliases.add(2l);
Map<String, String> extras=new HashMap<String,String>();
extras.put("sound", "default");
extras.put("type", "3");
extras.put("entityType", "3");
extras.put("entityId", "dfffca1b1f8648098540cf033d397b5c");
JPushUtil.sendBatchNotice("订单通知", "后视镜的后视镜活动时间", aliases, extras,"test");
}
}
极光推送JPushUtil
Guess you like
Origin blog.csdn.net/LC_Liangchao/article/details/121835577
Recommended
Ranking