Garmin Connect IQ 自定义数据字段时间区

Garmin Connect IQ custom data field time in zone

这是一个真正的菜鸟问题,但我正在尝试为我的 Garmin Edge 520 编写我的第一个自定义数据字段。我想做的就是将 3 区 + 4 区 + 5 区的时间加起来将其显示在一个简单的数据字段中。

我确信有一个简单的解决方案,但我找遍了,但我看不到它。 从 Connect IQ API Docs 下 Toybox::UserProfile 的 API 文档中,我可以获取 HeartRateZones 并可能使用该信息来尝试计算它?

是否有一个简单的 API 调用来获取 x 区的时间?

我还认为此功能不是直接通过 API 直接提供的。

但是,您可以根据 Connect IQ API 文档中的 "ActivityTracker" 示例编写自己的 ActivityTracker。不幸的是,这实质上意味着您必须复制当前看到的显示逻辑才能添加三个字段。

您将调用 Toybox.Activity.getActivityInfo() 以获取当前心率,例如,以 1 秒为间隔(ActivityTracker 示例向您展示了如何实现 1 秒回调),确定心率在哪个区域是,并为该区域增加一个计数器。然后将三个区域相加并显示。

-cfs