Notificaciones, es muy común tratar de implementar esta funcionalidad y tener diferente tipo de errores, a partir de Android 8 esto ha cambiado, desde ahora todas las notificaciones usan canales y configuraciones bien definidas.
ENTORNO
• Android Studio 3.5
• minSdkVersion 26
• targetSdkVersion 29
INGREDIENTES
• Nombre del canal de notificación. (Identifica el tipo de notificación y es obligatorio)
• ID de la aplicación. (Lo encuentras en buildGradle nivel App.)
PREPARACIÓN
Creamos un objeto de nombre cualquiera el cual debe heredar de ContextWrapper y definimos 3 métodos de acción:
• createChannels -> Crea todos los canales que asociemos a la aplicación, así como sus ajustes por defecto (vibración, sonido...)
• push -> Para enviar las notificaciones.
• getManager -> Para retornar un manejador de notificaciones (Lo ofrece el sistema por defecto).
De igual forma sobrescribimos el constructor ya que este requiere de un contexto que será dado por la actividad en cuestión y que recuperaremos en una variable local.
Escribimos la lógica para las notificaciones en cada método (Leer comentarios).
Hecho esto solo queda invocar el método push según nos convenga para desencadenar la notificación, en este caso le asociaremos una acción (Intent) a la notificación, pero en general puede adaptarse como se desee.
Repositorio del Ejemplo
Fuente del background
CONOCE NUESTRO TRABAJO A NIVEL PROFESIONAL
Fraternalmente I.I. Daniel Rosillo;
- Project Manager at Rosillo Labs