1. 程式人生 > >蘋果推送服務端java 程式碼簡解

蘋果推送服務端java 程式碼簡解

思路: 從客戶端獲取的deviceToken,定義訊息模式Payload,註冊deviceToken,連線APNS,傳送推送,停止連線APNS,刪除deviceToken;

1,從客戶端獲取的deviceToken,在此為了測試簡單,寫固定的一個測試裝置標識

String deviceToken = "337dd964535f2a6efd9d346120b1b5771f522a2da13c09878b5f18e397507e60";

開發環境:  客戶端生成deviceToken,後臺服務端直接獲取使用;

生產環境:    客戶端生成deviceToken,呼叫服務端介面,將資料儲存到資料庫,後臺服務端從資料庫獲取使用;


2,定義訊息模式

PayLoad payLoad = new PayLoad();
payLoad.addAlert("Apple測試資料");
payLoad.addBadge(1);//訊息推送標記數,小紅圈中顯示的數字。
payLoad.addSound("default");
payLoad.addCustomDictionary("url", "https://img.icos8.cc/image/hhvy");
payLoad.addCustomDictionary("mutable-content", 1);

名詞解釋:

alert------------顯示訊息標題;

badge--------訊息推送標記數,小紅圈中顯示的數字

sound--------預設或者自定義的聲音;

addCustomDictionary---------自定義字典

3,註冊deviceToken

PushNotificationManager pushManager = PushNotificationManager.getInstance();
pushManager.addDevice("iPhone", deviceToken);
4,連線APNS
String host = "gateway.sandbox.push.apple.com"; //測試
//String host = "gateway.push.apple.com";//生產
int port = 2195;
//  String certificatePath = "D:/p12/**-cert.p12";//客戶端生成的用於JAVA後臺連線APNS服務的*.p12檔案位置
String certificatePath = "C:/tomcat/aps_development_key.p12";//客戶端生成的用於JAVA後臺連線APNS服務的*.p12檔案位置
String certificatePassword = "123123";//p12檔案密碼。
pushManager.initializeConnection(host, port, certificatePath, certificatePassword, SSLConnectionHelper.KEYSTORE_TYPE_PKCS12);
5,傳送推送
Device client = pushManager.getDevice("iPhone");
System.out.println("推送訊息: " + client.getToken()+"\n"+payLoad.toString() +" ");
6,停止連線APNS
pushManager.stopConnection();

7,刪除deviceToken
pushManager.removeDevice("iPhone");