17.3 · Contacts, Calendar, Photos, HealthKit and Core Motion

These frameworks hand your app the most personal data on the device. Their common design is: ask narrowly, accept partial access, and never assume you got it.

Mental model. Every one of them has an authorization status you must read, a usage string you must write, and a limited mode you must handle.

Personal data

Contacts, EventKit and Photos: authorization models and limited access.

  1. How do the Contacts, EventKit and Photos frameworks gate access, and how should an app handle limited or write-only access? 17.3.1 · L3
    All three frameworks follow the same pattern: an authorization status you check, a request call that shows the system prompt once, an Info.plist usage…

Health and motion

HealthKit’s read/write rules, units, and Core Motion availability.

  1. How does HealthKit handle authorization and units, and what should an app know about Core Motion and sensor availability? 17.3.2 · L3
    HealthKit is the central, encrypted store of health data shared among apps. You check HKHealthStore.isHealthDataAvailable() first (false on devices without…

More in System frameworks