Pular para conteúdo

FCM: imagem (logotipo) na notificação – avaliação e implementação

Status: Aprovado · Responsável: Gustavo Madruga · Atualizado em: 2026-07-06

Avaliação do documento

O doc que descreve o uso do campo image na notificação FCM está correto e alinhado com a API FCM HTTP v1:

  • notification.image: URL da imagem usada em vários clientes.
  • android.notification.imageUrl: no SDK Java do Firebase Admin é exposto como AndroidNotification.setImage(imageUrl) dentro de AndroidConfig.
  • apns.payload.aps.mutable-content + apns.fcm_options.image: necessário no iOS para a imagem expandida; no Java: Aps.builder().setMutableContent(true) e ApnsFcmOptions.builder().setImage(imageUrl).

O integrador foi implementado seguindo esse desenho: quando push.notification-image-url está configurado, a mensagem inclui:

  • notification.image
  • android.notification.image (via AndroidConfig + AndroidNotification)
  • apns.aps.mutable-content = 1 e apns.fcm_options.image

Formato da imagem: SVG vs PNG/JPEG

A documentação do FCM indica suporte a JPEG, PNG e BMP para a imagem da notificação. SVG não está na lista de formatos suportados e pode não ser exibido em Android/iOS.

  • URL usada por padrão no integrador:
    https://navarro-app.web.app/logo-sulplata.png (PNG, hospedado no Firebase Hosting).

Configuração no integrador

Em application.yml (ou por variável de ambiente):

push:
  enabled: true
  credentials-path: "C:/caminho/para/firebase-admin-sdk.json"   # fora do repo (decisão 0030)
  # URL pública da imagem (expandida) na notificação. Preferir PNG/JPEG.
  notification-image-url: "https://navarro-app.web.app/logo-sulplata.png"

Se notification-image-url estiver vazio ou omitido, a notificação é enviada sem imagem (só título e corpo).


Resumo

Item Status
Doc (payload FCM com image) Correto
Implementação no integrador Feita: notification.image + Android + APNS
URL padrão https://navarro-app.web.app/logo-sulplata.png (PNG)
Config push.notification-image-url (opcional)