【发布时间】:2015-08-17 11:43:25
【问题描述】:
我有一个 python/django 应用程序正在向 GCM 发送推送通知,但我无法让 collapse_key 参数工作。它为每条新消息创建一个新通知,而不是折叠它们。 python代码如下所示:
url = 'https://gcm-http.googleapis.com/gcm/send'
post_data = {
'to': mytoken,
'collapse_key': 'myappname',
'data': mydata
}
headers = {
'Authorization': 'key={}'.format(GCM_API_KEY),
'Content-Type': 'application/json'
}
requests.post(
url,
data=json.dumps(post_data),
headers=headers)
通知没有问题,但它们不会崩溃。我做错了吗?
客户端是使用 phonegap 推送通知插件 (https://github.com/phonegap-build/PushPlugin) 的 phonegap 移动应用程序。该插件正在处理设备上的推送通知,我不确定如何更改它创建和显示它们的方式。
如果其他人遇到同样的问题,看起来方法是在data 中传递notId 参数。具有相同notId 的通知将相互替换。
【问题讨论】:
-
当您的设备关闭时它们不会崩溃?
-
您可以在创建通知的位置发布代码 sn-p 吗?供您参考:collapse_key 用于在 GCM 服务器上折叠通知,如果您每次收到通知时都创建一个新通知,那么这与 collapse_key 无关,而是您的错误。并且:如果您的设备在线,则 GCM 无需崩溃,因为可以立即发送通知(如果您触发第二个通知,则第一个通知已经从 GCM-server 中删除,因为第一个通知已经发送到设备)
-
来自文档here,我认为您应该尝试在
headers中设置collapse_key参数。 -
看来我误解了
collapse_key的用途,没想到它只是为了离线通知。
标签: android python django google-cloud-messaging