Slide 14
Slide 14 text
౷ܭσʔλΛऔಘ͢Δ
func executeCollectionQuery(type: HKQuantityType, unit: HKUnit, startDate: Date, endDate: Date) {
var components = DateComponents()
components.day = 1
let predicate = HKQuery.predicateForSamples(withStart: startDate, end: endDate, options: [.strictStartDate, .strictEndDate])
let collectionQuerty = HKStatisticsCollectionQuery(quantityType: type,
quantitySamplePredicate: predicate,
options: .cumulativeSum,
anchorDate: startDate,
intervalComponents: components)
collectionQuerty.initialResultsHandler = { _, results, _ in
guard let results = results else { return }
results.enumerateStatistics(from: startDate, to: endDate) { result, _ in
if let q = result.sumQuantity() {
print("startDate: \(result.startDate)")
print("endDate: \(result.endDate)")
print("value: \(q.doubleValue(for: unit))")
}
}
}
healthStore!.execute(collectionQuerty)
}