Notification.Builder(контекст) недавно был устаревшим с местом появления каналов уведомлений в Android O.
ПРОБЛЕМА:
После использования Notification.Builder(context, StringID)
вместо Notification.Builder(context)
я получил уведомление на свое устройство Android O.
Однако, попробовав это на Android 23 (M), я не получил уведомление. Я отлаживал свой код, и он просто прекратил выполнение, как только отладчик попал в строку сообщения Notification.Builder(контекст, StringID) на Android 23 (M).
FIX:
Чтобы устранить эту проблему, я использовал условие if/else для разделения между устройствами Android O и остальными устройствами.
У меня есть следующий фрагмент кода:
Notification.Builder notificationBuilder;
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
notificationBuilder = new Notification.Builder(mContext,
mContext.getResources().getString(R.string.notification_id_channel));
} else {
notificationBuilder = new Notification.Builder(mContext);
}
Lint в Android Studio отображает следующую строку устаревания:
Вопрос:
Есть ли способ избавиться от этой строки предупреждения об отказе?