¿Cómo puedo eliminar una notificación de primer plano en Android Lollipop?
Estoy buscando para detener / descartar una notificación de primer plano para un servicio para un reproductor de medios, muy similar a la implementación de Google para Google Music.
Por ejemplo, en Google Music, si está reproduciendo música, entonces la notificación no se puede borrar. Sin embargo, si usted pausa la música que puede.
- ¿Cómo eliminar las actualizaciones de ubicación en la clase de servicio en android?
- AlarmManager dentro de BroadcastReceiver cuando BOOT_COMPLETED
- La vinculación al servicio que ya fue iniciada por BroadcastReceiver crea una nueva instancia de servicio
- Cámara Android: se ejecuta en segundo plano desde el servicio
- Cómo obtener respuesta del código USSD de Android?
Esto es completamente diferente a cómo se implementa en Android 4.4, donde la notificación se inicia sólo cuando abandona la aplicación y se elimina cuando vuelve a la aplicación. No puedo ver cómo implementar esto ya sea teniendo en cuenta los requisitos de un servicio para tener una notificación.
Cualquier ayuda sería muy apreciada.
- ¿Cómo puede un servicio escuchar los gestos / eventos táctiles?
- Cómo grabar vídeo desde el fondo de la aplicación: Android
- Evitar copias múltiples de un servicio de Android
- Cómo comunicarse entre un receptor de difusión de Android y un RemoteService
- Se muere la conexión de servicio XMPP
- Android geofencing cuando se mata la aplicación
- ¿Por qué no comienza este servicio simple?
- Inicie Android Service cada 5 minutos
¿Cómo puedo eliminar una notificación de primer plano en Android Lollipop?
Puede eliminar su propia Notification
primer plano llamando a stopForeground()
de su Service
que se llama startForeground()
.
Por ejemplo, en Google Music, si está reproduciendo música, entonces la notificación no se puede borrar. Sin embargo, si usted pausa la música que puede.
Presumiblemente, están actualizando el valor setOngoing()
para la Notification
función de si la música está o no en reproducción.
También puede eliminar la notificación de una manera difícil:
- Iniciar el primer servicio con
startForeground(1, new Notification());
- Iniciar el segundo servicio con
startForeground(1, new Notification());
Y deje de hacerlo inmediatamente
Como resultado, el primer servicio sigue funcionando en primer plano, pero la notificación se ha ido gracias a la detención del segundo servicio. Lo he encontrado por accidente :).
- Creación de OnClickListener personalizado
- Cómo configurar el adaptador para searchview en la barra de acciones