如果应用关闭,Fcm 通知无法显示图像

Fcm Notification cannot show image if app close


我正在发送通知并处理通知 FirebaseMessagingService.
但是,如果应用在后台 FirebaseMessagingService 无法处理通知并且不显示图像。
我怎样才能做到这一点? (如果应用程序在前台,则图片会显示在通知中。) 如果我使用一个信号图像一直显示。

{
  "to" :"4sQrChOF16uMYYEKeiRz6dzCnN3m9OCE9jwOyPBOD92IlzljWvQ_1quiYyluP",
  "notification" : {
    "body" : "great match!",
    "title" : "Portugal vs. Denmark",
    "icon" : "myicon"
    },
  "data": {
    "body" : "great match!",
    "title" : "Portugal vs. Denmark2222",
    "img_url" : "https://encrypted-tbn0.gstatic.com/images?q=tbn%3AANd9GcRYJ_0NZFg0htNXwmKkyTv76bw05EacXaXNnqd4ZrPB7wVTXNxR"
  }
}

您可以通过以下 2 种方式始终如一地在通知中显示图片:

  1. [推荐方法] - 使用更新的 FCM HTTP V1 API: 您可以在此处提供图像 URL 作为通知负载的一部分,firebase 将为您处理下载和显示图像。 Here's 文档 link 相同。
  2. 使用旧版 API FCM: 发送纯数据负载(根本不发送通知对象)。将图像 URL 作为数据负载的一部分包含在内。这将使您可以控制 onMessageReceived 方法(在前台和后台情况下)。您可以在此处生成并显示您喜欢的通知。在此处检索图像 URL 并下载图像并创建带有图像的通知,或者以您希望呈现的方式创建通知。