【问题标题】:Android notification dismissed callback?Android通知被解雇回调?
【发布时间】:2012-09-18 15:20:09
【问题描述】:

我的应用搜索新文章并发送“5 篇新文章”之类的通知。但是,当我发送另一篇文章时,我想让它更新文本以假设有 3 篇新文章,例如“8 篇新文章”但“3 篇新文章”,如果用户忽略了之前的通知。我希望你能明白。

有没有办法知道通知已被取消,以便我可以重置计数?

谢谢!

【问题讨论】:

  • 您的问题的解决方案在stackoverflow.com/questions/14671453/… 找到(可能对您来说太迟了,留在这里是为了让那些在未来寻求解决方案的人受益 - 嗨,来自未来的人!)

标签: android callback notifications dismiss


【解决方案1】:

这是一个相当晚的答案,但我正在寻找自己如何做到这一点,所以也许它对其他人有用。在 API 级别 18 中,引入了以下服务,这应该使这一点变得简单,因为您现在可以在添加或删除通知时获得回调:

https://developer.android.com/reference/android/service/notification/NotificationListenerService.html

特别是对于原始问题,请参阅 onNotificationRemoved 方法

上面jpop提到的另一个选项是在创建通知时使用builder的setDeleteIntent方法,当通知被删除时会给出回调。然后,这将要求您在其他地方维护现有引发通知的状态,因为它只会告诉您何时添加而不是删除。

【讨论】:

    【解决方案2】:

    如果您的应用程序有一个数据库,您可以这样做:创建一个表,其中包含一些字段,例如 id 作为 int,art​​icle name 作为字符串,isdismissed 作为布尔值。因此,每次要发送通知时,都应该统计 isdismissed 字段等于 false 的记录。 另一方面,每次用户选择通知时,相关的 isdismissed 字段必须为 true。

    此外,developer.android.com 上的这个示例可能会对您有所帮助:

    http://developer.android.com/guide/topics/ui/notifiers/notifications.html

    【讨论】:

    • 是的,但我怎么知道用户选择了通知?现在,当我在用户单击它并触发意图时考虑它时,也许我可以在那里做到这一点,我之前更多的是关于 ICS 滑动到关闭通知回调
    • @VlastoBennyLava stackoverflow.com/questions/3957419/… 我对 ICS 滑动关闭一无所知。
    【解决方案3】:

    自 android Nougat 以来监听器不工作,添加了新的访问规则

    在安卓设备上:参数 -> 应用程序 -> 齿轮菜单 -> 特殊访问 -> 通知访问

    使用:catch on swipe to dismiss event

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-05-22
      • 2018-03-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-02-07
      • 1970-01-01
      相关资源
      最近更新 更多