极光推送是:使得开发者可以即时地向其应用程序的用户推送通知或者消息,与用户保持互动,从而有效地提高留存率,提升用户体验。简单的说就是通过JPush后台管理网站进行app消息的推送。可以让用户及时的收到最新的消息提示。

但是往往有时候需要我们自己开发自己的后台管理网站实现推送的功能,这个时候就需要调用JPush提供的API接口,来进行消息的推送。这里我只讲一些核心API接口,客户端的网站上有例子大家可以自己下载下来看看。

下面是java后台的代码部分:

    public class JPushClientExample {
//在极光注册上传应用的 appKey 和 masterSecret
private static final String appKey ="a148767f7440ff9daf56457f";////必填,例如466f7032ac604e02fb7bda89
private static final String masterSecret = "731e374afd796d5942ba1363";//必填,每个应用都对应一个masterSecret
private static JPushClient jpush = null;
/*
* 保存离线的时长。秒为单位。最多支持10天(864000秒)。
* 0 表示该消息不保存离线。即:用户在线马上发出,当前不在线用户将不会收到此消息。
* 此参数不设置则表示默认,默认为保存1天的离线消息(86400秒
*/
private static long timeToLive = 60 * 60 * 24;
public static void main(String[] args) {
/*
* Example1: 初始化,默认发送给android和ios,同时设置离线消息存活时间
* jpush = new JPushClient(masterSecret, appKey, timeToLive);
*
* Example2: 只发送给android *
* Example3: 只发送给IOS
* jpush = new JPushClient(masterSecret, appKey, DeviceEnum.IOS);
*
* Example4: 只发送给android,同时设置离线消息存活时间
* jpush = new JPushClient(masterSecret, appKey, timeToLive, DeviceEnum.Android);
*/
jpush = new JPushClient(masterSecret, appKey, timeToLive);
/*
* 是否启用ssl安全连接, 可选
* 参数:启用true, 禁用false,默认为非ssl连接
*/
jpush.setEnableSSL(true); //测试发送消息或者通知
testSend();
}
private static void testSend() {
// 在实际业务中,建议 sendNo 是一个你自己的业务可以处理的一个自增数字。
// 除非需要覆盖,请确保不要重复使用。详情请参考 API 文档相关说明。
// Integer num= getRandomSendNo();
String sendNo="1900192560";
String msgTitle = "JPush测试信息";
String msgContent = "我是JPush测试信息,已经成功发送给你,请查收。";
/*
* IOS设备扩展参数,
* 设置badge,设置声音
*/
Map<String, Object> extra = new HashMap<String, Object>();
IOSExtra iosExtra = new IOSExtra(1, "WindowsLogonSound.wav");
extra.put("id1",iosExtra);
extra.put("id2","I am extra infomation");
//IOS和安卓一起
MessageResult msgResult = jpush.sendNotificationWithAppKey(sendNo, msgTitle, msgContent, 0, extra);
//对所有用户发送通知, 更多方法请参考文档
// MessageResult msgResult = jpush.sendCustomMessageWithAppKey(sendNo,msgTitle, msgContent);
if (null != msgResult) {
System.out.println("服务器返回数据: " + msgResult.toString());
if (msgResult.getErrcode() == ErrorCodeEnum.NOERROR.value()) {
System.out.println("发送成功, sendNo=" + msgResult.getSendno());
} else {
System.out.println("发送失败, 错误代码=" + msgResult.getErrcode() + ", 错误消息=" + msgResult.getErrmsg());
}
} else {
System.out.println("无法获取数据");
}
} public static final int MAX = Integer.MAX_VALUE;
public static final int MIN = (int) MAX/2;
/**
* 保持 sendNo 的唯一性是有必要的
* It is very important to keep sendNo unique.
* @return sendNo
*/
public static int getRandomSendNo() {
return (int) (MIN + Math.random() * (MAX - MIN));
}
}
    //发送自定义消息
private static PushPayload push_Android(String message) {
Map<String,String> map = new HashMap<>();
map.put("测试", "测试1");
Builder msg = Message.newBuilder();
msg.setTitle("衡云title");
msg.setMsgContent("衡云content");
msg.setContentType("type:1");
msg.addExtra("type", 1);
// Message.newBuilder();
return PushPayload.newBuilder()
.setPlatform(Platform.android())
.setAudience(Audience.tag("200000249hykj"))
.setMessage(msg.build())
.build();
}

开发者可以自己定义发送的标题,内容,附加信息,离线等待时间等消息。用起来特别方便。这里我就添加这个demo核心的代码。有兴趣的可以把整个demo下载下来研究研究。

欢迎打扰各位程序猿打扰交流

