KIPRIassistant

Каналы уведомлений Android: приложение не сделает себя громче

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


В Android есть правило, о котором мало кто знает, хотя оно объясняет половину жалоб на уведомления: приложение назначает себе важность ровно один раз, при первом создании канала. Дальше решает только пользователь.

Что такое канал

С восьмой версии Android каждое уведомление обязано принадлежать каналу. Канал - это категория со своими настройками: звук, вибрация, важность, поведение на заблокированном экране, значок на иконке.

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

Открывается это в настройках телефона: приложения, нужное приложение, уведомления. Список внутри и есть каналы.

Важность назначается один раз

Приложение при создании канала указывает уровень важности. После этого оно не может его повысить. Понизить может, и то пока вы сами не трогали настройки канала. Это сделано намеренно: иначе любое приложение через месяц после установки объявляло бы себя срочным.

Отсюда следствие, которое ловит людей врасплох. Если вы когда-то убавили важность канала, а потом решили вернуть - через приложение это не сделать. Только руками в настройках Android.

Второе следствие хуже. Удалить канал и завести его заново приложение тоже не может: по документации, канал с тем же идентификатором вернётся со всеми прежними настройками. С чистого листа каналы начинаются после переустановки приложения или очистки его данных. Или поправьте канал руками.

Пять уровней и что они делают

Срочный. Всплывающее уведомление поверх экрана плюс звук. Для напоминаний, привязанных ко времени, нужен именно он: обычное уведомление вы увидите, когда возьмёте телефон, а это может быть через два часа.

Высокий. Звук есть, всплытия нет.

Средний. Без звука, но со значком в строке состояния.

Низкий. Без звука и без значка в строке состояния, уведомление видно только в шторке. Годится для фоновых статусов, не для дел.

Нет. Уведомления этого канала не показываются вовсе.

ЗвукПоверхэкранаЗначокв строкеВ шторкеСрочныйВысокийСреднийНизкийНет
Уровни важности канала по документации Android. Напоминаниям о времени нужен «Срочный»: остальные вы увидите, только когда сами возьмёте телефон.

Если напоминания приходят молча, начните проверку с этого экрана. Ситуация “уведомление в шторке есть, звука нет” почти всегда означает канал со средней важностью, а не поломку приложения. Остальные места, где уведомление может застрять, собраны в проверке настроек.

Что настраивается руками и стоит того

Звук отдельно для каждого канала. Напоминания полезно отличать на слух от почты: понятно, стоит ли доставать телефон из кармана.

Обход режима “Не беспокоить”. Это разрешение выдаётся именно каналу. Если вы ставите будильник-напоминание на утро и держите ночной режим, без этой галочки оно придёт беззвучно.

Показ на заблокированном экране. Три варианта: показывать полностью, скрывать содержимое, не показывать вовсе. Второй вариант удобен, если экраном иногда пользуются не только вы.

Значок на иконке приложения. Мелочь, но для дней рождения он неожиданно полезен: цифра на иконке напоминает даже без открытой шторки.

Ещё одно разрешение, про которое забывают

С Android 13 уведомления требуют отдельного разрешения, которое приложение просит при запуске. Отказ на этом диалоге блокирует все каналы приложения, включая напоминания. По документации, это то же самое, что выключить уведомления приложения в настройках.

Если приложение рассчитано на Android 12L или более раннюю версию, после одного “Не разрешать” система больше не спросит, пока приложение не переустановят. Вернуть уведомления в любом случае можно в настройках, в пункте “Уведомления” у приложения. Стоит проверить это первым делом, если приложение молчит с самой установки.

Зачем разделять каналы

Соблазн сделать один канал на всё велик, и он неправильный. Пользователю нужна возможность выключить сервисные сообщения, не выключая напоминания. Если канал один, у него ровно один выбор: терпеть всё или не получать ничего. Второе он и выберет.

В KIPRI каналы разведены по смыслу: напоминания и задачи со срочной важностью, дни рождения отдельно, утренний отчёт отдельно. Отключить утренний отчёт можно, не тронув то, ради чего напоминания вообще ставились. Это скучная работа при разработке и единственный способ не оказаться в списке отключённых приложений через месяц.

Статья помогла?

Все записи

Забирайте Кипри себе

На бесплатном тарифе работает всё приложение целиком. Ограничения начинаются там, где начинается серьёзный объём.

Новости и промокоды выходят в Telegram-канале