如何将总距离添加到 HKLiveWorkouts
How to add total distance to HKLiveWorkouts
我正在使用新的 HKLiveWorkoutBuilder 创建 Healthkit 锻炼。一切都很好,除了我不知道如何给锻炼一个总距离。我添加了有效的距离样本(尽管它在健康中显示了两次单位,例如 200 mi mi)但是当稍后查询锻炼时它没有总距离,甚至在锻炼构建器 finishWorkout() 函数中锻炼也没有总距离。有谁知道如何在 Live Workouts 上获得总距离?
看起来 HKLiveWorkoutBuilder 并没有为您创建 HKWorkout,而只是在锻炼过程中为您提供增量数据。
由于 HKWorkout 是不可变的,您应该在收集完所有数据后才创建一个。然后一旦你想保存锻炼,你可以从健康商店重新查询所有相关数据,或者使用实时收集的样本。
使用 HKQuantityTypeIdentifier
作为 "distance traveled" 例如:
https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifier/1615230-distancewalkingrunning
在初始化 HKWorkout 之前查询值。
似乎在 HKWorkoutConfiguration() 上设置 activity 类型就是答案。我使用 "other" 作为 activity 类型,无论出于何种原因,生成的 HKWorkout 没有总距离。我将 activity 类型切换为步行,效果很好。
我正在使用新的 HKLiveWorkoutBuilder 创建 Healthkit 锻炼。一切都很好,除了我不知道如何给锻炼一个总距离。我添加了有效的距离样本(尽管它在健康中显示了两次单位,例如 200 mi mi)但是当稍后查询锻炼时它没有总距离,甚至在锻炼构建器 finishWorkout() 函数中锻炼也没有总距离。有谁知道如何在 Live Workouts 上获得总距离?
看起来 HKLiveWorkoutBuilder 并没有为您创建 HKWorkout,而只是在锻炼过程中为您提供增量数据。
由于 HKWorkout 是不可变的,您应该在收集完所有数据后才创建一个。然后一旦你想保存锻炼,你可以从健康商店重新查询所有相关数据,或者使用实时收集的样本。
使用 HKQuantityTypeIdentifier
作为 "distance traveled" 例如:
https://developer.apple.com/documentation/healthkit/hkquantitytypeidentifier/1615230-distancewalkingrunning
在初始化 HKWorkout 之前查询值。
似乎在 HKWorkoutConfiguration() 上设置 activity 类型就是答案。我使用 "other" 作为 activity 类型,无论出于何种原因,生成的 HKWorkout 没有总距离。我将 activity 类型切换为步行,效果很好。