NotificationListenerService cancelNotification не будет работать для уведомлений с ответными действиями - PullRequest
0 голосов
/ 22 мая 2018

Предыстория: есть 2 типа уведомлений .... Обычные (старый традиционный тип) и те, что со времен 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: Разрешение = "android.permission.BIND_NOTIFICATION_LISTENER_SERVICE" Также «Доступ к уведомлению» активен и проверен.

...