健康服务中的去抖动目标

健康服务现在支持针对瞬时指标(例如心率、距离和速度)的去抖动目标。对于希望在整个锻炼过程中将心率等指标维持在特定阈值或范围内的用户,去抖动目标可改善其用户体验。

经过去抖动处理的目标可防止在短时间内多次(每次条件为 true 时)发出同一事件。相反,只有在可配置的时间段内(通常为几秒)持续超出阈值时,才会发出事件。达到阈值的持续时间是指用户需要不间断地达到指定阈值的时间量,之后健康服务才会发送提醒事件。

您还可以防止在目标注册后立即发出事件。初始延迟时间是指自目标注册以来,必须经过多长时间,您的应用才会收到通知。

如果您的应用允许用户设置健身目标或指标,那么将“达到阈值的持续时间”和“初始延迟时间”结合使用可减少向用户显示的误报和重复提醒。

案例研究:心率

延迟目标的一种常见应用场景涉及心率区间。心率在整个锻炼过程中会不断波动,尤其是在进行高强度有氧运动时。如果不支持去抖动,应用可能会在短时间内收到许多提醒,例如每次用户的心率超出或低于目标范围时。

通过引入“初始延迟”,您可以告知健康服务仅在指定时间段过后发送目标提醒,您可以将此时间段视为调整期。通过引入“达到阈值的时长”,您可以进一步自定义,指定用户必须在指定阈值内或阈值外停留多长时间,才能激活相应目标。

在实践中,这可能意味着在用户的心率超出目标心率范围 15 秒后,您的应用才会通知用户增加或降低运动强度。