Mil*_*nia 6 android android-notifications
我想从状态栏中删除所有可取消的通知.我知道如何删除我之前看过这篇文章的应用程序通知,但我想删除其他应用程序通知.
在所有Android版本的通知中都有一个"清除"按钮,用这个标志清除所有通知: Notification.FLAG_AUTO_CANCEL
这意味着可以取消所有通知.但我还没有找到任何关于如何做到这一点的文件.有没有人指导我怎么做?
谢谢
Ale*_*ova 15
从API等级18开始,您可以取消其他应用程序发布的通知,这些应用程序与您自己使用的不同NotificationListenerService,该方法在Lollipop中有所改变,这里是删除Lillipop API通知的方法.
首先在onNotificationPosted方法内部存储所有StatusBarNotification对象.然后,您应该维护对这些对象的更新引用,如果在onNotificationRemoved方法中以某种方式解除通知,则删除它们.
@TargetApi(Build.VERSION_CODES.JELLY_BEAN_MR2)
public class NotificationService extends NotificationListenerService {
@Override
public void onNotificationPosted(StatusBarNotification sbn) {
// Store each StatusBarNotification object
}
@Override
public void onNotificationRemoved(StatusBarNotification sbn) {
// Delete removed StatusBarNotification objects
}
}
Run Code Online (Sandbox Code Playgroud)
最后,您可以使用cancelNotification方法删除任何通知.
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.LOLLIPOP) {
cancelNotification(sbn.getPackageName(), sbn.getTag(), sbn.getId());
}
else {
cancelNotification(sbn.getKey());
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
9982 次 |
| 最近记录: |