【问题标题】:Detect if notification has been deleted检测通知是否已被删除
【发布时间】:2013-03-19 16:48:49
【问题描述】:

我有以下问题。我想检测何时从通知栏中删除了通知。

我可以使用 AccessbilityService 扫描通知并将其 ParcelableData 转换为通知

Notification notif = (Notification) event.getParcelableData();

我的一个想法是,利用通知的 PendingIntent 是否已被点击,但我找不到任何关于如何检测的信息。

有什么想法吗?我有点绝望......现在尝试了几个小时。

【问题讨论】:

标签: android android-notifications accessibilityservice


【解决方案1】:

您可以在 Notification.Builder 上使用 setDeleteIntent:

http://developer.android.com/reference/android/app/Notification.Builder.html#setDeleteIntent(android.app.PendingIntent)

它可以用来做你想做的事(我想这对你来说太晚了,但它可以帮助别人)

【讨论】:

  • 这不是 OP 想要的,他想检测从其他应用程序中删除通知的情况。不知道为什么这个投票最多。
【解决方案2】:

一个非常相似的问题已经在这里回答了:

Detect a new Android notification

简而言之,可以检测何时出现新通知,但仅此而已。您无法检测到通知何时被关闭。

【讨论】:

  • hmpf。也许我应该采取这里所经历的方法:gmariotti.blogspot.co.uk/2013/02/…
  • 这基本上是我链接中的第一个答案。毫无疑问,该链接提供了分析器。
【解决方案3】:

据我所知,除非你有 root,否则这是不可能的,但从昨天发布的 android 4.3 开始,这是可能的。这里有一些链接:

android developers blog:

通知访问 - 您的应用现在可以访问并与 发布状态栏通知流。你可以显示 以任何你想要的方式,包括将它们路由到附近的蓝牙 设备,您可以根据需要更新和关闭通知。

android developer website:

Android 4.3 增加了一个新的服务类 NotificationListenerService, 允许您的应用接收有关新通知的信息 它们是由系统发布的。

如果您的应用当前使用无障碍服务 API 来访问 系统通知,您应该更新您的应用程序以使用这些 API 而是。

android developer website - API description

访问通知

通知长期以来一直是一种流行的 Android 功能,因为它们 让用户看到来自整个系统的信息和更新,全部在 一个地方。现在在 Android 4.3 中,应用程序可以观察到流 获得用户许可的通知并显示通知 以他们想要的任何方式,包括将它们发送到附近的设备 通过蓝牙连接。

您可以通过新的 API 访问通知,这些 API 可以让您注册 通知侦听器服务并在用户许可的情况下,接收 通知,因为它们显示在状态栏中。通知 完整交付给您,以及原始应用程序的所有详细信息, 发布时间、内容视图和样式以及优先级。你可以 评估通知中感兴趣的领域,处理或添加 来自您的应用程序的上下文,并将它们路由以以您的任何方式显示 选择。

新 API 在添加、更新通知时为您提供回调, 并被删除(要么是因为用户解雇了它,要么是原 应用程序撤回了它)。您将能够启动附加到 通知或其操作,以及将其从系统中删除, 允许您的应用程序提供完整的用户界面 通知。

当然还有这个新监听器的 API 文档,在 this link

【讨论】:

    【解决方案4】:

    如果你扩展 NotificationListener 并在回调中做你自己的事情,这是可能的: https://developer.android.com/reference/android/service/notification/NotificationListenerService.html

    【讨论】:

      猜你喜欢
      • 2012-09-21
      • 2017-01-27
      • 2011-12-10
      • 1970-01-01
      • 1970-01-01
      • 2023-04-04
      • 1970-01-01
      • 2022-08-18
      • 2011-09-26
      相关资源
      最近更新 更多