Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Clearing notification after a few seconds

When you have the Messages Activity open and the phone receives a new message a notification is shown on the status bar. After a short amount of time the notification is removed.

Is it possible to do the same for my activity without using a timer to clear the notification after a few seconds?

like image 345
benshort Avatar asked Feb 14 '11 15:02

benshort


2 Answers

I don't believe there's a way to use the NotificationManager only to cancel a notification, but you can do it with a simpler Handler. Put some code like this right after you fire your notification.

Handler h = new Handler();
long delayInMilliseconds = 5000;
h.postDelayed(new Runnable() {
    public void run() {
        mNotificationManager.cancel(YourNotificationId);
    }
}, delayInMilliseconds);
like image 96
Rich Avatar answered Oct 07 '22 02:10

Rich


Well there is NO need of a Handler/Service while the Notification.Builder has the method .setTimeoutAfter(long milliseconds):

Hence just call:

builder.setTimeoutAfter(time_in_milliseconds);

For more Information see setTimeoutAfter(long).

like image 3
Xenolion Avatar answered Oct 07 '22 00:10

Xenolion