iOS 13-静默推送通知不再可靠

Seg*_*gev 9 push-notification apple-push-notifications ios ios13

iOS 13的变化:

更改1:在iOS 13 Beta 6中,操作系统不再处理优先级为10的静默远程通知(AKA背景通知),而是将其丢弃。过去有记录,但从未执行过。

文件

为有效负载包含内容可用键的通知指定此优先级(10)是错误的。

日志:

错误14:11:19.224387 +0300 dasd不支持:高优先级静默推送。(App =)

默认14:11:19.224713 +0300 dasd守护程序取消活动:{(com.apple.pushLaunch.com.some.bundle:64660B)}

默认值14:11:19.225032 +0300 dasd已取消:com.apple.pushLaunch.com.some.bundle:64660B的优先级为10!

默认14:11:19.225363 +0300 dasd按活动删除对应用程序的启动请求

变更2:向运行iOS 13的设备发送值为background或的通知时,需要一个新密钥apns-push-type alert

符合上述要求后,我仍然看到有关无提示远程通知的随机行为。我可以看到通知已到达设备,并且在某些情况下(即使设备已连接到电源),通知也已被操作系统删除。

失败日志:

默认值12:19:33.450155 +0300 dasd提交的活动:com.apple.pushLaunch.some.bundle:3B0049,优先级5 <§private>

默认12:19:33.457216 +0300 dasd <§private>不允许推送

默认值12:19:33.457355 +0300 dasd守护程序取消活动:{(com.apple.pushLaunch.some.bundle:3B0049)}

成功日志:

默认14:37:33.633462 +0300 dasd提交的活动:com.apple.pushLaunch.com.some.bundle:D1EEDF的优先级为5 <§private>

默认值14:37:33.639191 +0300 dasd为活动<§private>添加启动请求(<§private>)以进行应用

默认的14:37:33.639240 +0300 dasd对<§private>的启动请求:<§private>

回到文档:

指定5以基于用户设备上的电源注意事项发送通知。对于其有效负载包括内容可用密钥的通知,请使用此优先级。具有此优先级的通知可能会被分组并突发发送到用户的设备。它们也可能受到限制,在某些情况下无法交付。

据我所知,静默通知会受到限制,不会随机发送(即使电池已满并且设备已连接到电源)

仍在尝试找出这是正确的行为还是Apple将要修复的错误。