当前位置:首页 > iOS开发专区 > 正文内容

IOS使用APNS推送Payload字节数限制导致推送不成功

11年前 (2014-07-23)iOS开发专区51156
[attachment=1273]
这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://blog.sina.com.cn/s/articlelist_1238625327_5_1.html

扫描二维码推送至手机访问。

版权声明:本文由 果签工坊 发布,如需转载请注明出处。

本文链接:https://applep12.vip/programming/6ZQFlxKdzuN3wMs.html

分享给朋友:

相关文章

直接操作Window对象进行 打印 保存等操作

打印代码:<SCRIPT language="JavaScript">       function printdiv() {  ...

js直接操作access数据库

<html>    <head><titel>jstest</title></head>    &l...

关于extjs组件中的内存泄露问题

所有component的子类都自动的参与标准的ext组件的生命周期:创建,渲染,销毁,这些操作由Container类提供。在创建容器时,组件可以通过item配置选项添加到容器中,或者可以add方法动态地添加。所有组件都注册到了ext.com...

Struts、Spring、Hibernate方向面试题

Hibernate工作原理及为什么要用?原理:1.读取并解析配置文件2.读取并解析映射信息,创建SessionFactory3.打开Sesssion4.创建事务Transation5.持久化操作6.提交事务7.关闭Session8.关闭Se...

IETester调试工具

IETester是一个WebBrowser控件,包含有五个版本的IE浏览器,界面美观。IETester是一个免费的WebBrowser控件,让您有渲染和IE8的JavaScript引擎,IE7的IE 6和在Windows 7,Vista和X...

持久化层的Java对象可处于哪些状态?这些状态有哪些特征?

当应用程序通过new语句创建了一个对象,这个对象的生命周期就开始了,当不再有任何引用变量引用它,这个对象就结束生命周期,它占用的内存就可以被JVM的垃圾回收器回收。对于需要被持久化的Java对象,在它的生命周期中,可处于以下三个状态之一:(...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。