Notification setAutoCancel(true) doesn't work Notification setAutoCancel(true) doesn't work android android

Notification setAutoCancel(true) doesn't work


Using setContentIntent should solve your problem:

.setContentIntent(PendingIntent.getActivity(this, 0, new Intent(), 0));

In your example:

NotificationCompat.Builder mBuilder= new NotificationCompat.Builder(this)        .setSmallIcon(R.drawable.notification_icon)        .setContentTitle("title")        .setAutoCancel(true)        .setContentText("content")        .setContentIntent(PendingIntent.getActivity(this, 0, new Intent(), 0));NotificationManager notificationManager= (NotificationManager)getSystemService(Context.NOTIFICATION_SERVICE);notificationManager.notify(0, mBuilder.build());

Often you might want to direct the user to the relevant content and so might replace 'new Intent()' with something else.

I uploaded a demo to github.


I know an answer has already been accepted, but I had the same problem with a different solution so I will share it here.

For me, I was using the same NotificationCompat.Builder object to create a notification which called setOngoing(true). This was for an upload progress notification which should not be removed while working.

Anyways, after the task was complete, I called setAutoCancel(true) but the notification was still not swiping away. What I had to do also was call setOngoing(false).

It seems pretty obvious now, but it might save someone else some time in the future.