5分钟后通知消失

时间:2013-03-26 22:35:23

标签: android

是否可以在一段时间后自动消失通知?

4 个答案:

答案 0 :(得分:4)

您可以使用AlarmManager。我认为比Android服务更合适,更容易实现。

使用AlarmManager,您无需担心在完成任务之前运行一些东西。 Android会为您执行此操作,并在发生时发送brodcast 。您的应用程序必须具有接收器才能获得正确的意图。

看看这些例子:

答案 1 :(得分:1)

是的,你可以创建一个在后台运行的服务,该服务在五分钟后会超时并删除你的通知。你是否“应该”实际这样做是有争议的。应该在那里通知用户......并且用户应该能够自己解雇它。

From d.android.com:

  

服务是一个可以执行长时间运行的应用程序组件   在后台运行并且不提供用户界面。

答案 2 :(得分:0)

您还可以将经典的Java Runnable用于简单的小线程。

Handler h = new Handler();
    long delayInMilliseconds = 5000;
    h.postDelayed(new Runnable() {
        public void run() {
            mNotificationManager.cancel(id);
        }
    }, delayInMilliseconds);

另见:

Clearing notification after a few seconds

答案 3 :(得分:0)

现在有一个名为.setTimeoutAfter(long durationMs)

的选项

https://developer.android.com/reference/android/app/Notification.Builder.html#setTimeoutAfter(long)