如何清除所有通知而不点击android

时间:2016-02-02 10:18:07

标签: android notifications

请勿将此标记为重复。

我正在处理通知,工作正常。但我想要的是,当出现通知时,我们是否可以在不点击通知的情况下清除所有通知,意味着假设我收到5通知,而当我只是打开我的应用程序时,则必须删除该通知而不点击该通知。

我们可以这样做吗?

我已经搜索过并且所有人都说要使用setAutoCancel(true)。我已经用过了。

2 个答案:

答案 0 :(得分:8)

使用以下代码 -

NotificationManager notificationManager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
notificationManager.cancelAll();

答案 1 :(得分:8)

如果你想根据id这样做清除Notifications

来自NotificationManager的通知通知会将标记设置为您的nofification,并将notification's的ID保存在Arraylist

static ArrayList<String>notifIds=new ArrayList<>();

//your code


notificationManager.notify("myappnotif",NOTIFICATION_COUNT, builder.build());
        notifIds.add(data);

现在要删除Notifications电话notificationManager.cancel(String tag, int id),只要你想要这个

  NotificationManager notificationManager = (NotificationManager)  getSystemService(NOTIFICATION_SERVICE);
    for(int i=0;i<MainActivity.notifIds.size();i++){
     notificationManager.cancel("myappnotif", i);
     }

并在Notification's notificationManager.cancelAll();的{​​{1}}中的应用程序启动调用onCreate时删除所有Launcher Activity

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

     NotificationManager notificationManager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
     notificationManager.cancelAll();
  }