保留设备收到的通知

时间:2015-04-27 06:45:23

标签: android android-notifications

我希望能够在向用户显示通知之前收到通知,保存并在选定的时间显示。

我尝试了NotificationListenerService但我只能在显示后收到通知。

有什么办法吗?

还有办法阻止来自特定应用的通知吗?

3 个答案:

答案 0 :(得分:1)

我希望能够在向用户显示通知之前收到通知,保存并在选定的时间显示。

- >您可以获得onNotificationPosted(StatusBarNotification sbn)到达的通知 您也可以保存它们,您可以通过创建服务并再次构建此通知,在所需的时间显示它们。

我尝试了NotificationListenerService,但我只能在显示后收到通知。

- > NotificationListenerService将为您提供到达的通知信息。您无法阻止通知,但您可以通过从通知堆栈中获取其ID或组密钥来删除特定通知。

还有办法阻止来自特定应用的通知吗?

- >不,您无法阻止通知到达,但您可以删除所有通知,就像我上面提到的那样,这些通知不在您的应用列表中。

修改 所有这些都可以在API> = 19中完成。

希望这有助于:)

答案 1 :(得分:0)

如果您使用的是Google云消息传递(GCM),则可以保存到数据库或共享首选项,并注释掉向用户显示通知的行。然后,您可以使用后台服务随时将其显示给用户。

答案 2 :(得分:0)

更新@ kiturk3回答:

还有办法阻止来自特定应用的通知吗?

从棒棒糖,这可以做到。用户可以阻止来自特定应用程序包的通知

  

设置 - >声音和通知 - >申请通知 - >   点击任何应用程序 - >选择阻止

此外,用户可以使用priority为特定应用程序通知提供重要性,同时显示在Lockscreen