Я пытаюсь прочитать данные BloodPressure из HealthKit, и мне интересно, почему я должен запросить .bloodPressureSystolic
и .bloodPressureDiastolic
вместо .bloodPressure
Я пытаюсь спросить
requestAuthorization(toShare: nil, read: dataTypesToRead, completion: { ... })
где dataTypesToRead = HKObjectType.correlationType(forIdentifier: .bloodPressure)
(ps: это просто для простоты, correlationType(forIdentifier: )
должен быть развернут)
и приложение вылетает. Так что я предполагаю, что нельзя requestAuthorization
за correlationType(forIdentifier: )
если я использую HKObjectType.quantityType(forIdentifier:)
или .categoryType(forIdentifier:)
, то requestAuthorization
отлично работает, также с .bloodPressureSystolic
и .bloodPressureDiastolic
Если мое предположение верно, то почему Apple говорит:
typesToRead
Набор, содержащий типы данных, которые вы хотите прочитать. Этот набор может содержать любой конкретный подкласс класса HKObjectType
(любой из HKCharacteristicType , HKQuantityType, HKCategoryType, HKWorkoutType or HKCorrelationType classes
). Если пользователь дает разрешение, ваше приложение может читать эти типы данных из хранилища HealthKit.
https://developer.apple.com/documentation/healthkit/hkhealthstore/1614152-requestauthorization
верно ли мое предположение? почему я не могу спросить разрешения на HKObjectType.correlationType(forIdentifier: .bloodPressure)
??