[Azure通知中心上的iOS13 apns-push-type标头
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[Azure通知中心上的iOS13 apns-push-type标头相关的知识,希望对你有一定的参考价值。
[从ios 13和watchOS 6开始,Apple要求存在用于推送通知的标题apns-push-type(此标题的值为警报或背景)。
根据Apple文档:
此标头的值必须准确反映通知的有效内容。如果存在不匹配,或者在所需的系统上缺少标头,则APN可能会延迟通知的发送或将其完全丢弃。
HEADERS
- END_STREAM
+ END_HEADERS
:method = POST
:scheme = https
:path = /3/device/xxxxxx
host = api.sandbox.push.apple.com
authorization = bearer xxx
apns-id = xxx-xxx-xxx
apns-push-type = alert
apns-expiration = 0
apns-priority = 10
apns-topic = com.example.MyApp
DATA
+ END_STREAM
{ "aps" : { "alert" : "Hello" } }
不幸的是,使用天蓝色的通知中心,我只能定义aps
内容,而不能定义标题。
{ "aps": { "alert":"Alert message!", "content-available": 1 }, "CustomData": "$(CustomData)" }
[Azure通知中心如何处理?如何指定通知的类型?
答案
经过一些实验和一点点调查,这是当前的Azure服务器行为...
服务器检查通知的内容以推断正确的值。
如果“内容可用”:存在1而缺少“警报”,则将"apns-push-type" = "background"
添加到标题。
请参阅此discussion thread了解更多信息
如果存在有效的“警报”,则将"apns-push-type" = "alert"
添加到标题。
因此,请确保具有有效的APNS JSON正文,并正确填充内容可用/警报属性。
以上是关于[Azure通知中心上的iOS13 apns-push-type标头的主要内容,如果未能解决你的问题,请参考以下文章
天蓝色通知中心上的 iOS13 apns-push-type 标头
Azure 通知中心 - 从移动应用注册并通过应用后端发送通知