我正在尝试在我的应用中折叠/合并属于同一事件的多个通知。 iOS 10 在有效负载中引入了一个键名 apns-collapse-id。文档说具有相同 apns-collapse-id
的多个远程通知将合并并显示为单个通知。
所以我们的通知负载中包含带有 apns-collapse-id
和 thread-id
的负载。不幸的是,由于网上没有太多内容解释这些键的实际工作原理,为了安全起见,我们为 apns-collapse-id
和 thread-id
使用了相同的唯一值.
我们期望具有相同 apns-collapse-id
的多个远程通知合并。它没有发生。
很少有人建议 APNS 崩溃不是免费的,我必须实现 UNNotificationContentExtension
并手动处理通知。我知道我可以添加和删除已发布的本地通知,但不确定如何更新已发布的远程通知。
这是我们的有效载荷的样子
payload {
"aps": {
"alert": {
"title": "Some title : ",
"body": "Some body text"
},
"sound": "default",
"payload": {
"target": {
"some key" : "Some value"
},
"thread_id": "Some_string_155863",
},
"apns-collapse-id": "Some_string_155863",
"mutable-content": 1,
"thread-id": "Some_string_155863",
"badge": 33
},
"thread-id": "Some_string_155863",
"apns-collapse-id": "Some_string_155863",
"mutable-content": 1
}
如您所见,apns-collapse-id 和 thread-id 在 JSON 中重复多次,因为我们不确定它们的确切位置
我们还没有使用 HTTPS/2,但我相信 iOS 10 通知仍然支持旧的 HTTPS。我不是一个真正的网络人,所以我不完全理解这些事情。忽略我对 Https 和 Http2 的傲慢
有没有人设法让 apns-collapse-id 工作?请帮忙。
apns-collapse-id
是一个请求头,所以你需要使用 HTTP 服务,而不是旧的二进制接口(interface)。
关于ios - apns-collapse-id 不合并多个通知 iOS 10,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44560851/
欢迎光临 OGeek|极客世界-中国程序员成长平台 (https://ogeek.cn/) | Powered by Discuz! X3.4 |