Clearing notification after a few seconds

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);

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).