从HealthKit的Void中获取价值

时间:2019-07-04 14:39:13

标签: ios swift health-kit

我正在尝试创建一个仅从HealthKit返回高度数据的Double值的函数。但是它似乎没有返回新的获取的样本。我在这里做什么错了?

我尝试在完成时使用self.heightValue,但执行此操作时会显示Use of unresolved identifier 'self'

func getHeight() -> Double {
  var heightValue = 0.0
  healthKitManager.readMostRecentSample(
    getHeight!, 
    completion: {

    (mostRecentHeight, error) -> Void in

    var HKheight = 0.0
    if mostRecentHeight != nil {
      let recentSample = mostRecentHeight as? HKQuantitySample;
      if let sample = recentSample?.quantity.doubleValue(for:HKUnit(from: "cm")) {
       HKheight = sample.roundTo(1)
       print("SAMPLE: \(sample.roundTo(1))")
        heightValue = HKheight
      }
    }      
   })

return heightValue

}

我希望输出与示例(177.0)相同,但是我仍然得到0.0

0 个答案:

没有答案