Как подсчитать количество уведомлений и отобразить один значок в Android?
-
28-10-2019 - |
Вопрос
У меня есть несколько уведомлений Android, но когда я отправляю сообщение со своего веб-сервера, устройство Android создает новый значок уведомления в строке состояния.Я хочу подсчитать количество непрочитанных уведомлений, отобразить его на statusbar
с помощью одного значка, и когда уведомление прочитано, уведомление должно изменить количество непрочитанных уведомлений.Как я могу это сделать?На этом изображении он похож на "3 других": Значок уведомления
Решение
Ознакомьтесь с ответом здесь: Как чтобы дать счетчик, если есть более одного уведомления
Вам просто нужно установить Notification.number
:
родовое слово
Уведомление необходимо отправлять с помощью метода NotificationManager.notify
с постоянным идентификатором. Как говорится в документации, идентификатор - это уникальный идентификатор для этого уведомления в вашем приложении. Если вы повторно используете тот же идентификатор, он просто обновит текст и номер для этого уведомления.
Чтобы проверить, когда пользователь нажимает на уведомление, необходимо указать PendingIntent (см. руководство ). Чтобы проверить, когда пользователь очищает уведомления, необходимо использовать уведомление . Builder , доступный только на уровне Api 11.
Другие советы
Эти коды работают для меня:
родовое слово Перейдите по этой ссылке для получения полного руководства..
Я думаю, что за подсчет уведомлений отвечает n.number=++count;
Вам потребуется другое растровое изображение для каждого числа и установите значок для отображения растрового изображения, соответствующего количеству оставшихся уведомлений.
Чтобы отслеживать уведомления, вы можете просто установить счетчик в SharedPreferences, добавлять к нему при каждом новом уведомлении и уменьшать на единицу при чтении уведомления (или до нуля, если вы показываете все уведомления сразу).