我正在尝试通过使用HKQuery.predicateForObjects放置过滤器来从 HealthKit iOS 获取心率数据,方法是使用以下代码:
let predicate = HKQuery.predicateForObjects(withMetadataKey: HKMetadataKeyHeartRateMotionContext, allowedValues: ["active"])
var interval = DateComponents()
interval.day = 1
let query = HKStatisticsCollectionQuery(quantityType: type, quantitySamplePredicate: predicate, options: [.discreteAverage], anchorDate: startDate, intervalComponents:interval)
query.initialResultsHandler = { query, results, error in
if error != nil {
return
}
我尝试了不同的组合来以不同的方式放置值
让谓词 = HKQuery.predicateForObjects(withMetadataKey: HKMetadataKeyHeartRateMotionContext, allowedValues: ["1"])
或者
让谓词 = HKQuery.predicateForObjects(withMetadataKey: HKMetadataKeyHeartRateMotionContext, allowedValues: ["active"])
或者
让谓词 = HKQuery.predicateForObjects(withMetadataKey: HKMetadataKeyHeartRateMotionContext, allowedValues: [HKHeartRateMotionContext.sedantary])
如果在我的代码中的某个地方做错了什么,我不会得到。
请纠正我。