swift - Azure 通知中心无法注册具有可用内容的模板

标签 swift azure push-notification apple-push-notifications azure-notificationhub

我正在尝试使用 aps 中的内容可用字段注册适用于 iOS 的 Azure 通知中心的模板,但我遇到了一些与此相关的问题。当我使用以下格式注册模板时,它可以工作:

"{\"aps\" : {\"alert\":\"$(message)\" }, \"payload\": { \"type\" : \"$(type)\", \"startDate\" : \"$(startDate)\", \"id\" : \"$(id)\"} }"

但是,当我尝试添加内容可用字段时,由于我希望能够发送静默通知,因此我收到来自 Azure 的错误,指出这是错误的请求:

"{\"aps\" : {\"alert\":\"$(message)\", \"content-available\": \"$(content-available)\", \"sound\":\"\" }, \"payload\": { \"type\" : \"$(type)\", \"startDate\" : \"$(startDate)\", \"id\" : \"$(id)\"} }"

当我将“$”符号更改为“#”并将“-”更改为“_”时,我可以成功注册,但是,当我尝试发送通知时,我在 Azure 门户上收到错误消息,指出通知有效负载无效:

"{\"aps\" : {\"alert\":\"$(message)\", \"content-available\": \"#(content_available)\", \"sound\":\"\" }, \"payload\": { \"type\" : \"$(type)\", \"startDate\" : \"$(startDate)\", \"sleeperId\" : \"$(sleeperId)\"} }"

我知道这个问题与“content-available”有“-”有关,Azure无法解析。

最佳答案

我设法解决了这个问题,你应该输入 true/false,而不是 1 或 0。因此模板中 content-available 的代码应如下所示:

\"content-available\": \"#(content_available)\"

发送通知时放置

content-available: true

这消除了通知负载错误,并且您会在后台收到静默通知。还要确保警报和声音是空字符串。

关于swift - Azure 通知中心无法注册具有可用内容的模板,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38715163/

相关文章:

ios - 从手动安装转移到通过 Xcode 中的 Cocoapods 使用 Realm

azure - 运行管道时,如何知道管道正在使用 Microsoft 托管代理?

android - 图片推送通知angularjs/ionic

azure - DevOps Starter 不存在或您无权访问它

push-notification - SwiftUI - 当用户打开推送通知时打开特定 View

ios - 什么时候请求推送通知?

ios - 从 Nib 文件移动后如何显示 UITabBarController

swift - 动画完成后 NSView 帧原点重置(动画代理)

ios - 使用 NSFetchedResultsController 在底部 UITableView 中加载更多内容

Azure 队列唯一消息