JPush極光推送Java服務器端API

// 對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秒)。java

DeviceEnum Enum 可選 指定的設備。
可選值:DeviceEnum.Android, DeviceEnum.IOS。
不填或者null值爲同時支持 Android 與 iOS。

發送消息

JPushClient公共方法android

 

方法名稱 參數列表(必須) 方法說明
setEnableSSL boolean enableSSL (true爲使用ssl, 默認爲不使用ssl) 是否啓動ssl安全鏈接

sendNotificationWithImeiios

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)
以及傳遞附屬信息 

sendCustomMessageWithImeiapi

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)
以及傳遞附屬信息 

sendCustomMessageWithTagapp

int sendNo , 
String tag ,
String msgTitle ,
String msgContent
發送帶Tag的消息
sendCustomMessageWithTag int sendNo , 
String tag ,
String msgTitle ,
String msgContent ,
String msgContentType ,
Map<String, Object> extra 
用戶自定義消息類型,
以及傳遞附屬信息 

sendNotificationWithAliasui

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)
以及傳遞附屬信息 

sendCustomMessageWithAliasthis

int sendNo , 
String alias ,
String msgTitle , 
String msgContent
發送帶Alias的消息
sendCustomMessageWithAlias int sendNo , 
String alias ,
String msgTitle , 
String msgContent , 
String msgContentType ,
Map<String, Object> extra 
用戶自定義消息類型,
以及傳遞附屬信息 

sendNotificationWithAppKeyspa

int sendNo , 
String msgTitle , 
String msgContent
發送通知給AppKey的全部用戶
sendNotificationWithAppKey int sendNo , 
String msgTitle , 
String msgContent ,
int builderId ,
Map<String, Object>extra
自定義通知欄(沒有則填寫0)
以及傳遞附屬信息 

sendCustomMessageWithAppKeycode

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;
     }
}
相關文章
相關標籤/搜索