Работал ли с приоритетами уведомлений

«Работал ли с приоритетами уведомлений» — вопрос из категории Android компоненты, который задают на 23% собеседований Android Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Да, работал. В Android можно задавать приоритеты уведомлений через NotificationCompat.Builder.setPriority(). До API 26 использовались константы типа PRIORITY_HIGH, PRIORITY_DEFAULT и т.д. С API 26+ вместо приоритетов используются каналы уведомлений (NotificationChannel), где задается importance (IMPORTANCE_HIGH, IMPORTANCE_DEFAULT и др.). Пример:

// Для API <26
NotificationCompat.Builder(context, CHANNEL_ID)
    .setPriority(NotificationCompat.PRIORITY_HIGH)

// Для API 26+
val channel = NotificationChannel(
    CHANNEL_ID, 
    "Channel Name", 
    NotificationManager.IMPORTANCE_HIGH
)
notificationManager.createNotificationChannel(channel)

Высокий приоритет влияет на отображение (heads-up уведомления), звук и вибрацию.