首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >iOS13 apns天青通知中心上的推式标头

iOS13 apns天青通知中心上的推式标头
EN

Stack Overflow用户
提问于 2019-09-26 14:58:23
回答 2查看 4.9K关注 0票数 1

从iOS 13和watchOS 6开始,苹果需要有标题apns-push-type (这个标题的值可以是alertbackground)来进行推送通知。

根据苹果公司的文件:

此标头的值必须准确地反映通知的有效负载的内容。如果存在不匹配,或者所需系统上缺少标头,则APN可能会延迟通知的传递或完全删除通知。

代码语言:javascript
运行
复制
    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" } }

见Apple

不幸的是,使用蔚蓝通知中心,我只能定义aps内容,而不能定义标头。

代码语言:javascript
运行
复制
{ "aps": { "alert":"Alert message!", "content-available": 1 }, "CustomData": "$(CustomData)" }

它是如何处理的天青通知枢纽?如何指定通知的类型?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-09-26 15:20:25

经过一些实验和一些调查,这是目前的Azure服务器行为.

服务器检查通知的内容,以推断正确的值。

如果“content”:1存在并且缺少“警告”,那么"apns-push-type" = "background"将被添加到标头中。

如果存在有效的“警报”,则将"apns-push-type" = "alert"添加到标头中。

因此,请注意拥有一个有效的APNS主体,并具有正确填充的内容可用/警报属性。

有关更多信息,请参见此讨论线

更新2019-10-15:当前背景无声通知存在一些问题,请参见以下讨论:https://github.com/Azure/azure-notificationhubs-dotnet/issues/96

更新2019-11-25:服务器拒绝针对包含报头的APNS安装。现在,这个问题已经解决了,静默通知应该像预期的那样工作。

票数 5
EN

Stack Overflow用户

发布于 2019-10-03 21:35:32

这个答案是不准确的,背景推送现在并不适用于天蓝色。在发送推送时,需要包括标题,如下所示,集线器还需要配置密钥,而不是证书:

代码语言:javascript
运行
复制
var backgroundHeaders = new Dictionary<string, string> { { "apns-push-type", "background" }, { "apns-priority", "5" } };
 Dictionary<string, string> templateParams = new Dictionary<string, string>();
// populated templateParams 

 var notification = new TemplateNotification(templateParams);
 notification.Headers = backgroundHeaders;
// the second parameter is the tag name and the template name as we have it registered from the device.
 var resBack = await hubClient.SendNotificationAsync(notification, tags);
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58119594

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档