Я пытаюсь получить сегодняшние памятные минуты из HealthKit, но я всегда получаю 44280 вместо 3, как в приложении для здоровья, я написал эту функцию:
func getDailyMindfulnessTime(completion: @escaping (TimeInterval) -> Void) {
let sampleType = HKSampleType.categoryType(forIdentifier: .mindfulSession)!
let sortDescriptor = NSSortDescriptor(key: HKSampleSortIdentifierEndDate, ascending: false)
let startDate = Calendar.current.startOfDay(for: Date())
let endDate = Calendar.current.date(byAdding: .day, value: 1, to: startDate)
let predicate = HKQuery.predicateForSamples(withStart: startDate, end: endDate, options: .strictStartDate)
let query = HKSampleQuery(sampleType: sampleType, predicate: predicate, limit: HKObjectQueryNoLimit, sortDescriptors: [sortDescriptor]) { (_, results, error) in
if error != nil {
print(" HealthKit returned error while trying to query today's mindful sessions. The error was: \(error?.localizedDescription)")
}
var totalTime = TimeInterval()
if let results = results {
for result in results {
totalTime = result.endDate.timeIntervalSince(startDate)
completion(totalTime)
}
} else {
completion(0)
}
}
healthStore.execute(query)
}
}
Что мне делать?