是否可以取消所有具有特定标记的通知?

时间:2016-03-12 17:56:41

标签: android mobile notifications notificationmanager

我正在制作Android应用,我想取消所有带有特定标签的通知。

现在似乎只能通过其ID(int id)或它们的ID和标签来取消通知。

mNotificationManager.cancel(int id);

mNotificationManager.cancel(String tag,int id);

我希望能够取消所有String标记的通知,而不管int id。

这可能吗?

3 个答案:

答案 0 :(得分:5)

不,不是。设置通知的方式,id是主键。您可以添加带标记的子项,并以此方式取消单个(标记,ID)对,但不能仅基于标记取消。我真的不确定为什么他们添加了一个标签参数,因为它似乎相当冗长,除了可能是一个字符串参数使调试更容易。

答案 1 :(得分:1)

在Android API> = 23上,您可以执行此类操作以删除一组通知。      for(StatusBarNotification statusBarNotification:mNotificationManager.getActiveNotifications()){         if(KEY_MESSAGE_GROUP.equals(statusBarNotification.getGroupKey())){             mNotificationManager.cancel(statusBarNotification.getId());         }     }

答案 2 :(得分:1)

如果您使用通知组,似乎可能。取消组摘要通知似乎取消了整个组。