Уменьшите ненужные вызовы NotificationListenerService - PullRequest
0 голосов
/ 19 ноября 2018

Я использую NotificationListenerService для чтения входящих сообщений WhatsApp и Viber.

Начиная с документов, NotificationListenerService :

Служба, которая получает вызовы от системы, когда новые уведомления публикуются или удаляются, или их рейтинг изменяется.

Таким образом, моя служба вызывается, когда на экране пользователя появляется любое уведомление.Меня интересует, могу ли я как-то уменьшить ситуации, когда мой сервис вызывается?Потому что, в моем случае, меня интересуют только уведомления WhatsApp и Viber.

В настоящее время я фильтрую уведомления, просто вставив if условие в метод OnNotificationPosted(), напримерthis:

 @Override
    public void onNotificationPosted(StatusBarNotification sbn) {

            String packageName = sbn.getPackageName();

            if (packageName.equalsIgnoreCase("com.viber.voip")
                    || packageName.equalsIgnoreCase("com.whatsapp")) {

                           // my code
              }
     }

Итак, мой вопрос:

Можно ли как-то отфильтровать уведомления для NotificationListenerSevice, чтобы NotificationListenerService не вызывалось пакетами уведомлений, которыевне моего интереса?

Если бы это было возможно, я мог бы уменьшить ненужные вызовы моей услуги.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...