Reputation: 660
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?
Upvotes: 8
Views: 9850
Reputation: 12717
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).
Upvotes: 4
Reputation: 36806
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);
Upvotes: 12