// 对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秒)。 |
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 |
用户自定义消息类型, 以及传递附属信息 |
代码示例
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( "无法获取数据" );
} |
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 类
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;
}
} |
JPush极光推送Java服务器端API的更多相关文章
-
JPush极光推送Java服务器端实例
import cn.jpush.api.JPushClient; import cn.jpush.api.common.resp.APIConnectionException; import cn.j ...
-
JPush极光推送 Java调用服务器端API开发
极光推送是:使得开发者可以即时地向其应用程序的用户推送通知或者消息,与用户保持互动,从而有效地提高留存率,提升用户体验.简单的说就是通过JPush后台管理网站进行app消息的推送.可以让用户及时 ...
-
**极光推送PHP服务器端推送移动设备消息(Jpush V2 api)
jpush.php 这是推送方法 用到curl发送请求 <?php /** * 极光推送php 服务器端 * @author yalong sun * @Email <syl_ad@1 ...
-
C#—ASP.NET:集成极光推送(Push API v3)
C#—ASP.NET:集成极光推送(Push API v3) 原文地址: https://blog.csdn.net/CXLLLK/article/details/86489994 1.极光推送官 ...
-
用JPUSH极光推送实现服务端向安装了APP应用的手机推送消息(C#服务端接口)
这次公司要我们做一个功能,就是当用户成功注册以后,他登录以后要收到消息,当然这个消息是安装了我们的手机APP应用的手机咯. 极光推送的网站的网址是:https://www.jpush.cn/ 极光推送 ...
-
atitit.web 推送实现方案集合(2)---百度云,jpush 极光推送 ,个推的选型比较.o99
atitit.web 推送实现方案集合(2)---百度云,jpush 极光推送 ,个推的选型比较.o99 1.1. 云推送有推送次数或频率的限制吗? 1 1.2. 推送的消息长度 1 1.3. 离线消 ...
-
Laravel 集成 JPush 极光推送指北
我是一个 Laravel 小白,我是一个 Laravel 小白,我是一个 Laravel 小白(默念三遍再往下读,如果非小白就不用看了). Laravel 使用 Composer 来管理代码依赖.所以 ...
-
使用JPush(极光推送)实现远程通知
使用JPush(极光推送)实现远程通知 远程推送是APP 必备的功能, 现在第三方的 SDK 已经做的非常完备了, 在 iOS10.0出来之后, 极光推送也及时更新了他的 SDK, 今天小试了一下效果 ...
-
极光推送-Java后台实现方式一:Http API
Java后台实现极光推送有两种方式,一种是使用极光推送官方提供的推送请求API:https://api.jpush.cn/v3/push,另一种则是使用官方提供的第三方Java APIjar包,这里先 ...
随机推荐
-
spring data jpa 调用存储过程
网上这方面的例子不是很多,研究了一下,列出几个调用的方法. 假如我们有一个mysql的存储过程 CREATE DEFINER=`root`@`localhost` PROCEDURE `plus1in ...
-
HDU 4431 Mahjong (DFS,暴力枚举,剪枝)
题意:给定 13 张麻将牌,问你是不是“听”牌,如果是输出“听”哪张. 析:这个题,很明显的暴力,就是在原来的基础上再放上一张牌,看看是不是能胡,想法很简单,也比较好实现,结果就是TLE,一直TLE, ...
-
[iOS 10 day by day] Day 1:开发 iMessage 的第三方插件
本文介绍了 iOS 10 的一个重要更新:Messages 应用支持第三方插件了.作者用一个小游戏作为例子,说明了插件开发从建工程开始,到绘制界面.收发消息的全过程. <iOS 10 day b ...
-
java-map-IdentityHashMap
1.背景 今天翻开IdentityHashMap的时候,就傻眼了,这个到底是个逻辑啊,我的程序代码如下: IdentityHashMap<String,String> identityHa ...
-
linux虚拟文件系统2
转自:http://rstevens.iteye.com/blog/849413 一.概述 Linux 文件系统是相当复杂的,本文只分析虚拟文件系统的实现,对具体的文件系统不涉及. 即使是虚拟文件系统 ...
-
看了一个烟花的html作品 --引用:http://www.w3cfuns.com/blog-5444049-5404365.html
最近老大想把项目改成响应式,一直在学习没时间更新博客.今天看到一个原生的js烟花项目,感觉很好,把记下来,以后把妹用. [run]<!DOCTYPE html><html>&l ...
-
1.Java集合总结系列:Java集合概述
一.概述 集合是 Java 中非常重要的 API,在实际应用中非常广泛,在许多面试中也是必考的知识点. Java 所有集合类都位于 java.util 包下,Java 的集合只能保存对象,而无法保存保 ...
-
nodejs之querystring(查询字符串)
querystring模块经常用在URL参数的处理,一共有四个方法: 1. stringify (字符串转对象) 2. parse (对象转字符串) 3. escape (对字符串进行URL编码) 4 ...
-
【题解】Luogu SP1435 PT07X - Vertex Cover
原题传送门 求树的最小点覆盖,就是一个树形dp 类似于没有上司的舞会 dp的状态为\(f[i][0/1]\),表示i节点是否选择 边界是\(f[x][0]=0\),\(f[x][1]=1\) 转移方程 ...
-
Name方法
重命名磁盘文件.目录或文件夹. 语法 Name 旧路径名称 As 新路径名称 “Name”**** 语句语法包含以下部分: 部分 说明 旧路径名称 必需. 字符串表达式,指定现有的文件名和位置;可能包 ...