0Pricing
Android Academy · Урок

Создание уведомления

Создавайте и показывайте простое уведомление

«Создание уведомления» — бесплатный урок Android Academy на CoddyKit. Это урок 2 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Android Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Android Academy содержит 4 уроков всего.

Создание уведомления

После создания канала сформируйте само уведомление с помощью NotificationCompat.Builder, а затем опубликуйте его через NotificationManager.

Зачем нужен NotificationCompat

Всегда используйте NotificationCompat.Builder, а не стандартный построитель платформы. Он учитывает различия между версиями, поэтому один и тот же путь выполнения работает в разных версиях Android.

Создание построителя

Передайте построителю контекст и идентификатор канала. Идентификатор должен соответствовать уже созданному каналу.

val builder = NotificationCompat.Builder(context, Channels.MESSAGES)

Обязательный маленький значок

setSmallIcon обязателен. Без него уведомление не отобразится. Используйте простой монохромный значок, предназначенный для панели состояния.

val builder = NotificationCompat.Builder(context, Channels.MESSAGES)
    .setSmallIcon(R.drawable.ic_notification)

Заголовок и текст

Задайте заголовок с помощью setContentTitle, а текст — с помощью setContentText. Это основное содержимое, которое читает пользователь.

.setContentTitle("New message")
.setContentText("Ada sent you a photo")

Приоритет для старых версий

В API 25 и более старых версиях каналов нет, поэтому важность определяется через setPriority. Установите приоритет для обратной совместимости; в API 26 и более новых версиях используется важность канала.

.setPriority(NotificationCompat.PRIORITY_HIGH)

Автоматическое закрытие при нажатии

Вызовите setAutoCancel(true), чтобы уведомление исчезало, когда пользователь нажимает на него. В противном случае оно останется в панели уведомлений.

.setAutoCancel(true)

Публикация с помощью notify

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

val notification = builder.build()
NotificationManagerCompat.from(context).notify(1001, notification)

Идентификатор уведомления

Идентификатор, передаваемый в notify, определяет уведомление. Повторная публикация с тем же идентификатором обновляет существующее уведомление, а новый идентификатор создаёт отдельное уведомление.

Обновление и отмена

Чтобы обновить уведомление, повторно опубликуйте его с тем же идентификатором и новым содержимым. Чтобы удалить его программно, вызовите cancel(id) у менеджера.

NotificationManagerCompat.from(context).cancel(1001)

Раскрывающиеся стили

Используйте такие стили, как BigTextStyle или BigPictureStyle, чтобы показать больше содержимого, когда пользователь раскрывает уведомление.

.setStyle(
    NotificationCompat.BigTextStyle()
        .bigText("A long message that expands when tapped to reveal full content.")
)

Быстрая проверка

Проверьте, насколько хорошо Вы поняли создание уведомлений.

Итоги

Вы создали и опубликовали уведомление:

  • Используйте NotificationCompat.Builder(context, channelId)
  • setSmallIcon обязателен; добавьте заголовок и текст
  • Публикуйте уведомление с помощью notify(id, notification): тот же идентификатор обновляет уведомление, а новый добавляет его
  • Используйте стили и setAutoCancel, чтобы улучшить внешний вид и поведение

Далее: действия и глубокие ссылки.

Часто задаваемые вопросы

Урок «Создание уведомления» бесплатный?

Да — полный текст урока «Создание уведомления» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Android Academy, подпишись на CoddyKit PRO. Курс Android Academy содержит 4 уроков всего.

Чему я научусь в уроке «Создание уведомления»?

Создавайте и показывайте простое уведомление Ты практикуешь Android Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать Android Academy?

Предыдущий опыт не требуется. Android Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 2 из 4.

Сколько времени занимает урок «Создание уведомления»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке Android Academy?

Да. Каждый урок Android Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Каналы уведомлений
  2. Создание уведомления
  3. Действия и глубокие ссылки
  4. Разрешение на уведомления во время работы
← Назад к Android Academy