【问题标题】:how to get totalDistance of HKWorkout如何获得 HKWorkout 的总距离
【发布时间】:2021-03-27 23:52:48
【问题描述】:

目前我正在为 iPhone 开发一个正在运行的应用程序。

我遇到的一个问题是,我正在根据Apples Documentation 使用HKWorkoutBuilder 构建HKWorkout

但我无法将totalDistance 与锻炼联系起来——提到了here in the DocumentationtotalDistancenil,当我尝试从锻炼中读取它时——这并不奇怪,因为我没有设置它。据我了解,HKWorkoutBuilder 无法添加 totalDistance

我想我在这里错过了一些东西。

【问题讨论】:

  • 您将其添加到您提供的锻炼样本中developer.apple.com/documentation/healthkit/hkworkout
  • 查看文档中的Creating a workout
  • @Paulw11 这不是我构建锻炼的方式(使用 HKWorkoutBuilder)。 See my links above。 @loremipsum yes that is what I do。但是没有办法将totalDistance 属性保存到锻炼。我无法想象这是它应该的方式——总结路线中的所有位置。即使在 Health App 中,每次锻炼都有一个奇怪的空白点——我认为应该显示距离。
  • 您有责任在锻炼过程中跟踪总距离,例如通过累积您添加到路线的位置更新之间的距离。然后,您在创建 HKWorkout 时提供此距离,如上所述。然后将您建立的路线与此锻炼相关联,并将其保存到 HealthKit 商店。
  • 你没有检查我提供的链接。 HKWorkout 不是我创建的,但 HKWorkoutBuilder 无法手动添加距离;-)

标签: ios swift healthkit


【解决方案1】:

使用addSamples 方法将距离样本添加到HKWorkoutBuilder。将根据您添加的样本为您计算总距离。例如,您可以将 HKQuantityTypeIdentifierDistanceWalkingRunning 类型的样本添加到锻炼中,它应该填充 totalDistance

【讨论】:

  • 奇怪的是,我可以在锻炼的详细视图中看到健康应用程序中的条目..(远距离步行跑步)但我无法通过HKWorkout.totalDistance 获得它。即使在健康应用程序中,它也会在概览中显示一个空白点。我确实想念这里的东西......
【解决方案2】:

刚刚注意到我没有使用完成处理程序添加距离样本 - 并且没有等待完成,直到我在构建器上调用 finishWorkout()。我认为这以某种方式搞砸了锻炼。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-01-03
    • 1970-01-01
    • 2011-03-16
    • 1970-01-01
    • 1970-01-01
    • 2015-10-19
    • 1970-01-01
    相关资源
    最近更新 更多