標籤:
在開發向蘋果Apns推送Message Service功能,我們需要根據Apns接受的資料格式進行推送。下面接受我在進行apns推送時候總結的一點apns服務接受的Json資料格式
樣本 1:
以下負載包含哦一個簡單的 aps 字典。它使用字串而不是字典作為 alert 的值,該負載同樣包含了一個自訂的屬性數組。
{ "aps" : { "alert" : "message" },//alert表示推送的訊息文本 "parm" : [ "key", "value" ] //parm 表示其他業務參數,提供擴充,ios端可以擷取到針對不同的商務邏輯需要與ios端進行參數結構的約束}
樣本 2:
該樣本的負載包含了一個 aps 的字典,指定裝置顯示一個警告訊息並在左邊包含一個關閉按鈕和右邊顯示一個本地化的”action”按鈕。在該例中,”PLAY”被作
為鍵使用來從Localizable.strings檔案裡面當前偏好語言的字典裡面擷取對應的“Play”的字串。aps 字典同樣要求應用程式的表徵圖顯示數字 5。
{ "aps" : { "alert" : { "body" : "Bob wants to play poker", //訊息 "action-loc-key" : “PLAY" }, "badge" : 5, //顯示在App左上方的角標數,代表未讀訊息,需要自己的服務進行統計和控制,apns不支援+1或者-1的操作。 }, "parm1" : "bar", //控制參數</span> "parm2″ : [ "bang", "value" ] //擴充參數}
樣本 3:
該樣本的負載指定裝置應用顯示一個警告資訊並包含關閉按鈕和查看按鈕。同時它要求應用程式的表徵圖顯示數字 9,包含震動和提示音,預設sound為default
{ "aps" : { "alert" : "message",//訊息 "badge" : 9,//顯示9個角標 "sound" : "default" //震動提示音。預設為default }, "parm1″ : "bar",//擴充參數1 "parm2″ : 2 //擴充參數2 }
樣本 4:
下面的樣本顯示了一個空的 aps 字典,因為 badge 屬性被隱藏了,所以當前應用程式圖示的任何數字都會被移除。而自訂屬性 acme2 是一個包含兩個整形的數組
{ "aps" : { "alert" : "",//空訊息 不會出現彈窗提示 "badge" : 9,//顯示9個角標數,這種方法用於同一帳號登入兩台裝置,在一個裝置上看了訊息,未讀書減少,另一個裝置上的腳表也有同步減少。 "sound" : "" //沒有真的和提示音 }, "acme1" : 1 //擴充參數}
iOS開發之功能模組--Apns推送中的的json格式介紹