Android 16 引入了一个新的通知模板,可帮助用户无缝跟踪用户发起的端到端旅程。这些通知在系统途径上具有更高的曝光度,并且在抽屉式通知栏中排名靠前。
使用 Notification.ProgressStyle 设置以进度为中心的通知的样式。主要应用场景包括网约车、外卖和导航。在该类中,您可以使用点和段来表示用户历程中的状态和里程碑。
相关课程
以下类包含用于构建 ProgressStyle 通知的不同 API:
剖析和自定义
以下图片显示了构成 ProgressStyle 通知的不同部分:
A. 标题 - 说明文本 |
|
B. 标头 - 时间 |
|
C. 内容标题 |
|
D. 内容文本 |
|
E. 进度条 |
|
F. 操作按钮 |
最佳做法
使用合适的 API 并遵循最佳实践,以便为进度更新提供最佳用户体验。
- 设置正确的字段,以满足通知栏中的推广显示要求。
- 使用合适的视觉元素来引导用户。例如,网约车应用应设置车辆图片,并使用
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)
)
)
您可以参阅 [示例应用][8]{:.external}来试用这些 API。