3

背景:有两种类型的通知......普通的(旧的传统类型)和自 Lolipop 以来可以有“回复”动作的通知。

我制作了一个 NotificationListenerService,它可以使用命令 cancelNotification 关闭通知(来自任何其他应用程序,而不仅仅是我的),只有当通知是旧的“普通”类型时。但是,如果通知具有“回复”操作(android 佩戴挂起的意图),当我执行 cancelNotification(ID) 时,通知将被删除并“重新发布”在通知栏上重新出现。我可以无休止地尝试删除通知,它们总是会再次出现。

String removing = "example ID";

@Override
public void onNotificationPosted(StatusBarNotification sbn){
  if (sbn.getKey().equals(removing))
    {
        Log.e("INTENT","DISMISS MESSAGE");

        super.cancelNotification(sbn.getKey());
        super.cancelNotification(sbn.getPackageName(), sbn.getTag(), sbn.getId());

        removing = "";
        return;
    } 

两个命令(只有一个参数和 3 个参数)的行为方式相同。

是否有另一种方法可以忽略一条提示“wearableExtender”回复的消息?

满足所有先决条件:

添加 -> android:permission="android.permission.BIND_NOTIFICATION_LISTENER_SERVICE" 并且“通知访问”处于活动状态并已检查。

4

0 回答 0