Значки уведомлений не просыпаются в Android O
В Android O разработчик предварительного просмотра Google ввел значки уведомлений, которые должны отображаться на значке запуска. Я использую эмулятор с Android O из dev channel. Я написал простой код, чтобы показать значок уведомления, но он, похоже, не работает -
Notification notification = new Notification.Builder(getApplicationContext())
.chooseBadgeIcon(Notification.BADGE_ICON_SMALL)
.setSmallIcon(android.R.drawable.btn_star)
.setNumber(10)
.build();
mNotificationManager.notify(1, notification);
Это просто показывает как обычное уведомление.
API - https://developer.android.com/reference/android/app/Notification.Builder.html
Кто-нибудь еще работал над этим? Я что-то пропустил?
Показать значок включен в настройках.
Пробовал с NotificationChannel тоже. Не работает -
NotificationChannel mChannel = new NotificationChannel("TestBadge_id", "TestBadgeName", NotificationManager.IMPORTANCE_HIGH);
mChannel.enableLights(true);
mChannel.setLightColor(Color.RED);
mChannel.setShowBadge(true);
mNotificationManager.createNotificationChannel(mChannel);
Notification notification = new Notification.Builder(getApplicationContext())
.chooseBadgeIcon(Notification.BADGE_ICON_SMALL)
.setSmallIcon(android.R.drawable.btn_star)
.setNumber(10)
.setChannel("TestBadge_id")
.build();
mNotificationManager.notify(1, notification);
1 ответ
Примеры значков уведомлений Android-O
похоже, не работает в эмуляторе в ранних выпусках предварительного просмотра. Но с последней версией Android-O разработчик preview-3
значки отображаются правильно, как описано в разделе " Значки уведомлений ".
Чтобы отобразить значок уведомления, необходимо установить setShowBadge(логическое значение) для канала уведомления в true
, По умолчанию значки будут отображаться, как показано ниже:
При длительном нажатии, если имеется более одного уведомления, отображается счетчик. Счет автоматически увеличивается / уменьшается на основе активных уведомлений. Вы также можете настроить количество вручную, используя Notification.Builder.setNumber ().
Пример отображения количества уведомлений при длительном нажатии на значок запуска:
Убедитесь, что вы ориентируетесь на последний API:
compileSdkVersion 26
buildToolsVersion "26.0.0"
targetSdkVersion 26
Протестировано в версии пиксельного эмулятора Android 26.1.1
,