Join FlipAndroid.COM Telegram Group: https://t.me/joinchat/F_aqThGkhwcLzmI49vKAiw


¿Cómo contar el número de notificaciones y mostrar un solo icono en Android?

Tengo varias notificaciones de Android, pero cuando envío un mensaje desde mi servidor web, el dispositivo Android crea un nuevo icono de notificación en la barra de estado. Quiero contar el número de notificaciones no leídas, mostrarlo en la statusbar de statusbar con un solo icono y cuando se lee una notificación, la notificación tiene que cambiar el número de notificaciones no leídas. ¿Cómo puedo hacerlo? Parece "3 Otros" en esta imagen: Icono de Notificación

  • ¿Cómo obtener el color de fondo de notificación predeterminado para la notificación personalizada en Lollipop?
  • Administrador de alarmas y notificación en android
  • Icono de notificación en blanco para Android con Phonegap Build y PushPlugin
  • Android Facebook SDK - Cómo consultar las notificaciones de Facebook
  • ¿Hay alguna manera de ser notificado cuando las redes wifi SSIS conocidas entran o salen del rango?
  • Cómo comprobar si mi aplicación tiene permiso para mostrar la notificación
  • Intención de reanudar una actividad previamente detenida (llamada desde una notificación)
  • Cómo quitar la notificación de la barra de notificación mediante programación en android?
  • 3 Solutions collect form web for “¿Cómo contar el número de notificaciones y mostrar un solo icono en Android?”

    Echa un vistazo a la respuesta aquí: Cómo dar contador si más de una Notificaciones están allí

    Sólo tiene que establecer Notification.number :

     Notification notification = new Notification(R.drawable.direction, "Cool Notification", System.currentTimeMillis()); /********LIKE THIS*********/ notification.number = notificationCount++; /********LIKE THIS*********/ notification.setLatestEventInfo(context, "Cool Notification Title", "updated notificaiton message", null); NotificationManager nm = (NotificationManager) context.getSystemService(context.NOTIFICATION_SERVICE); nm.notify(R.id.my_motification, notification); 

    Usted tiene que enviar su notificación a través del método NotificationManager.notify , con el mismo id todo el tiempo. Como indica la documentación, el identificador es un identificador único para esa notificación dentro de la aplicación. Si reutiliza la misma identificación, solo actualizará el texto y el número de esa notificación.

    Para comprobar cuando el usuario hace clic en la notificación, debe proporcionar un PendingIntent (consulte el tutorial ). Para comprobar cuando el usuario borra las notificaciones, debe utilizar el Notification.Builder que sólo está disponible en Api Level 11.

    Bueno, estos códigos funcionan para mí:

     Notification n = new Notification(R.drawable.yourownpicturehere, getString(R.string.noticeMe), System.currentTimeMillis()); PendingIntent i=PendingIntent.getActivity(this, 0, new Intent(this, NotifyActivity.class),0); n.setLatestEventInfo(getApplicationContext(), getString(R.string.title), getString(R.string.message), i); n.number=++count; n.flags |= Notification.FLAG_AUTO_CANCEL; n.flags |= Notification.DEFAULT_SOUND; n.flags |= Notification.DEFAULT_VIBRATE; n.ledARGB = 0xff0000ff; n.flags |= Notification.FLAG_SHOW_LIGHTS; // Now invoke the Notification Service String notifService = Context.NOTIFICATION_SERVICE; NotificationManager mgr = (NotificationManager) getSystemService(notifService); mgr.notify(NOTIFICATION_ID, n); 

    Siga este enlace para completar el tutorial.
    Creo que el número de n.number=++count; Es el responsable de contar la notificación

    Necesitará un mapa de bits diferente para cada número y establezca el icono para mostrar el mapa de bits que corresponde al número de notificaciones restantes.

    Para realizar un seguimiento de las notificaciones, simplemente puede establecer un contador en SharedPreferences, agregarlo a cada nueva notificación y reducirlo cuando se lea una notificación (o cero si muestra todas las notificaciones a la vez).

    FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.