Cuadrado gris como icono de notificación mediante notificaciones de Firebase
Estoy intentando integrar Firebase Cloud Messaging en mi aplicación para Android. Pero cuando la aplicación está en segundo plano o está cerrada, la notificación de Firebase se muestra con un icono cuadrado gris en lugar del icono del lanzador de mi aplicación.
¿Cómo puedo hacer que el icono de notificación sea el logotipo de mi aplicación, sin implementar la API del servidor Firebase y enviar mensajes de datos?
- Mensaje de datos FCM no recibido en Android cuando la aplicación está en segundo plano
- ¿Cómo obtener la notificación de Heads Up en android mediante la mensajería de Cloud Firebase (notificación) mientras la aplicación no está en primer plano?
- Firebase Expandable Notification Mostrar imagen cuando la aplicación está en segundo plano
- No hay un método estático zzUr () en Firebase cuando intento utilizar Analytics con notificaciones
- Error de integración firebase: los servicios de Google Play están desactualizados
- StatusBarNotification cómo obtener datos o reenviar la intención?
- ¿Las notificaciones no siempre se reciben por teléfono?
- Función de nube ejecutada correctamente pero notificación que no muestra android
- FCM: onMessageReceived no se llama, la notificación no llegó incluso después de enviar msg a fcm?
- Androide. GcmNetworkManager en Firebase SDK?
- Aclaración sobre Firebase Cloud Messaging "conexiones simultáneas"?
- Firebase 401 error no autorizado FCM
- Implementación de FCM con XMPP usando Smack para Android
Desde Firebase 9.8.0 es posible cambiar este icono, añadiendo información sobre esto en Manifest:
<meta-data android:name="com.google.firebase.messaging.default_notification_icon" android:resource="@drawable/ic_stat_ic_notification" /> <meta-data android:name="com.google.firebase.messaging.default_notification_color" android:resource="@color/colorAccent" />
Ejemplo que encontrará aquí:
Es un error en firebase. Si su aplicación está en primer plano y la notificación se envía desde la Consola de Firebase, obtendrá el icono gris.
La solución es: Enviar notificaciones a través de API y no desde Console.
No está relacionado con Firebase. Comenzando con los iconos de estado de Android 3.0 se revisaron y "se componen simplemente de píxeles blancos sobre un fondo transparente, con mezcla alfa utilizada para bordes suaves y textura interna donde sea apropiado" https://developer.android.com/guide/practices/ui_guidelines /icon_design_status_bar.html . Por lo que he visto, a partir de Android 5.0 que se ven obligados a proporcionar todos estos pequeños iconos de estado blanco de lo contrario el icono cuadrado gris aparece.
Esta pregunta Icono que no se muestra en la notificación: el cuadrado blanco se muestra en su lugar tiene respuestas que explican más y también muestran cómo forzar a su aplicación para que utilice el ic_launcher icono original, aunque eso no parece una buena idea para mí, ya que están forzándolo a la meta Un sdk más viejo y también no siguiendo las pautas del diseño material.
Lo que realmente debe hacer es proporcionar los pequeños iconos blancos que puede generar aquí http://romannurik.github.io/AndroidAssetStudio/icons-notification.html agregarlos a su proyecto y luego configurar FCM para utilizarlos como se explica en el documento aceptado responder
<meta-data android:name="com.google.firebase.messaging.default_notification_icon" android:resource="@drawable/ic_stat_ic_notification" /> <meta-data android:name="com.google.firebase.messaging.default_notification_color" android:resource="@color/colorAccent" />
- Los colores predeterminados de Toast de Android y alfa
- Android takePersistableUriPermission no compila