Notifications axées sur la progression

Android 16 introduit des notifications axées sur la progression pour aider les utilisateurs à suivre facilement les parcours de bout en bout initiés par l'utilisateur.

Notification.ProgressStyle est un nouveau style de notification qui vous permet de créer des notifications axées sur la progression. Les principaux cas d'utilisation incluent les services de covoiturage, la livraison et la navigation. Dans la classe Notification.ProgressStyle, vous pouvez indiquer les états et les jalons d'un parcours utilisateur à l'aide de points et de segments.

Notification axée sur la progression affichée sur l'écran de verrouillage.
Notification axée sur la progression affichée dans le volet des notifications.

相关类和方法

以下类包含用于构建 ProgressStyle 通知的不同 API:

结构和自定义

以下图片显示了构成 ProgressStyle 通知的不同部分:

“ProgressStyle”通知的不同部分。
应用可以为追踪器图标设置车辆图片,并使用细分和数据点来表示共享行程体验和里程碑。

最佳做法

请遵循以下最佳实践,以便通过以进度为中心的通知提供尽可能出色的用户体验:

  • 确保设置了正确的字段,以满足宣传信息的公开范围要求。
  • 使用合适的视觉元素引导用户完成整个历程。例如,共享车应用应使用 Notification#setLargeIcon 设置车辆图片以及共享车体验中所用车辆最准确的颜色
  • 使用简洁明了的语言来定义该用户体验历程的进度。 到达时间、司机姓名和行程状态是应在通知中传达的重要文本。
  • 在通知中提供实用且相关的操作,有助于简化用户体验历程。例如,在餐食送达之前,为新发起的订单提供小费或添加其他菜肴都是可执行的操作。
  • 使用线段来表示状态。例如,使用线段为共享行程中的交通状态和时长着色,并使用点来表示里程碑、食物准备、送餐和乘客上车状态。
  • 经常准确更新进度体验,以匹配历程的实际进度。例如,变化的交通状况可以反映在路段颜色变化和文本更新中。

以下代码段展示了如何将 ProgressStyle 通知用于共享车辆情境:

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)
            )
        )

请注意,在此示例中,为追踪器图标设置了车辆图片,并使用路段和点来表示共享行程体验和里程碑,以提供更完整的用户体验。

如需了解详情,请参阅示例应用