当前位置: 首页 > 面试题库 >

Android FCM-如何仅显示一个通知

杨腾
2023-03-14
问题内容

我正在将推送通知从FCM发送到Android设备,这是通过将POST消息发送到包含JSON正文的FCM来完成的。

如果我发送相同的JSON正文两次,则Android设备将显示两个通知(或三个或四个,…)。但我只想显示一个。

“ collapse_key”应该可以解决这个问题,对吧?(FCM文档)

但是,它应该插入哪里或如何插入?

当前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”,我应该在通知中使用“ tag”选项。

因此,使用此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”,我会很高兴,显然我误解了它。



 类似资料:
  • 最后是我的适配器类

  • 问题就在这里:我创建了世界上最简单的RecyclerView,但它只显示第一个项目。我不明白为什么。谢谢你的帮助。 item_layout.xml mainactivity.java

  • 我正在PyGame中制作一个太空入侵者游戏,但当我尝试绘制投射物时,它会覆盖/更改主精灵(平面)。如何解决此问题,以便在屏幕上显示多个精灵?

  • 问题内容: 如何只显示第一个角元素? 我正在这样使用: 但是由于我没有重复,所以我不必使用吗?我如何才能只显示第一个,而不必进行ng-repeat? 问题答案: 不要使用ng-repeat指令,这应该可以工作:

  • 帮助我不会显示比特率<玩家。getBitrateInfoListFor(“视频”);仅显示一个比特率-454948 显示GPAC生成的mpd 游戏者getBitrateInfoListFor(“视频”);仅显示一个比特率-454948

  • 问题内容: 如何获取提示通知。使用以下代码,我只能在状态栏上看到三个点,在通知栏上看到一个通知。 问题答案: 我遇到了同样的问题,但我使用的是较新的呼叫,该呼叫需要来自的频道ID 。 如果创建的通知的重要性值为,则该通知将仅作为抬头通知出现: 显示抬头通知: