진행 상황 중심 알림

Android 16에서는 사용자가 시작부터 끝까지 사용자 시작 여정을 원활하게 추적할 수 있도록 진행률 중심 알림을 도입합니다.

Notification.ProgressStyle는 진행 상황 중심의 알림을 만들 수 있는 새로운 알림 스타일입니다. 주요 사용 사례로는 차량 공유, 배송, 내비게이션이 있습니다. Notification.ProgressStyle 클래스 내에서 포인트세그먼트를 사용하여 사용자 여정의 상태와 마일스톤을 나타낼 수 있습니다.

잠금 화면에 표시되는 진행률 중심의 알림입니다.
알림 창에 표시되는 진행률 중심 알림

相关类和方法

以下类包含用于构建 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)
            )
        )

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