Android:如何区分清除通知栏中的所有事件和用户操作

标签 android notifications android-notification-bar

根据specification , .setDeleteIntent(pendingIntent) 与两个操作相关联(清除通知栏中的所有事件和滑动等用户操作)。

我的要求是,当用户触摸出现在通知栏上的通知时,他必须被转发到NotificationsList.class。这是通过我的 pendingInent 完成的:

PendingIntent sendPendingIntent = PendingIntent.getActivity(context, reminderId, new Intent(context, NotificationsList.class), PendingIntent.FLAG_UPDATE_CURRENT);

但是,在单击 CLEAR 按钮时,用户绝不能被导航到该应用程序。使用 .setDeleteIntent(pendingIndent) 我无法满足第二个要求。用户仍然导航到 NotificationsList.class。

有没有办法以编程方式区分从 CLEAR 按钮触发的所有 CLEAR 通知事件与用户操作(例如在通知栏上的特定通知上触摸或滑动)?

最佳答案

您所描述的是非常迟钝的行为。您只需将待定 Intent 设置为您的通知,当它被点击时,支持它的 Intent 将被执行。

如果您的代码在清除通知后将用户引导回应用,那么您的设计已经存在问题。如果用户清除了您的通知,您不应该尝试将它们导航回来。因此,setDeleteIntent() 不应与开始任何 Activity 相关联。

请注意,当您单击通知 (setContentIntent()) 和清除 (setDeleteIntent()) 通知时支持的 Intent 基本上是两个 PendingIntents,它们应该不一样,这就是你的问题所描述的。

关于Android:如何区分清除通知栏中的所有事件和用户操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39206275/

相关文章:

android - 我应该如何在 android studio 中设置 gradle 4.5 的类路径

android - 添加/删除 RelativeLayout(动画)的 View 时出现 NullPointerException

notifications - 解析 API : batch push notifications

android - 如何使用状态栏文本(无图标)创建通知

Android 如何在简单的通知中添加按钮?

android - 在 Android 中从 Mp3 检索元数据的最佳方式

java - 如何从我的 fragment 之一添加数据,并将其传递到我的适配器,并将其设置到我的数组列表?

iphone - iOS4:应用程序终止事件?

ios - Swift - UNUsernotification 检查 BadgeNumberIcon 中的更改

android - 如何在 Android 中为状态栏和通知栏显示不同的图标?