我正在尝试使用 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/