У меня есть приложение, которое считывает данные из HealthKit. Я могу прочитать данные из него успешно. Однако я заметил проблему. Когда приложение «Здоровье» не открыто, и я пытаюсь прочитать данные из него, HealthKit просто возвращает старые данные, любые новые данные, такие как шаги, которые я только что сделал, не возвращаются. Поэтому я жду около 45 минут, затем возвращаются последние данные. НО, когда я открываю приложение HealthKit в это время (вместо ожидания 45 минут), последние данные возвращаются. Я не уверен, потребуется ли иногда HealthKit возвращать последние данные стороннему приложению или мы можем заставить HealthKit возвращать последние данные, открывая приложение «Здоровье». Это ошибка?iOS прочитанные данные от HealthKit
ответ
Это не ошибка. Насколько я знаю, нет способа заставить HealthKit возвращать последние данные, потому что данные еще не находятся в магазине Health Store.
Магазин здоровья периодически получает данные в партиях. Сотрудник Apple ранее заявлял об этом на форумах разработчиков (фактически, в потоке WatchKit). Время, которое он заявил, было «Около 15 минут».
Спасибо за информацию. Вы знаете какой-либо другой способ получить последние данные? – kenvu
Когда я прочитал рамочный документ HealthKit, я помню, что там есть какой-то HKObserver, который может контролировать магазин здоровья. Может быть полезно изучить это. –
Я не мог найти его, не могли бы вы дать мне ссылку? – kenvu
Возможный дубликат [Как заставить HKQuery загружать последние шаги?] (Http://stackoverflow.com/questions/27223353/how-to-force-a-hkquery-to-load-the- самые последние шаги) – Allan