Java Android:仅在触摸时删除通知,而不是通过触摸;“全部清除”;按钮

Java Android:仅在触摸时删除通知,而不是通过触摸;“全部清除”;按钮,java,android,notifications,Java,Android,Notifications,我的应用程序会创建一些通知,在PendingEvents的帮助下,它会将您带到一个特殊活动。这一切都很好,我唯一的问题是,我只希望在用户触摸通知时删除通知,而不是在用户使用“全部清除”按钮(通知栏顶部的X)时删除通知 目前我正在使用 setAutoCancel(true); 方法。当用户触摸该通知时,以及当按下“全部清除”按钮时,它将删除该通知。我现在的问题是,是否有任何方法可以阻止“全部清除”按钮删除通知 如果你想知道我为什么想要这个,我创建了一个应用程序,允许你使用通知作为提醒。“清除按钮

我的应用程序会创建一些通知,在PendingEvents的帮助下,它会将您带到一个特殊活动。这一切都很好,我唯一的问题是,我只希望在用户触摸通知时删除通知,而不是在用户使用“全部清除”按钮(通知栏顶部的X)时删除通知

目前我正在使用

setAutoCancel(true);
方法。当用户触摸该通知时,以及当按下“全部清除”按钮时,它将删除该通知。我现在的问题是,是否有任何方法可以阻止“全部清除”按钮删除通知

如果你想知道我为什么想要这个,我创建了一个应用程序,允许你使用通知作为提醒。“清除按钮”在这里很烦人,因为它会删除所有提醒通知


Thx对于帮助,如果您需要任何其他代码,只需编写即可。

您可以通过将通知设置为“正在进行”,然后在PendingEvent启动时取消通知来完成此操作

用户无法取消正在进行的通知,因此您的应用程序或服务必须负责取消这些通知

假设您正在使用
Notification.Builder
创建通知,只需在调用
build()
之前添加以下行即可

如果要删除通知,请使用发布通知时使用的相同ID调用
NotificationManager
服务上的
cancel()

.setOngoing(true)