Как использовать запросы наблюдателя Healthkit с фоновой доставкой, не запрашивая разрешения у пользователей, не являющихся гражданами Гонконга?
Пользователи этого приложения могут выбрать, хотят ли они использовать функции Healthkit (они не нужны для работы приложения). Я хотел бы настроить запрос наблюдателя для отправки данных на сервер в фоновом режиме.
Согласно документации Apple по этой ссылке: https://developer.apple.com/documentation/healthkit/hkobserverquery/executing_observer_queries
Если вы планируете поддерживать фоновую доставку, настройте все запросы наблюдателя в приложении делегата вашего приложения:didFinishLaunchingWithOptions: method. Настраивая запросы в application:didFinishLaunchingWithOptions:, вы гарантируете, что запросы созданы и готовы к использованию до того, как HealthKit доставит обновления.
Насколько я понимаю, настройка ваших запросов наблюдателя в методе application:didFinishLaunchingWithOptions: означает, что мне придется запрашивать у пользователей разрешения при первом запуске. Можно ли настроить фоновую доставку из другого места? Например, могу ли я сделать это одновременно с запросом разрешений у пользователей?
Спасибо!
1 ответ
Один из возможных потоков:
В
didFinishLaunching
, проверьте наличие логического значения, указывающего, что пользователь одобрил интеграцию HealthKit. Если этоtrue
затем вызовите функцию для настройки запросов наблюдателя.В момент выполнения вашего приложения, когда пользователь указывает, что он хочет предоставить доступ к данным HealthKit, запрашивает разрешение и затем задает логическое значение в
UserDefaults
как только у вас будет разрешение.На этом этапе вы также должны вызвать свою функцию, чтобы настроить запросы наблюдателя, чтобы вы начали получать данные.