una tipos studio segundo plano notificación notificaciones mensajes maneja app android user-interface notifications icons

tipos - notificaciones push android firebase



Android: no hay ícono para notificaciones (4)

Esto ahora es posible en Android 4.1; la implementación de referencia de la barra de estado de Jelly Bean suprimirá los iconos para las notificaciones de PRIORITY_MIN , aunque su contenido seguirá apareciendo en el panel de notificaciones.

Quería crear una notificación sin el ícono en la barra de estado (el estado que no está expandido). Probé la vista ampliada personalizada y configuré el ícono solo para esta vista. Pero no funcionó. Cuando doy 0 como ícono al constructor, el ícono desaparece pero la notificación tampoco aparece en la vista expandida.

Notificación de notificación = nueva notificación (0, "", 0);

Probé muchas combinaciones pero no obtuve una solución. Por cierto, sé que está funcionando porque vi esta característica en algunas aplicaciones. Gracias.


Podría usar imágenes transparentes como icono de notificación. pero como mencionamos anteriormente, el usuario no notificará que hay una nueva notificación


Aquí hay algo con lo que experimentar. Ponga una notificación dos veces, una con el icono = 0 y otra con un ícono real. Pruébalo en un orden y luego en el orden opuesto.

Obtuve el efecto de no notificación en la barra de estado y notificación en la lista expandida cuando hice algo como esto, excepto que uno de los dos (el que tiene el ícono = 0) fue creado por Service.startForeground (). No tengo tiempo para experimentar más en este momento.


QuickSettings hizo esto y cuando miré ese código vi que usa el constructor predeterminado de Notificación y empuja su ícono a la derecha de la barra de notificaciones. Creo que todavía usa espacio pero no tiene ícono.

Cierto código:

notification = new Notification(); notification.flags |= Notification.FLAG_ONGOING_EVENT; notification.flags |= Notification.FLAG_NO_CLEAR; long hiddenTime = Constants.SDK_VERSION >= 9 ? -Long.MAX_VALUE : Long.MAX_VALUE; notification.when = visible ? System.currentTimeMillis() : hiddenTime; // align // left (0) / right (max) in status bar

edit: oh perdón perdí una línea importante de código, de hecho él usa un marcador de posición. Pero ahora tienes un código ;-)

notification.icon = visible ? (status == Constants.STATUS_BLACK_ICON ? R.drawable.ic_logo_black : R.drawable.ic_logo_white) : R.drawable.ic_placeholder;

http://code.google.com/p/quick-settings/source/browse/trunk/quick-settings/src/com/bwx/bequick/receivers/StatusBarIntegrationReceiver.java