【问题标题】:How to access elevation gain, cadence and running pace from HealthKit running workout?如何从 HealthKit 跑步锻炼中获取海拔增益、节奏和跑步速度?
【发布时间】:2025-12-17 09:50:02
【问题描述】:

我需要通过 AppleWatch 访问海拔增益、步频和跑步速度(不是平均水平,而是每公里)。

有什么方法可以访问这些数据。目前我可以访问锻炼的持续时间、覆盖的距离……这些有什么元数据吗?我在 Apple 的 HealthKit 文档中找不到任何内容。

我现在想,我必须查询 stepCount 和 distanceCovered 才能获得速度和节奏,但仍然无法访问海拔增益数据。

【问题讨论】:

    标签: ios swift apple-watch healthkit


    【解决方案1】:

    如果 workout 是您的 HKWorkout 对象,那么您可以这样做:

    if let workoutMetadata = workout.metadata {
        if let workoutElevation = workoutMetadata["HKElevationAscended"] as? HKQuantity {
            print("Elevation = \(workoutElevation.doubleValue(for: HKUnit.meter()))m")
        }
    }
    

    有些值不能用作属性似乎有点奇怪。我想这是因为它们只适用于有限数量的锻炼类型。

    【讨论】:

    • 太好了,正是我需要的