推送通知警报文本的最大长度是多少?

hpi*_*que 139 iphone push-notification ios

iOS推送通知的警报文本的最大长度是多少?

文档指出通知有效负载总共不得超过256个字节,但肯定必须对警报文本有特定的字符限制.

asc*_*oli 239

警报文本的实际限制不会记录在任何地方.文档中唯一说的是:

在iOS 8及更高版本中,通知有效负载允许的最大大小为2千字节; Apple推送通知服务拒绝任何超出此限制的通知.(在iOS 8和OS X之前,最大有效负载大小为256字节.)

这是我能做的一些实验.

  • 警报:在iOS 7之前,警报显示限制为107个字符.更大的消息被截断,你会在显示的消息的末尾得到一个"...".在iOS 7中,限制似乎增加到235个字符.如果你超过8行,你的消息也会被截断.
  • 横幅: 横幅被截断约62个字符或2行.
  • 通知中心:通知中心中的消息被截断大约110个字符或4行.
  • 锁定屏幕:与通知中心相同.

正如这里提醒的是官方文档中的一个非常好的说明:

如有必要,iOS会截断您的消息,使其适合每种通知传递方式; 为了获得最佳效果,您不应截断您的消息.

  • 应该澄清一个应用内UIAlertView没有显示限制; 超过一定长度的文本将进入滚动视图.但是,SMS或推送警报可能具有107个字符的限制. (8认同)

Anu*_*rag 26

它应该是236个字节.据我所知,警报文本的大小没有限制,只有总有效负载大小.因此,考虑到有效负载是否最小并且仅包含警报信息,它应该如下所示:

{"aps":{"alert":""}}
Run Code Online (Sandbox Code Playgroud)

这需要20个字符(20个字节),留下236个字节放在警报字符串中.ASCII为236个字符,UTF8和UTF16可能较小.

  • ASCII是UTF-8的子集,因此通过线路传输8位ASCII始终是安全的. (13认同)

Wil*_*iss 15

此处记录了增强格式通知的限制.

它明确指出:

有效负载不得超过256个字节,且不得以空值终止.

ascandroli权利要求以上,他们能够与1400个字符发送消息.我自己使用新通知格式进行测试表明,在256字节限制上只有1个字节的消息被拒绝.鉴于文档在这一点上非常明确,我建议使用256更安全,无论您可以通过实验获得什么,因为无法保证Apple将来不会将其更改为256.

至于警报文本本身,如果你可以在256总有效载荷大小中适应它,那么它将由iOS显示.它们会截断状态栏上显示的消息,但如果您打开通知中心,则会显示整个消息.它甚至呈现换行符\n.


jce*_*ile 11

编辑:

使用最新信息更新答案

通知有效负载允许的最大大小取决于您使用的提供程序API.

使用传统二进制接口时,最大有效负载大小为2KB(2048字节).

使用HTTP/2提供程序API时,最大有效负载大小为4KB(4096字节).对于互联网协议语音(VoIP)通知,最大大小为5KB(5120字节)

旧答案:根据苹果文档,iOS 8的有效载荷为2千字节(2048字节),iOS 7及之前为256字节.(删除了链接,因为它是一个旧文档,现在它已经坏了)

因此,如果您只发送文本,则可以使用2028(iOS 8+)或236(iOS 7-)字符.

通知有效负载

每个远程通知都包含有效负载.有效负载包含有关系统应如何提醒用户以及您提供的任何自定义数据的信息.在iOS 8及更高版本中,通知有效负载允许的最大大小为2千字节; Apple推送通知服务拒绝任何超出此限制的通知.(在iOS 8和OS X之前,最大有效负载大小为256字节.)

但我已经过测试,你也可以向iOS 7设备发送2千字节,即使在生产配置中也是如此


Loo*_*zie 10

这是一些截图(横幅,警报和通知中心)

警报旗帜通知中心


Jor*_*sys 7

对于常规远程通知,最大大小为4KB(4096字节) https://developer.apple.com/library/content/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/CreatingtheNotificationPayload.html

### iOS的大小限制为256字节,但自iOS 8的引入已经改为2kb!

https://forums.aws.amazon.com/ann.jspa?annID=2626

在iOS 8中,Apple推出了一些新功能,可以为移动推送通知提供一些丰富的新用例 - 交互式推送通知,第三方小部件和更大(2 KB)的有效负载.今天,我们很高兴地宣布支持iOS 8宣布的新移动推送功能.我们正在发布一个新的iOS 8示例应用程序,演示如何使用SNS实现这些新功能,并且还实现了对更大的2KB有效负载的支持.


kle*_*vre 5

根据WWDC 713_hd_whats_new_in_ios_notifications.对于iOS 8,推送有效负载的先前大小限制为256字节,现在已增加到2千字节.

资料来源:http: //asciiwwdc.com/2014/sessions/713?q =notification#1414.0