JPush极光推送 Java调用服务器端API开发的更多相关文章

  1. JPush极光推送Java服务器端API

    // 对android和ios设备发送 JPushClient jpush = new JPushClient(masterSecret, appKey);   // 对android和ios设备发送 ...

  2. JPush极光推送Java服务器端实例

    import cn.jpush.api.JPushClient; import cn.jpush.api.common.resp.APIConnectionException; import cn.j ...

  3. atitit.web 推送实现方案集合(2)---百度云,jpush 极光推送 ,个推的选型比较.o99

    atitit.web 推送实现方案集合(2)---百度云,jpush 极光推送 ,个推的选型比较.o99 1.1. 云推送有推送次数或频率的限制吗? 1 1.2. 推送的消息长度 1 1.3. 离线消 ...

  4. 使用JPush(极光推送)实现远程通知

    使用JPush(极光推送)实现远程通知 远程推送是APP 必备的功能, 现在第三方的 SDK 已经做的非常完备了, 在 iOS10.0出来之后, 极光推送也及时更新了他的 SDK, 今天小试了一下效果 ...

  5. Laravel 集成 JPush 极光推送指北

    我是一个 Laravel 小白,我是一个 Laravel 小白,我是一个 Laravel 小白(默念三遍再往下读,如果非小白就不用看了). Laravel 使用 Composer 来管理代码依赖.所以 ...

  6. 极光推送-Java后台实现方式一:Http API

    Java后台实现极光推送有两种方式,一种是使用极光推送官方提供的推送请求API:https://api.jpush.cn/v3/push,另一种则是使用官方提供的第三方Java APIjar包,这里先 ...

  7. AndroidStudio离线打包MUI集成JPush极光推送并在java后端管理推送

    1.AndroidStudio离线打包MUI 如何离线打包请参看上篇随笔<AndroidStudio离线打包MUI> 2.集成极光推送 官方文档:https://docs.jiguang. ...

  8. Springboot项目集成JPush极光推送(Java SDK)

    1.由于项目的需求,需要在Android APP上实现消息推送功能,所以引用了极光推送(官网:https://www.jiguang.cn/, 文档:http://docs.jiguang.cn/) ...

  9. Android消息推送——JPush极光推送

    刚看了一篇关于Android消息推送评测总结的博客http://www.cnblogs.com/logan/p/4514635.html: 自己也对原学过的JPush极光进行一下小结,方便后续工作使用 ...

随机推荐

  1. 【ASP.NET Web API教程】2.3.5 用Knockout.js创建动态UI

    原文:[ASP.NET Web API教程]2.3.5 用Knockout.js创建动态UI 注:本文是[ASP.NET Web API系列教程]的一部分,如果您是第一次看本博客文章,请先看前面的内容 ...

  2. springboot 开发入门,及问题汇总

    1 . springboot简单介绍(http://projects.spring.io/spring-boot/) 现在的web项目几乎都会用到spring框架,而要使用spring难免需要配置大量 ...

  3. CImageList类Create函数参数解析

    前面提到了CImageList类的Create(...)函数,虽然MSDN上已经有所解释,但仍有网友问到参数的具体含义,下面就我的理解,对参数进行一次轻量级的剖析 函数原型(其他重载函数请参看msdn ...

  4. 我是如何同时拿到阿里和腾讯offer的

    前言 三月真是一个忙碌的季节,刚刚开学就需要准备各种面试和笔试(鄙视).幸运的是,在长达一个月的面试内推季之后,终于同时拿到了阿里和腾讯的offer,还是挺开心的.突而想起久未更新的博客,就冒昧学一学 ...

  5. mojo 关闭utf8

    [root@wx03 ~]# cat test.pl use Mojolicious::Lite; use JSON qw/encode_json decode_json/; use Encode; ...

  6. hadoop(六) - ZooKeeper安装与配置

    一. ZooKeeper配置 1.使用winscp上传zk安装包 zookeeper-3.4.5.tar.gz 2.解压安装包tar -zxvf zookeeper-3.4.5.tar.gz -C / ...

  7. USM锐化之openCV实现,附赠调整对比度函数

    源地址:http://www.cnblogs.com/easymind223/archive/2012/07/03/2575277.html 常用Photoshop的玩家都知道Unsharp Mask ...

  8. Div 设置最小宽度。 对喜欢设置百分比的同学很用有哦,

    第一种情况:  body { width:100%; higth:100%; } 当浏览器缩小的时候,若是body里有浮动元素.或者有设置百分比的div   或出现字体挤压情况. 第二种情况: bod ...

  9. ANDROID L——Material Design综合应用(Demo)

    转载请注明本文出自大苞米的博客(http://blog.csdn.net/a396901990),谢谢支持! Material Design: Material Design是Google推出的一个全 ...

  10. 计算机视觉与模式识别代码合集第二版two

    Topic Name Reference code Image Segmentation Segmentation by Minimum Code Length AY Yang, J. Wright, ...