`
雷诺阿
  • 浏览: 17566 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

JPush极光推送Java服务器端API

    博客分类:
  • java
阅读更多

 

// 对android和ios设备发送
JPushClient jpush = new JPushClient(masterSecret, appKey);
 
// 对android和ios设备发送,同时指定离线消息保存时间
JPushClient jpush = new JPushClient(masterSecret, appKey, timeToLive);
 
// 指定某种设备发送
JPushClient jpush = new JPushClient(masterSecret, appKey, DeviceEnum.Android);
 
// 指定某种设备发送,并且指定离线消息保存时间
JPushClient jpush = new JPushClient(masterSecret, appKey, timeToLive, DeviceEnum.IOS);
参数名称 参数类型 选项 内容说明
masterSecret
String 必须 Portal上注册应用时生成的 masterSecret
appKey String 必须 Portal上注册应用时生成的 appKey
timeToLive long 可选

保存离线消息的时长。秒为单位。最多支持10天(864000秒)。
0 表示该消息不保存离线。即:用户在线马上发出,当前不在线用户将不会收到此消息。
此参数不设置则表示默认,默认为保存1天的离线消息(86400秒)。

DeviceEnum Enum 可选 指定的设备。
可选值:DeviceEnum.Android, DeviceEnum.IOS。
不填或者null值为同时支持 Android 与 iOS。

发送消息

JPushClient公共方法

 

方法名称 参数列表(必须) 方法说明
setEnableSSL boolean enableSSL (true为使用ssl, 默认为不使用ssl) 是否启动ssl安全连接

sendNotificationWithImei

int sendNo(发送编号),
String imei (IMEI字符串) ,
String msgTitle (消息标题/通知标题) ,
String msgContent (消息内容/通知内容) 
发送带IMEI的通知
sendNotificationWithImei int sendNo , 
String imei ,

String msgTitle ,
String msgContent ,
int builderId (自定义通知栏样式Id) ,
Map<String, Object>extra (附属信息)
自定义通知栏(没有则填写0)
以及传递附属信息 

sendCustomMessageWithImei

int sendNo , 
String imei ,

String msgTitle ,
String msgContent 
发送带IMEI的消息
sendCustomMessageWithImei int sendNo , 
String imei ,

String msgTitle ,
String msgContent, 
String msgContentType (消息内容类型,原样返回),
Map<String, Object> extra 
用户自定义消息类型,
以及传递附属信息 

sendNotificationWithTag

int sendNo , 
String tag (Tag字符串) ,

String msgTitle ,
String msgContent
发送带Tag的通知
sendNotificationWithTag int sendNo , 
String tag ,

String msgTitle ,
String msgContent , 
int builderId ,
Map<String, Object>extra
自定义通知栏(没有则填写0)
以及传递附属信息 

sendCustomMessageWithTag

int sendNo , 
String tag ,

String msgTitle ,
String msgContent
发送带Tag的消息
sendCustomMessageWithTag
int sendNo , 
String tag ,

String msgTitle ,
String msgContent ,
String msgContentType ,
Map<String, Object> extra 
用户自定义消息类型,
以及传递附属信息 

sendNotificationWithAlias

int sendNo , 
String alias (Alias字符串) ,

String msgTitle , 
String msgContent
发送带Alias的通知
sendNotificationWithAlias int sendNo , 
String alias (Alias字符串) ,

String msgTitle , 
String msgContent ,
int builderId ,
Map<String, Object>extra
自定义通知栏(没有则填写0)
以及传递附属信息 

sendCustomMessageWithAlias

int sendNo , 
String alias ,

String msgTitle , 
String msgContent
发送带Alias的消息
sendCustomMessageWithAlias int sendNo , 
String alias ,

String msgTitle , 
String msgContent , 
String msgContentType ,
Map<String, Object> extra 
用户自定义消息类型,
以及传递附属信息 

sendNotificationWithAppKey

int sendNo , 
String msgTitle
 , 
String msgContent
发送通知给AppKey的所有用户
sendNotificationWithAppKey int sendNo , 
String msgTitle
 , 
String msgContent ,
int builderId ,
Map<String, Object>extra
自定义通知栏(没有则填写0)
以及传递附属信息 

sendCustomMessageWithAppKey

int sendNo , 
String msgTitle
 , 
String msgContent
发送带AppKey的消息
sendCustomMessageWithAppKey int sendNo , 
String msgTitle
 , 
String msgContent ,
String msgContentType ,
Map<String, Object> extra  
用户自定义消息类型,
以及传递附属信息 

 

代码示例

代码示例-发送带IMEI的通知
JPushClient jpush = new JPushClient(masterSecret, appKey);
//jpush.setEnableSSL(true);
int sendNo = 1;
String imei = "";
String msgTitle = "";
String msgContent = "";
 
MessageResult msgResult = jpush.sendNotificationWithImei(sendNo, imei, msgTitle, msgContent);
if (null != msgResult) {
    if (msgResult.getErrcode() == ErrorCodeEnum.NOERROR.value()) {
        System.out.println("发送成功, sendNo=" + msgResult.getSendno());
    } else {
        System.out.println("发送失败, 错误代码=" + msgResult.getErrcode() + ", 错误消息=" + msgResult.getErrmsg());
    }
} else {
    System.out.println("无法获取数据");
}
代码示例-IOS设置通知铃声和badge
JPushClient jpush = new JPushClient(masterSecret, appKey);
 
Map<String, Object> extra = new HashMap<String, Object>();
IOSExtra iosExtra = new IOSExtra(1, "Windows_Logon_Sound.wav");//badge and sound
extra.put("ios", iosExtra);
 
MessageResult msgResult = jpush.sendNotificationWithAppKey(sendNo, msgTitle, msgContent, 0, extra);

MessageResult 类

公共方法 方法用途

getSendno

 消息发送成功后,按客户端传输的sendNo原样返回

getErrcode

 错误代码,代码定义参考ErrorCodeEnum
getErrmsg  返回错误消息的描述

ErrorCode 类

错误代码-ErrorCodeEnum
package cn.jpush.api;
 
public enum ErrorCodeEnum {
     
    //没有错误,发送成功
    NOERROR(0),
 
    //系统内部错误
    SystemError(10),
 
    //不支持GET请求
    NotSupportGetMethod(1001),
 
    //缺少必须参数
    MissingRequiredParameters(1002),
 
    //参数值不合法
    InvalidParameter(1003),
 
    //验证失败
    ValidateFailed(1004),
 
    //消息体太大
    DataTooBig(1005),
 
    //IMEI不合法
    InvalidIMEI(1007),
 
    //appkey不合法
    InvalidAppKey(1008),
 
    //msg_content不合法
    InvalidMsgContent(1010),
 
    //没有满足条件的推送目标
    InvalidPush(1011),
 
    //IOS不支持自定义消息
    CustomMessgaeNotSupportIOS(1012);
 
    private final int value;
    private ErrorCodeEnum(final int value) {
        this.value = value;
    }
 
    public int value() {
        return this.value;
    }
}
 
 

posted on 2013-02-20 19:00 菜鸟的春天 阅读(30163) 评论(10) 编辑 收藏

 

评论

#1楼 2015-04-27 20:02 just__chao  

大牛你好,按照你的步奏可以成功推送消息到手机上,现在怎么把这个Jpush ApI捣成一个jar包集成到项目中,毕竟把这份源码原样考到项目中太臃肿,能有什么简便的方法吗?跪谢

http://pic.cnblogs.com/face/544289/20130803090206.png   

 

#2楼[楼主] 2015-04-28 10:55 菜鸟的春天  

@just__chao
可以使用maven,可以使用jpush-client的最新版本3.1.3;如果你使用的ant或者没有使用类似构建工具,http://docs.jpush.io/resources/#sdk_1 下载最新sdk;还有一个最简单的方法,jpush已退出restfull api,可以使用restfull api开发自己的api;可以加我旺旺 浩气

http://pic.cnblogs.com/face/u436443.jpg?id=10203124   

 

#3楼 2015-04-28 11:01 just__chao  

@菜鸟的春天
好的收到,真心感谢!!

http://pic.cnblogs.com/face/544289/20130803090206.png   

 

#4楼 2015-06-03 12:04 朱啊朱  

你好,我刚在弄极光推送,但是我的下载了一份服务端的代码,把AppKey都已经更改为我的了,但是返回的都是1011,不知道应该怎么解决,能帮助我一下吗?

  

 

#5楼[楼主] 2015-06-03 13:30 菜鸟的春天  

@朱啊朱
1011:没有满足条件的推送目标;这个是因为没有客户端!可以先用手机或者模拟器启动jpush client(在自己的应用里使用jpush)

http://pic.cnblogs.com/face/u436443.jpg?id=10203124   

 

#6楼 2015-06-03 14:09 朱啊朱  

@菜鸟的春天
那应该怎么模拟呢?可以教我一下吗

  

 

#7楼[楼主] 2015-06-04 10:30 菜鸟的春天  

http://pic.cnblogs.com/face/u436443.jpg?id=10203124   

 

#8楼 2015-07-07 23:24 flykiss  

大神,为什么我用最新的版本的没有sendCustomMessageWithTag呢

  

 

#9楼 2015-07-16 16:51 abc搬运工  

你好,java写定向推送要应该怎么写,如果有代码展示一下就最好了,如果你会的话望指点一下,感激不尽啊!

  

 

#10楼32291362015/7/16 16:56:36 2015-07-16 16:56 依漠  

我是用的Maven,下载的jpush-client的最新版本3.1.3,可是jar包里没有MessageResult类,JPushClient类也没有sendNotificationWithAppKey()方法调用,肿么办呢?
分享到:
评论

相关推荐

    极光推送JAVA服务端集成 jpush-api-java-client-master

    【极光推送JAVA服务端集成 jpush-api-java-client-master】是一个专门为Java开发者设计的极光推送(JPush)服务端SDK。极光推送是面向移动应用开发者提供的一套消息推送服务,它可以帮助开发者轻松实现向Android、...

    jpush极光推送java版

    2. jpush-client-3.2.10.jar:这是极光推送Java客户端SDK的核心库。它包含了所有与极光推送服务器交互的类和方法,如注册设备、发送推送、处理回调等。开发者可以通过这个库来实现应用的注册、获取设备Token、设置...

    jpush极光推送API

    JPush极光推送的API主要分为服务器端API和客户端SDK两部分。服务器端API允许开发者通过HTTP或者HTTPS协议调用,进行推送操作,而客户端SDK则集成在App中,负责接收和处理推送的消息。 2. **API功能** - **通知推...

    JPush极光推送 java

    极光推送(JPush)是基于Java开发的一款高效、稳定、易用的移动推送服务,主要面向Android和iOS平台的应用开发者。它可以帮助开发者实现消息推送、通知、自定义消息等功能,提升用户活跃度和应用黏性。在Java环境中...

    JPush极光推送

    JPush极光推送 ①官网:https://www.jpush.cn/ ②选择入门指南/实例与代码/服务器端 API 开发包与示例/Java开发包与使用示例/v3.2.8 - 新功能和优化/ 【jpush-client-3.2.8.zip】点击下载。 ③下载下来的压缩包为...

    极光推送java端API

    极光推送(JPush)是JIGUANG公司推出的一款高效、稳定、易用...总之,极光推送Java端API为开发者提供了强大的推送功能,通过熟练掌握和灵活运用,可以提升应用的用户体验,增强用户粘性,是移动应用开发中的重要工具。

    极光推送【java服务器端 和 Android客户端】

    在这个压缩包文件中,包含的是极光推送的Java服务器端集成指南以及Android客户端的示例代码。 一、极光推送服务概述 极光推送(JPush)是专门为开发者设计的推送服务,它允许开发者通过云端API向用户的移动设备发送...

    极光推送 java服务器demo、Android客户端demo

    本压缩包包含了极光推送的Java服务器端DEMO和Android客户端DEMO,旨在帮助开发者快速理解和集成极光推送服务。 一、Java服务器端DEMO(jpushApi) 在`jpushApi`目录中,通常包含了一个Java项目,该项目展示了如何...

    极光推送JPush服务器端集成SDK

    极光推送(JPush)是阿里巴巴旗下的一款移动设备消息推送服务,它...以上就是关于“极光推送JPush服务器端集成SDK”的主要知识点。通过学习和实践,开发者可以有效地利用极光推送服务来提升应用的用户互动性和活跃度。

    极光推送的android客户端和Java服务器端的例子

    在这个“极光推送的android客户端和Java服务器端的例子”中,我们可以深入学习如何在Android应用和Java服务器之间实现消息推送功能。 1. **极光推送简介** 极光推送是极光(Jiguan)公司的一款产品,它允许开发者...

    极光推送后台java代码demo

    极光推送(JPush)是一款广泛应用于移动应用开发中的消息推送服务,它允许开发者向Android、iOS以及Web端用户发送消息,以提高用户活跃度和应用黏性。 Java是后端开发的主流语言之一,拥有丰富的库和框架支持。在...

    java集成极光推送

    Java集成极光推送是一项在Java应用中实现第三方消息推送服务的技术。极光推送(JPush)是极光公司提供的一款高效、稳定、易用的移动推送服务,它可以帮助开发者向Android和iOS设备发送自定义消息,提高用户活跃度和...

    jpush-api-java-client-3.3.3.rar_app 推送_极光推送_网络短信

    本压缩包"jpush-api-java-client-3.3.3.rar"包含了极光推送的Java客户端API,版本号为3.3.3,主要用于开发基于Java的应用程序进行推送操作。 1. **极光推送服务**: - 极光推送服务提供了一种跨平台的解决方案,...

    极光推送 java后台 例子

    在压缩包文件“jpush”中,可能包含了极光推送的Java SDK示例代码、配置文件或者文档。通过查看这些资源,你可以更深入地学习如何在实际项目中实现和配置极光推送。同时,需要注意的是,为了保证推送的安全性,应当...

    springboot项目实现极光推送

    极光推送(JPush)是一款广泛使用的第三方推送平台,它为开发者提供了简单易用的API和SDK,使得在Android、iOS甚至Web应用中实现消息推送变得轻松便捷。 首先,让我们了解SpringBoot项目的基础。SpringBoot是Spring...

    极光推送服务器端代码

    在Java环境中,我们可以利用Eclipse这样的集成开发环境来编写极光推送的服务器端代码,以便更好地与移动端进行交互。 首先,我们需要理解极光推送的工作原理。极光推送主要通过HTTP或HTTPS协议与服务器进行通信,...

    jpush-api-java-client-3.3.0.zip

    `jpush-api-java-client-3.3.0.zip`是一个包含Java客户端SDK的压缩包,用于在服务器端集成极光推送服务,以便于通过Java代码来推送消息。 `JPushService.java` 文件很可能是服务端的核心接口类,包含了推送操作的...

    JPush推送,利用java后台推送消息

    JPush推送服务是极光推送(JiGuang)提供的一种高效、稳定的消息推送解决方案,主要针对Android和iOS等移动平台。在这个场景中,我们关注的是如何利用Java后台来实现JPush推送消息的功能。 首先,要理解JPush的工作...

    极光推送jar包全

    这些jar包通常包括了服务器端接口、客户端SDK以及可能的依赖库,使得开发者可以完整地引入极光推送的服务到他们的Java项目中。导入这些jar包意味着开发者能够利用极光推送的全套功能,如单播、群播、标签播、自定义...

    jpush实现消息推送-web版Demo

    2. **初始化JPush客户端**:在Web应用中,创建一个JPushClient实例,设置API Key和Master Secret,这两个参数可以在极光推送的管理后台获取。 3. **构建推送请求**:根据需求构造推送对象,可以指定目标设备(通过...

Global site tag (gtag.js) - Google Analytics