In Android, wie kann ich die aktuelle Benachrichtigungs-ID kennen, um die Benachrichtigung zu löschen
Jetzt in Android habe ich diesen Code in eine Aktivität eingefügt, um eine Benachrichtigung anzuzeigen, wenn eine Taste gedrückt wird.
static int notificationCount = 0;
dan
btnNotification.setOnClickListener(
new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent notificationIntent = new Intent(AlertsActivity.this,NotificationActivitty.class);
PendingIntent pIntent = PendingIntent.getActivity(AlertsActivity.this,notificationCount,notificationIntent,Intent.FLAG_ACTIVITY_NEW_TASK);
// Construct the notification
Notification.Builder nBuilder = new Notification.Builder(AlertsActivity.this);
nBuilder.setContentTitle("You Have a notification!");
nBuilder.setContentText("See Your Notification");
nBuilder.setSmallIcon(android.R.drawable.btn_star);
nBuilder.setContentIntent(pIntent);
nBuilder.addAction(android.R.drawable.stat_notify_call_mute, "go to", pIntent); // from icecream sandwatch - required api 16
// Build the notification
Notification noti = nBuilder.build(); // required api 16
//Send it to manager
NotificationManager manager = (NotificationManager)getSystemService(NOTIFICATION_SERVICE);
manager.notify(notificationCount++,noti);
}
}
);
Vom Benachrichtigungsmanager werden alle Benachrichtigungen, auf die ich geklickt habe, an eine andere Aktivität weitergeleitet (NotificationActivity)
Nun habe ich diesen Code eingegeben, um die Benachrichtigung zu löschen, aber es wird nur die Benachrichtigung mit der ID 0 gelöscht. Wie kann ich die aktuell gedrückte Benachrichtigung löschen?
public class NotificationActivitty extends Activity{
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_notification);
NotificationManager manager = (NotificationManager)getSystemService(NOTIFICATION_SERVICE);
manager.cancel(0);
// manager.cancelAll(); // Cancel all notifications for this app. from manager
}
Ich muss die Benachrichtigung anhand ihrer ID löschen, wenn dies möglich ist.