Доступ к метаданным из HKSampleQuery (Swift 4)

riemannsolve спросил: 03 февраля 2018 в 12:58 в: ios

Итак, я следую яблочным документам здесь.

То, что я пытаюсь сделать, это получить доступ к ключу HKMetadataKeyHeartRateMotionContext на нашем HKSampleQuery. Мне нужно что-то сделать, если HrContext = 1 и hr выше определенного числа.

Вот код:

  func sampleQ() -> HKQuery{
      let pre = HKQuery.predicateForSamples(withStart: Date().lastweek, end: nil)      let que = HKSampleQuery(sampleType: heartRateType, predicate: pre, limit: Int(HKObjectQueryNoLimit), sortDescriptors: nil) {
         query, results, error in         guard let samples = results as? [HKQuantitySample] else {
            fatalError("An error occured fetching the user's tracked food. In your app, try to handle this error gracefully. The error was: \(String(describing: error?.localizedDescription))");
         }
         print (samples)         for sample in samples {
            print (sample)            guard let hrContext =
               sample.metadata?[HKMetadataKeyHeartRateMotionContext] as? String else {                  break
            }            print(hrContext)            print (hrContext+"i am the context")
         }      }      return que
   }

здесь выполняется код :

func startToMeasure() {
        self.healthStore.execute(self.createStreamingQuery())
      self.healthStore.execute(self.sampleQ())
    }

По какой-то причине все, что я получаю в журнале, - это нормальное потоковое сердце, а также печатные метаданные (хотя я не могу получить к нему доступ, и это не так печать любых моих утверждений hrContext)

Любые предложения?

0 ответов