【问题标题】:How to set custom layout for those notifications which will be shown when app is in background?如何为应用程序在后台显示的通知设置自定义布局?
【发布时间】:2019-06-11 09:37:24
【问题描述】:

我在我的应用程序中实现了 firebase 云消息传递 (FCM) 服务,并且我收到了自定义布局的通知,但是当应用程序处于前台并且原因很清楚时,这是因为 @987654322 中存在 setCustomContentView(myContentView) @我们都知道onMessageReceived只在应用程序处于前台时处理通知。

现在,我想知道有没有办法为应用程序在后台时显示的通知设置相同的自定义布局?

【问题讨论】:

  • 使用 data 负载而不是 notification 负载,它适用于前台和后台。
  • 使用数据对象代替通知对象
  • 以及如何设置自定义布局?能给我一些代码吗?

标签: java android push-notification firebase-cloud-messaging remoteview


【解决方案1】:

FCM 有两种消息类型:当您的应用在后台时。

  • 通知消息:

  • 数据信息:

    1. 通知消息:通知发送到设备的系统托盘,而不是 onMessageReceived

    2. 数据消息:总是,通知被传递到 onMessageReceived

所以,当应用程序处于后台或前台时,您应该发送格式为数据消息以处理 onMessageReceived 中的通知

【讨论】:

    【解决方案2】:

    我建议修改服务器代码以在前台和后台接收 onMessageReceived 数据,并要求发送方仅发送数据负载而不通知。

    这里我删除了通知负载。

    {"to":"[add your token]","data":{"title":"Working Good","body":"[add your message]"},"priority":"high"}
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多