firebase / firebase/firebase-admin-java
FCM - Notification Image not displaying
- Lenguaje dominante
- Java
- Estrellas
- 620
- Forks
- 305
- Merge medio
- 3 h 23 min
- PR fusionados (30 d)
- 1
Descripción
### Describe your environment
* Operating System version: macOS 13.0 (22A380)
* Firebase SDK version: 9.1.1
* Library version: 9.1.1
* Firebase Product: Cloud Messaging (auth, database, storage, etc)
#### Steps to reproduce:
Images are not displayed on devices (both iOS and Android) when sending notifications with FCM.
I set the image URL using the Notification Builder.
```
List fcmTokens = List.of(...);
Notification notification = Notification.builder().setTitle("Hello").setBody("world").setImage("https://e-cdns-images.dzcdn.net/images/cover/f2d3db07f3f045a048cdacf53b5cf9dd/250x250-000000-80-0-0.jpg").build();
MulticastMessage message = MulticastMessage.builder()
.setNotification(notification)
.addAllTokens(fcmTokens).build();
BatchResponse response = FirebaseMessaging.getInstance().sendMulticast(message);
```
Note that I receive the notification on the devices, only the image is not displayed. I am able to see the image in the notification when sending it using the Firebase Console.
When investigating the issue, I discovered that other SDKs use `imageUrl` instead of `image` attribute.
For example, for NodeJS: https://firebase.google.com/docs/reference/admin/node/firebase-admin.messaging.notification.md#notificationimageurl
The Java SDK still uses the `image` key instead of `imageUrl`: https://github.com/firebase/firebase-admin-java/blob/master/src/main/java/com/google/firebase/messaging/Notification.java#L33
Guía de contribución
Línea de trabajo
Comienza con el archivo referenciado src/main/java/com/google/firebase/messaging/Notification.java y compara su campo image con la referencia vinculada imageUrl de Node.js. Sigue cómo se representa Notification en la solicitud de FCM y, después, valida el ejemplo de multicast proporcionado en iOS y Android; el trabajo está terminado cuando se muestra la imagen de la notificación.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- firebase, java
- Área
- api, backend
- Tipo de issue
- Error
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Estado de actividad
- Estancado
- Claridad
- Bastante claro
- Aptitud para principiantes
- 48/100