Android 16 introduces progress-centric notifications to help users seamlessly track user-initiated, start-to-end journeys.
Notification.ProgressStyle
is a new notification
style that lets you create progress-centric notifications. Key use cases include
rideshare, delivery, and navigation. Within the Notification.ProgressStyle
class, you can denote states and milestones in a user journey using
points and segments.


Clases y métodos relevantes
Las siguientes clases contienen las diferentes APIs que usas para crear una
notificación de ProgressStyle
:
Anatomía y personalización
En las siguientes imágenes, se muestran las diferentes partes que conforman las notificaciones de ProgressStyle
:
En las siguientes imágenes, se muestran las diferentes partes que conforman las notificaciones de ProgressStyle
:

A. Encabezado: Subtítulo |
|
B. Encabezado: Tiempo |
|
C. Título del contenido |
|
D. Texto del contenido |
|
E. Barra de progreso |
|
F. Botón de acción |

Prácticas recomendadas
Sigue estas prácticas recomendadas para proporcionar la mejor experiencia del usuario posible con notificaciones centradas en el progreso:
- Asegúrate de que los campos correctos estén configurados para cumplir con la visibilidad de anuncios promocionados.
- Usa los elementos visuales adecuados para guiar al usuario en su recorrido. Por ejemplo, las apps de transporte privado con conductor deben establecer una imagen del vehículo y el color más preciso del vehículo que se usa en una experiencia de transporte privado con conductor con
Notification.setLargeIcon()
. - Usa un lenguaje conciso y claro para definir el progreso de ese recorrido del usuario. La hora de llegada, el nombre del conductor y el estado del viaje son textos fundamentales que se deben comunicar en la notificación.
- Proporciona acciones útiles y relevantes en la notificación que ayuden a optimizar el recorrido del usuario. Por ejemplo, proporcionar una propina o agregar un plato adicional a un pedido de entrega de comida iniciado recientemente son acciones que se pueden realizar antes de la entrega.
- Usa segmentos y puntos para indicar estados. Por ejemplo, usa segmentos para colorear un estado y la duración del tráfico en un viaje de transporte privado con conductor, y usa puntos para los estados de eventos importantes, preparación de alimentos, entrega y partida de pasajeros.
- Actualiza la experiencia de progreso con frecuencia y precisión para que coincida con el progreso real del viaje. Por ejemplo, las condiciones de tráfico que cambian pueden reflejarse en cambios en los colores de los segmentos y en las actualizaciones de texto.
En el siguiente fragmento de código, se muestra cómo se podría usar una notificación ProgressStyle
para un contexto de viaje compartido:
var ps =
Notification.ProgressStyle()
.setStyledByProgress(false)
.setProgress(456)
.setProgressTrackerIcon(Icon.createWithResource(appContext, R.drawable.ic_car_red))
.setProgressSegments(
listOf(
Notification.ProgressStyle.Segment(41).setColor(Color.BLACK),
Notification.ProgressStyle.Segment(552).setColor(Color.YELLOW),
Notification.ProgressStyle.Segment(253).setColor(Color.WHITE),
Notification.ProgressStyle.Segment(94).setColor(Color.BLUE)
)
)
.setProgressPoints(
listOf(
Notification.ProgressStyle.Point(60).setColor(Color.RED),
Notification.ProgressStyle.Point(560).setColor(Color.GREEN)
)
)
Ten en cuenta que, en el ejemplo, se establece una imagen de vehículo para el ícono del dispositivo de rastreo, y se usan segmentos y puntos para indicar la experiencia de viaje compartido y los eventos importantes para brindar una experiencia del usuario más completa.
Consulta la app de ejemplo para obtener más información.