Notificaciones centradas en el progreso (original) (raw)

Android 16 presenta notificaciones centradas en el progreso para ayudar a los usuarios a hacer un seguimiento sin problemas de los recorridos de principio a fin que inician.

Notification.ProgressStyle es un nuevo estilo de notificación que te permite crear notificaciones centradas en el progreso. Entre los casos de uso clave, se incluyen el transporte privado con conductor, la entrega y la navegación. Dentro de la clase Notification.ProgressStyle, puedes denotar estados y eventos importantes en el recorrido del usuario conpuntos y segmentos.

Notificación centrada en el progreso que se muestra en la pantalla de bloqueo.

Una notificación centrada en el progreso que se muestra en la pantalla de notificaciones.

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 Notification.Builder.setSubText()
B. Encabezado: Tiempo Notification.Builder.setWhen()
C. Título del contenido Notification.Builder.setContentTitle()
D. Texto del contenido Notification.Builder.setContentText()
E. Barra de progreso Notification.ProgressStyle
F. Botón de acción Notification.Builder.addAction()

Las apps pueden establecer una imagen de vehículo para el ícono del dispositivo de rastreo y usar segmentos y puntos para indicar la experiencia de transporte privado con conductor y los eventos importantes.

Prácticas recomendadas

Sigue estas prácticas recomendadas para proporcionar la mejor experiencia del usuario posible con notificaciones centradas en el progreso:

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.