Android 关于极光推送退出APP时清空通知的问题

来源:互联网 发布:数据挖掘需要什么基础 编辑:程序博客网 时间:2024/04/29 04:06

当我们的APP集成完成极光推送之后,我们要求在APP双击退出的同时清除所有的发送过来的通知,极光API

中提供了几种方法:

1、clearAllNotifications

这种方法的作用是清除所有JPush推送的通知,用法也非常的简单:

JPushInterface.clearAllNotifications(this);

但是本人没有用这种方法(没有成功,不清楚咋回事)

我用的下面这种方法。

2、clearNotificationById

这种方法如果用于清除某个特定的通知会很方便,只需要获取到要清除的通知的ID就可以了

JPushInterface.clearNotificationById(this,notifactionId);

但是如果用于通知的全部清除就比较麻烦了,下面是我使用的方法:

(1)先在APP的Application中定义一个List集合,用以存储推送过来的通知的ID:

public static List<Integer> list = new ArrayList<>();

(2)在接收推送的Receiver中将通知的ID存储到Application中的List集合里:

MyApplication.list.add(notifactionId);

(3)在双击退出的地方进行如下代码操作:

for (int i = 0; i < MyApplication.list.size(); i++) {    JPushInterface.clearNotificationById(this,MyApplication.list.get(i));}

这样同样可以实现通知的全部清除。

注:本人菜鸟一枚,第一种方法没有实现不知道什么原因,欢迎各位大神留言指导。

原创粉丝点击