Android: Administración de varias notificaciones

Estoy intentando crear varias notificaciones en mi aplicación. Para identificar cada notificación de manera única, les he dado una identificación única. El siguiente es mi código:

private void updateNotification(int notificationId, int clockStatusID, CharSequence text) { //notificationManager.cancel(notificationId); // throws up an ongoing notification that the timer is running Log.i("TIMERCOUNT", "Notification id: " + notificationId); Notification not = new Notification(clockStatusID, // the // icon // for // the // status // bar text, // the text to display in the ticker System.currentTimeMillis() // the timestamp for the // notification to appear ); Intent intent = new Intent(); intent.putExtra("notificationID", notificationId); intent.setAction("actionstring" + System.currentTimeMillis()); intent.setClassName("com.chander.time.android.activities", "com.chander.time.android.activities.Tabs"); not.setLatestEventInfo(self, getText(R.string.timer_notification_title), getText(R.string.timer_on_notification_text), PendingIntent .getActivity(this, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT)); not.flags += Notification.FLAG_ONGOING_EVENT; not.flags += Notification.FLAG_NO_CLEAR; notificationManager.notify(notificationId, not); } 

Problema: Cuando se selecciona una notificación, la actividad Tabs se denomina pasar la intención. Quiero acceder a la notificationId única de la notificación que se seleccionó en Tabs. Intenté intent.putExtra () para guardar el notificationId en la intención. Pero, para las notificaciones múltiples su sobrescribir el notificationId y devuelve el último. No entiendo por qué esto está sucediendo y cómo puedo evitar esta sobrescritura de notificationId.

Gracias, Chander

Tengo la respuesta. Las intenciones estaban recibiendo en caché pulg Para, hacer una nueva intención, sólo tiene que añadir la siguiente pieza de código:

 saveCallIntent.setData((Uri.parse("custom://"+System.currentTimeMillis()))); 

Esto hace que la intención sea única.

Además, alguien me sugirió la siguiente pieza de código para hacer la intención única:

 saveCallIntent.setAction("actionstring" + System.currentTimeMillis()); 

No me ayudó, pero podría ser de ayuda a alguien más.

–Chander

Simplemente coloque el pendingIntent en lugar de 0 en pendingIntent .

 PendingIntent.getActivity(this, notificationId, intent,PendingIntent.FLAG_UPDATE_CURRENT)); 

El usuario también debe actualizar el código siguiente junto con el anterior para que funcione.

  mNotificationManager.notify(notificationId, mBuilder.build()); 
  • Al extraer adt-bundle-windows-x86_64-20140702 este error de Windows 8
  • Cómo buscar mediante programación la dirección IP externa de un dispositivo sin utilizar host externo?
  • Notificación de no hacer sonido o vibración?
  • ¿Cómo editas una biblioteca de dependencia / externa en android studio?
  • Escala una vista para el tamaño de otra vista usando ValueAnimator
  • Cuenta-autenticador perdido en mover la aplicación a sdcard
  • ¿Cómo diferencia exactamente JVM de Dalvik y / o ART?
  • Compruebe la conexión de red y de Internet - Android
  • WebView clearHistory () en la funcionalidad de Webview canGoback ()?
  • Android ClassNotFoundException: No encontró la clase en el path
  • Rendimiento de SQLite de Android en consultas complejas
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.