1. 程式人生 > >阿裏雲推送服務

阿裏雲推送服務

移動終端 dev ndt 3D 隨機數 hmac 獲得 通知欄 接口調用

移動推送

  • 提供從雲端到移動終端的優質推送服務,支持Android和iOS平臺的通知/消息的推送功能.

推送內容及模式

  • 通知:會自動在手機端彈出通知欄,用戶可以打開或者清除通知欄。iOS的通知走APNs(蘋果官方推送通知服務),android 走移動推送自己的通道

  消息:不會自動在通知欄彈出,會在app中提示消息的接收。iOS和android的消息都走移動推送自己的通道

推送方式

  • 按設備號推送,在客戶端調用getDeviceld獲得設備號,再通過控制臺/openapi接口推送

名詞解釋

  • AppKey:app在移動推送中的唯一標示。推送SDK初始化和調用openapi推送時需要,從推送控制臺APP列表

    頁的應用證書中獲取。

  • AppSecret:app的秘鑰。推送SDK初始化時需要,從推送控制臺APP列表頁的應用證書中獲取。

  • accessKeyld和accessKeySecret:阿裏雲用戶使用雲產品的openapi接口驗權時需要,從阿裏雲官網控制臺獲取https://ak-console.aliyun.com/#/accesskey

  • responseld:openapi推送請求返回ID(如需排查問題可告訴客戶人員該ID)。

  • messageld:某一次推送的消息ID。從控制臺通知記錄/消息記錄中可以找到消息ID。

  • deviceld:設備在推送的唯一標示。 32位,數字和小寫字母組合,通過代碼獲取:Android:CloudPushService的getDeviceld方法,iOS:CloudPushSDK的getDeviceld方法。

  • deviceToken:iOS設備在蘋果中心註冊時返回的64位設備標識符(iOS設備同時會有deviceld和deviceToken,請不要混淆)。

  • account:給設備添加的賬號,可以是任意您的業務需要的,一個設備只能添加一個account,account可以添加多個設備。

  • alias:給設備添加的別名,可以是任意您的業務需要的,一個設備可以最多添加128個alias,一個alias可以最多添加128個設備。

  • tag:給設備添加的標簽,可以是任意您的業務需要的,一個appkey最多能綁定1萬個tag,一個tag下綁定的設備沒有限制。

限制說明

  • targetValue如果為集合,按別名或者設備推送,一次最多傳遞1000個(通過“,”分割),按賬戶推送,則最多傳遞100個;
  • 每個App最多創建1萬個tag,tag名稱要小於等於128個字符(中文算1個),一個Tag下可以綁定多個設備,設備個數沒有限制;

開始配置

  • Android配置: 勾選Android,並填入PackageName,包名需要與您的代碼中的applicationID保持一致。請務必確保您創建的不同應用具有不同的PackageName(就是創建應用的bundleld),阿裏雲移動推送Android SDK以PackageName作為路由依據,不同應用配置相同包名,可能導致消息錯誤發送,即與目標應用有相同包名的應用接收到推送消息。

查看Appkey&Secret

在產品列表,進入單個產品管理,在APP列表點擊查看信息按鈕即可查看該應用的Appkey和Secret。

設備綁定

API說明
QueryAliases 查詢別名
BindAlias 綁定別名
UnbindAlias 解綁別名
QueryTags 查詢TAG
ListTags TAG列表
BindTag 綁定TAG
UnbindTag 解綁TAG
RemoveTag 刪除TAG

公共請求參數

公共請求參數是指每個接口都需要使用到的請求參數。

名稱類型是否必須描述
Format String 返回值的類型,支持JSON與XML,默認為XML。
RegionId String 當前請設置為cn-hangzhou
Version String API版本號,為日期形式YYYY-MM-DD,請參見概覽。
AccessKeyId String 阿裏雲頒發給用戶的訪問服務所用的密鑰ID。
Signature String 簽名結果串,關於簽名的計算方法,請參見 簽名機制。
SignatureMethod String 簽名方式,目前支持HMAC-SHA1。
Timestamp String 請求的時間戳。日期格式按照ISO8601標準表示,並需要使用UTC時間,格式為YYYY-MM-DDThh:mm:ssZ,例如2016-02-25T12:00:00Z(為UTC時間2016年2月25日12點0分0秒)。
SignatureVersion String 簽名算法版本,目前版本是1.0。
SignatureNonce String 唯一隨機數,用於防止網絡重放攻擊,用戶在不同請求間要使用不同的隨機數值。

示例

https://cloudpush.aliyuncs.com/
?Format=XML
&RegionId=cn-hangzhou
&Version=2016-08-01
&AccessKeyId=testid
&Signature=Pc5WB8gokVn0xfeu%2FZV%2BiNM1dgI%3D
&SignatureMethod=HMAC-SHA1
&SignatureNonce=15215528852396
&SignatureVersion=1.0
&Timestamp=2016-02-25T12:00:00Z
&<接口相關參數>

公共返回參數

用戶發送的每次接口調用請求,無論成功與否,系統都會返回一個唯一識別碼RequestId給用戶。

JSON示例

{
    "RequestId": "4C467B38-3910-447D-87BC-AC049166F216"
    /* 返回結果數據 */
}

  

請求結構

服務地址

移動推送API的服務接入地址為:cloudpush.aliyuncs.com

請求參數

每個請求都需要指定要執行的操作,即Action參數(例如Push),以及每個操作都需要包含的公共請求參數和指定操作所特有的請求參數。

字符編碼

請求及返回結果都使用UTF-8字符集進行編碼

阿裏雲推送服務