Android:未点击的通知超时

时间:2016-08-30 13:33:22

标签: android notifications

我周末发布通知。如果在一段时间后没有看到/点击通知,我希望它自己消失。 我无法找到任何方法来设置NotificationCompat.Builder表达式中的超时或类似的东西。这是(非常正常的通知构建器)代码:

Intent myIntent = new Intent(context, MyActivity.class);
PendingIntent pendingIntent = PendingIntent.getActivity(context, 0, myIntent, PendingIntent.FLAG_UPDATE_CURRENT);

NotificationCompat.Builder mBuilder =
        new NotificationCompat.Builder(context)
                .setSmallIcon(R.drawable.not_bar_small_icon)
                .setColor(ContextCompat.getColor(context, R.color.Green))
                .setContentTitle(context.getResources().getString(R.string.strNotificationTitle))
                .setContentText(context.getResources().getString(R.string.strNotificationMessage))
                .setContentIntent(pendingIntent);

NotificationManager notifyManager = (NotificationManager) context.getSystemService(NOTIFICATION_SERVICE);
notifyManager.notify(MY_NOTIFICATION_ID, mBuilder.build());

可以这样做吗?

解决方案更新:

使用下面评论中建议的Aleksandar链接解决。

1 个答案:

答案 0 :(得分:0)

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

您可以指定一个持续时间(以毫秒为单位),如果该通知尚未取消,则应在该时间之后取消。