如何检索通知来更新它?

时间:2014-12-24 16:17:24

标签: android notifications android-notifications

因此,每当有人创建帖子时,我都希望通知其他人。因此,我发出通知。

我知道使用setNumber(int num)设置号码的后勤工作,以及如何创建InboxStyle以显示多个帖子。

问题是如果有新通知,它不知道是否存在其他通知。我不能通过我分配给它的notification_id请求通知,然后在addLine(String string)附加一个字符串,也不能使用上面的setNumber方法更新帖子数。我是创建通知的新手,我一直在阅读有关使用它的InboxStyle,但是如果通知仍然存在,并且如何更新,则每个指南都会告诉我们如何保持同步。他们把它当成一件小事。

是的,我了解可以通过NotificationManager.notify(int, notification)方法更新通知,但除非您重新创建新通知的内容,否则它只会覆盖您当前的通知。

我是否有遗漏或不了解如何简单地更新通知?

1 个答案:

答案 0 :(得分:0)

如果该通知仍未启动,您不应该尝试"保持同步"。您的Notification应该反映数据模型的内容,并且应该在数据模型更改时进行更新。

例如,假设您正在编写电子邮件客户端。您希望Notification显示未读邮件。如果没有未读消息,则表示您没有Notification。当后台逻辑检索新邮件时,您更新数据存储以反映这些邮件,并调用一些heyLetTheUserKnowBoutDemEmails()方法。该方法查询数据存储,找出有多少看不见的邮件,并使用notify() NotificationManagerNotification上调用setNumber()以发布合适的addLine()等等,基于数据存储中的内容。对于之前的Notification次呼叫,是否已经发生heyLetTheUserKnowBoutDemEmails()是无关紧要的。当用户响应Notification或以其他方式打开收件箱时,您的UI将更新数据存储以标记所显示的消息(即,不再需要通知)并清除{{1 }}。泡沫,冲洗,重复。

所以,它并不是一件轻微的事情,而是:#/ p>

  • 这只是替换现有Notification

  • 的问题。
  • 您应该何时替换现有Notification的规则几乎完全取决于您的应用及其业务规则,这些规则超出了Android文档和许多博客文章的范围,Stack Overflow答案以及之类的。