为了减少驾驶时的分心,抬头显示通知 (HUN) 为驾驶员提供重要且相关的信息,而不会分散他们对显示屏或移动设备的注意力。但是,由于 HUN 可能 会干扰驾驶任务,因此务必考虑 HUN 的优点和缺点,以确保驾驶员不会分心。
使用这些 Android 特定于通知的安全功能来减少驾驶员分心
此内容介绍了与 platform/packages/apps/Car/Notification
相关的配置和资源。
排队和确定优先级
当收到多个传入的 HUN 时,排队和确定优先级机制会向驾驶员显示最重要和最相关的信息。
要启用或停用队列机制,请为 config_suppressAndThrottleHeadsUp config
设置布尔值。
排队的 HUN 根据通知的类别确定的优先级进行排序。在 headsup_category_priority
数组中按优先级降序指定。
一些时间敏感型通知(例如 CATEGORY_CALL
和 CATEGORY_CAR_EMERGENCY
)应立即显示,而不是排队。
要立即显示这些类型的 HUN,请将这些类别添加到 headsup_category_immediate_show
数组。
限制和调整节奏
当用户执行某些操作(在此操作期间显示 HUN 会不安全或分散注意力,例如与 Assistant 或 Dialer 互动)时,您可以限制 HUN。
要采用限制,请将需要关注的应用的软件包名称添加到许可名单 (headsup_throttled_foreground_packages
)。这会阻止队列在指定的应用在前台运行时显示新的 HUN。
为了让驾驶员有时间专注于驾驶,请在每个 HUN 的显示之间添加时间间隔。此时间间隔 (headsup_delay_duration
) 在 headsup_throttled_foreground_packages
中的软件包移至后台后应用。
抑制
在队列中保留较长时间的 HUN 可以被抑制。当 HUN 与驾驶员无关时,它们可能会导致分心。与其触发 HUN,不如将过期的通知定向到通知中心。您可以通过为驾驶和停车状态规定不同的值来定制 HUN 管理。
对于驾驶状态
- 将
config_expireHeadsUpWhenDriving
设置为true
,并将headsup_queue_expire_driving_duration_ms
指定为通知过期的时间(以毫秒为单位,相对于发布时间)。
对于停车状态
- 将
config_expireHeadsUpWhenParked
设置为true
,并将headsup_queue_expire_parked_duration_ms
指定为通知过期的时间(以毫秒为单位,相对于发布时间)。
在发生抑制的情况下,发送一个尾随系统 HUN 以通知驾驶员。通过更新 hun_suppression_notification_title_drive
和 hun_suppression_notification_title_park
的值来修改此通知的标题
要在打开通知中心时自动关闭 HUN 队列
- 将
config_dismissHeadsUpWhenNotificationCenterOpens
布尔值设置为true
。