В Android 17 появился шаблон уведомлений MetricStyle, который поддерживает приложения для здоровья и фитнеса, таймеры и приложения для путешествий.
MetricStyle и виджет с обновлениями в реальном времени для приложения "Часы".
Возможности
Уведомления в виде показателей обладают следующими возможностями:
- Поддерживает использование метода
setContentTitle. - Не показывает контекстный текст.
- Поддерживает до трех кнопок действий.
- Поддерживает до трех показателей.
- Для каждого элемента
Notification.Metricтребуется ярлык, значение и необязательная единица измерения. - Внешний вид развернутого макета зависит от количества выбранных показателей.
- Для каждого элемента
MetricStyle в разных состояниях. Слева направо: информация на заблокированном экране (AOD), продвигаемая как обновление в реальном времени, развернутый вид по умолчанию и свернутый вид по умолчанию.
Поведение
Поведение уведомления в стиле показателя зависит от его состояния:
- Единицы измерения добавляются к ярлыку в развернутом состоянии.
- Во второй строке свернутого состояния показатели объединены в одну строку. Второй и третий показатели появляются, только если они полностью помещаются в строку.
- В свернутом состоянии единица измерения не показывается.
- Каждому показателю отводится одинаковое горизонтальное пространство, независимо от его содержимого.
Как обновление в реальном времени
Если уведомление в стиле показателя преобразуется в уведомление в реальном времени, учитывайте следующее:
- Указывать
Notification.Builder#setContentTitleне нужно, так как вместо него используется значение показателя. Если заголовок не указан, будет показано название приложения. - Если указан параметр
Notification.Builder#setSubtext, он будет показан в строке заголовка, а не перенесен на новую строку, как в случае с другими стилями продвижения. - Командные кнопки имеют одинаковое визуальное оформление в виде таблетки.
Важные сведения о коде
- Ниже приведен список классов и справочной документации.
Дополнительная информация
- Документация по Notification.MetricStyle API
- Документация по Notification.Metric API
- Документация по Notification.Action API