GCM collapse_key 不工作
GCM collapse_key not working
我有一个 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
的通知将相互替换。
collapse_key 仅在设备离线时有效,例如,如果我的设备处于飞行模式,并且它收到了 5 条相同 collapse_key 的消息,设备只会收到关闭飞行模式时的最后一个。
如果设备持续连接到 GCM,则每条消息都会到达您的设备。
听起来你想在你的通知上设置一个 tag,这样当新消息到达时它会替换现有的通知。
我有一个 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
的通知将相互替换。
collapse_key 仅在设备离线时有效,例如,如果我的设备处于飞行模式,并且它收到了 5 条相同 collapse_key 的消息,设备只会收到关闭飞行模式时的最后一个。
如果设备持续连接到 GCM,则每条消息都会到达您的设备。
听起来你想在你的通知上设置一个 tag,这样当新消息到达时它会替换现有的通知。