IOS使用APNS推送Payload位元組數限制導致推送不成功
這2天需要在推送上加上指令碼,找到了badge方法可以加指令碼。加上後但是怎麼推送也不成功。鬱悶了好久,在網上尋找相關資料。
終於被我找到原因:
“Payload--最多256bytes。”
原來是發送的payload位元組超過規定字元。
使用payload.getBytes().length得到位元組數。查看了下字元個數240個位元組,沒有超過256,反覆測試,得知,256bytes也不夠準確。就把原payload中的某些值去掉了(loginUri登入,uri用於跳轉),再次測試,推送成功。
========payload=========
原來:
{"loginUri":"http://192.168.1.8:8086/admin/msm/login","messageID":"580","aps":{"alert":"鄭子宣向你發送了一個工作事項","sound":"default","badge":5},"uri":"http://192.168.1.8:8086/admin/msm/login?module=WEIBO&moduleId=93f7cf993df34d3dbc1681f08cced08c"}====位元組數====250
新:
{"messageID":"608","aps":{"alert":"鄭子宣向你發送了一個工作事項","sound":"default"},"uri":"http://192.168.1.8:8086/admin/msm/login?module=WEIBO&moduleId=caedadfd80f841538a3414ca737c2ab0"}====位元組數====187
=======================
原文地址:http://www.eqishare.com/read.php?tid-980.html
更多文章:http://blog.sina.com.cn/s/articlelist_1238625327_5_1.html