// 对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; } } 原文地址: http://www.cnblogs.com/zhanghaoh/archive/2013/02/20/2919282.htm Push API v2 - 极光推送开发 - JPush 开发文档

更多相关文章

  1. 自己写一个flutter插件
  2. Android(安卓)Looper和Handler分析
  3. Android(安卓)wifi-framework WifiMonitor和WifiNative学习
  4. android消息机制(handler运行机制)解析
  5. android Handler,Looper,Message三者关系
  6. Android之通知的使用-Notification
  7. Android开发: 线程间消息通信 Looper 和Handler
  8. Android(安卓)通知(使用NotificationCompat.Builder )
  9. 即将到来的Android(安卓)N,将具备这些新特性

随机推荐

  1. python编码问题之\"encode\"&\"decode
  2. %d和%s的目的是什么?
  3. python (9)统计文件夹下的所有文件夹数目、
  4. 使用Django REST Framework来快速实现API
  5. Python的运算符与表达式
  6. 2_python连接MariaDB错误
  7. jupyter安装出现问题:安装后无法打开
  8. sklearn进行数据预处理-归一化/标准化/正
  9. 廖雪峰python3.6教程笔记1-Python简介与
  10. python:如何在Linux中编写守护进程