我正在从 FCM 向 Android 设备发送推送通知,这是通过向 FCM 发送包含 JSON 正文的 POST 消息来完成的。
如果我两次发送相同的 JSON 正文,Android 设备将显示两个通知(或三个,或四个,...)。但我希望它只显示一个。
“collapse_key”应该可以解决这个问题,对吧? ( FCM Documentation )
但是应该在哪里或如何插入呢?
这个 SO 问题回答了这个问题,但没有给出示例:Can FCM notification on Android overwrite previous one?
当前 JSON 正文:
{
"notification": {
"title": "MyAPP",
"body": "Open MyAPP to access your data",
"click_action" : "OPEN_MAINACTIVITY",
"icon": "ic_launcher_red",
"color": "#ff0000"
},
"data": {
"extra1":"sample1",
"extra2":"sample2"
},
"registration_ids":[
"--my_id--"
]
}
我尝试了很多方法来包含“collapse_key”,但到目前为止还没有成功。还是多条通知。欢迎任何帮助。
最佳答案
好吧,我继续挖掘并找到了答案:它不是“collapse_key”,我应该在通知中使用“标签”选项。
所以通过使用这个 JSON 只显示一个通知:
{
"notification": {
"title": "MyAPP",
"body": "Open MyAPP to access your data",
"click_action" : "OPEN_MAINACTIVITY",
"icon": "ic_launcher_red",
"color": "#ff0000"
"tag": "unique_tag"
},
"data": {
"extra1":"sample1",
"extra2":"sample2"
},
"registration_ids":[
"--my_id--"
]
}
希望这对其他人有帮助!
如果有人想进一步解释“collapse_key”,我会很高兴,显然我误解了它。
关于Android FCM - 如何只显示一个通知,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43610964/