Auktorisering av hälso data i mobil utveckling: essens, hur det fungerar och åtkomst till HealthKit

Författare: IT Sectr Publicerad: 2026-05-22 Lästid: 8 min

Auktorisering av hälso data är processen för att erhålla användarens uttryckliga samtycke för att läsa och skriva medicinska data och träningsdata via system-API:er på mobila plattformar. På iOS implementeras auktorisering via HealthKit med klasserna HKHealthStore och HKObjectType, och på Android via Google Fit API med OAuth 2.0 och FitnessOptions. Enligt Apple HealthKit Documentation, 2025 klassificeras hälso data som en kategori av särskilt konfidentiell information. Medicinsk noggrannhet och efterlevnad av regler är nyckelkrav vid arbete med sådan data.

Huvudpunkter

  • Health Data Authorization — obligatorisk process för att få samtycke för åtkomst till användarens medicinska data.
  • HealthKit — Apples ramverk för att arbeta med hälso data, inklusive HKHealthStore och HKObjectType.
  • Google Fit API — Android-plattform för åtkomst till träningsdata via OAuth 2.0 och FitnessOptions.
  • HKHealthStore — central iOS-klass för att begära auktorisering och utföra operationer med hälso data.
  • Användarens samtycke — obligatoriskt steg där användaren väljer specifika datatyper för att ge åtkomst.

Vad är auktorisering av hälso data?

Auktorisering av hälso data är en mekanism som kräver användarens uttryckliga och dokumenterade samtycke innan åtkomst till dess medicinska och träningsindikatorer. Till skillnad från standardbehörigheter (kontakter, kalender) regleras hälso data av ytterligare juridiska normer: HIPAA i USA, GDPR i Europa och 152-FZ i Ryssland.

iOS implementeras hälsoauktorisering via HealthKit: användaren ser en skärm med en lista över alla datatyper som appen begär och kan välja specifika kategorier för att ge åtkomst. På Android används Google Fit API med auktorisering via OAuth 2.0, där en separat omfattning krävs för varje datatyp.

Enligt App Annie (2025) är hälso- och träningsappar en av de snabbast växande segmenten på mobilmarknaden med en årlig tillväxt på 28%. Samtidigt nekar 71% av användarna åtkomst till hälso data om appen inte ger en tydlig förklaring av insamlingssyftet.

Nyckelskillnad för hälsoauktorisering jämfört med andra behörigheter — möjligheten att ge partiell åtkomst. Användaren kan tillåta läsning av steg men förbjuda åtkomst till hjärtfrekvensdata eller medicinska journaler.

Hur fungerar HealthKit på iOS

HealthKit är ett Apple-ramverk som introducerades i iOS 8 och tillhandahåller en enhetlig centraliserad lagringsplats för hälso data. Appar har inte direkt åtkomst till HealthKit — de begär auktorisering via HKHealthStore och användaren bestämmer vilka datatyper som ska tillhandahållas. All data krypteras på enheten och synkroniseras via iCloud med end-to-end-kryptering.

Begära åtkomst till HealthKit

Auktoriseringsprocessen börjar med att skapa en instans av HKHealthStore och anropa metoden requestAuthorization(toShare:read:). Appen skickar två uppsättningar typer: för läsning (HKObjectType som appen vill läsa) och för skrivning (HKSampleType som appen vill spara). Systemet visar en samtyckesskärm där användaren aktiverar eller inaktiverar varje typ individuellt.

Viktig egenskap: HealthKit visar inte utvecklaren vilka typer användaren har tillåtit på samtyckesskärmen. Efter anrop av requestAuthorization måste åtkomst till varje typ kontrolleras individuellt via HKHealthStore.authorizationStatus(for:). Enligt WWDC Session 11108 (2024) rekommenderar Apple att kontrollera auktoriseringsstatus före varje läs- eller skrivoperation.

HKObjectType datatyper

HealthKit stöder hundratals datatyper indelade i kategorier: kvantitativa (steg, puls, kalorier), egenskaper (längd, vikt, födelsedatum), kliniska journaler (allergier, vaccinationer, testresultat), symptom och menstruationscykel. Varje typ representeras av en underklass till HKObjectType: HKQuantityType för numeriska indikatorer och HKCategoryType för kategorisk data.

Från och med iOS 18 har Apple utökat HealthKit med stöd för data från medicinska institutioner via FHIR (Fast Healthcare Interoperability Resources). Appar kan begära åtkomst till strukturerade medicinska journaler om användaren har anslutit sitt sjukhus eller sin klinik till Hälso-appen.

Hur fungerar Google Fit API på Android

Google Fit är en plattform för att arbeta med träningsdata på Android som använder auktorisering via OAuth 2.0. Till skillnad från HealthKit är Google Fit inte inbyggt i operativsystemet på systemnivå — det är en separat Google Play Services-tjänst som kräver anslutning via Google Play Console och skapande av OAuth 2.0-referenser.

Google Fit och OAuth 2.0

För åtkomst till Google Fit måste appen registrera ett OAuth 2.0-klient-ID i Google Cloud Console. Auktorisering begärs via GoogleSignInAccount och GoogleSignIn.requestPermissions(). Användaren ser standard Googles samtyckesskärm med en uppräkning av begärda omfattningar: fitness.activity.read, fitness.body.read, fitness.nutrition.write och andra.

Google Fit separerar behörigheter för läsning och skrivning för varje datatyp. Appen kan begära åtkomst för att läsa antalet steg utan att begära skrivrättigheter. Från och med Google Fit API v2 måste alla auktoriseringsbegäranden innehålla en beskrivning av syftet med datanvändningen — utan detta avvisas begäran av Googles moderering.

FitnessOptions och Omfattningar

Klassen FitnessOptions gör det möjligt att deklarativt ange vilka datatyper som kräver åtkomst. För varje typ kan åtkomstnivån ställas in: ACCESS_READ, ACCESS_WRITE eller båda. Behörighetsuppsättningen skickas till GoogleSignin.requestPermissions() tillsammans med användarens konto.

Listan över tillgängliga typer inkluderar: steg (DataType.TYPE_STEP_COUNT_DELTA), kalorier (TYPE_CALORIES_EXPENDED), puls (TYPE_HEART_RATE_BPM), distans (TYPE_DISTANCE_DELTA), aktivitet (TYPE_ACTIVITY_SEGMENT) och sömn (TYPE_SLEEP_SEGMENT). Varje typ har sin egen uppdateringsfrekvens och behörighetskrav.

Kodexempel för åtkomst till hälso data

Implementeringen av auktoriseringsbegäran för hälso data skiljer sig avsevärt på iOS och Android. Nedan finns fungerande exempel för HealthKit och Google Fit API.

HealthKit i Swift

I Swift utförs auktoriseringsbegäran för HealthKit via HKHealthStore med angivande av typer för läsning och skrivning. Exemplet visar begäran om åtkomst till steg- och pulsdata.

swift
import HealthKit

let healthStore = HKHealthStore()

let readTypes: Set<HKObjectType> = [
    HKObjectType.quantityType(forIdentifier: .stepCount)!,
    HKObjectType.quantityType(forIdentifier: .heartRate)!
]

let writeTypes: Set<HKSampleType> = [
    HKObjectType.quantityType(forIdentifier: .stepCount)!
]

guard HKHealthStore.isHealthDataAvailable() else {
    fatalError("HealthKit är inte tillgängligt på denna enhet")
}

healthStore.requestAuthorization(toShare: writeTypes, read: readTypes) { success, error in
    if success {
        // Vi kontrollerar status för varje typ separat
        let status = healthStore.authorizationStatus(for: readTypes.first!)
        print("HealthKit-auktorisering: \(status.rawValue)")
    } else {
        print("HealthKit-auktoriseringsfel: \(error?.localizedDescription ?? "okänd")")
    }
}

Google Fit i Kotlin

På Android utförs Google Fit-auktorisering via GoogleSignIn och FitnessOptions. Exemplet visar begäran om åtkomst till steg- och kaloridata.

kotlin
val fitnessOptions = FitnessOptions.builder()
    .addDataType(DataType.TYPE_STEP_COUNT_DELTA, FitnessOptions.ACCESS_READ)
    .addDataType(DataType.TYPE_CALORIES_EXPENDED, FitnessOptions.ACCESS_READ)
    .build()

val account = GoogleSignIn.getAccountForExtension(this, fitnessOptions)

if (!GoogleSignIn.hasPermissions(account, fitnessOptions)) {
    GoogleSignIn.requestPermissions(
        this,
        REQUEST_GOOGLE_FIT,
        account,
        fitnessOptions
    )
} else {
    // Behörigheter har redan beviljats — läser data
    readGoogleFitData(account)
}

// Bearbetning av resultatet av behörighetsbegäran
override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
    super.onActivityResult(requestCode, resultCode, data)
    if (requestCode == REQUEST_GOOGLE_FIT && resultCode == RESULT_OK) {
        val account = GoogleSignIn.getSignedInAccountFromIntent(data)
        account?.let { readGoogleFitData(it) }
    }
}

Säkerhet och efterlevnad av regler

Hälso data tillhör en särskilt känslig kategori av personuppgifter. Utvecklare av appar som arbetar med HealthKit eller Google Fit är skyldiga att följa gällande regleringskrav i användarnas region.

HIPAA och GDPR för hälso data

I USA regleras hälso data av HIPAA (Health Insurance Portability and Accountability Act), som ställer stränga krav på lagring, överföring och bearbetning av medicinsk information. Appar som arbetar med HealthKit kan vara HIPAA-kompatibla om data skickas till servern i krypterad form och åtkomsten är begränsad.

I Europeiska unionen anses hälso data vara en särskild kategori av personuppgifter enligt GDPR (artikel 9). Bearbetning av sådan data kräver användarens uttryckliga samtycke och, i de flesta fall, en konsekvensbedömning av dataskydd. Brott mot GDPR-kraven kan leda till böter på upp till 20 miljoner euro eller 4% av företagets årliga omsättning.

I Ryssland regleras insamling av hälso data av 152-FZ “Om personuppgifter”. Från och med 2025 är alla appar som bearbetar medicinska data för medborgare i Ryska federationen skyldiga att använda certifierade krypteringsverktyg och lagra data på servrar belägna på Ryska federationens territorium, i enlighet med Roskomnadzors krav.

Rekommendation: före publicering av en app som arbetar med hälso data, konsultera juridisk avdelning för att kontrollera efterlevnad av lokala regler. Apple och Google förbehåller sig rätten att avvisa appen om dess integritetspolicy inte uppfyller kraven.

Vanliga frågor

Vad är skillnaden mellan HealthKit och Google Fit?

HealthKit — inbyggt iOS-ramverk med lokal krypterad lagringsplats för hälso data. Google Fit — molntjänst baserad på Google Play Services som använder OAuth 2.0 för auktorisering. HealthKit fungerar offline, Google Fit kräver internetanslutning för synkronisering.

Kan användaren ge partiell åtkomst till hälso data?

Ja, på båda plattformarna. På iOS väljer användaren specifika datatyper (steg, puls, sömn) på HealthKit-samtyckesskärmen. På Android ser användaren en lista över Google Fit-omfattningar och kan återkalla individuella behörigheter via Google-kontoinställningarna.

Vad är HKHealthStore och vad används det till?

HKHealthStore — den centrala klassen i HealthKit-ramverket på iOS. Den hanterar auktorisering, läsning och skrivning av all hälso data. Appen kan inte direkt få åtkomst till HealthKit-lagringsplatsen — alla operationer går via HKHealthStore, vilket garanterar ett enhetligt åtkomstgränssnitt och efterlevnad av användarens åtkomsträttigheter.

Hur återkallar man Google Fit-åtkomst för en app?

Användaren kan återkalla åtkomst via Google Inställningar — Hantera konto — Säkerhet — Tredjepartsappar med åtkomst. Välj appen och klicka på “Ta bort åtkomst”. Man kan också återkalla åtkomst via Google Play Console: Relaterade tjänster — Google Fit — Hantera appar.

Är HIPAA-efterlevnad obligatorisk för appar med HealthKit?

Om appen bearbetar hälso data för användare i USA och skickar den till en server är HIPAA-efterlevnad obligatorisk. Om all data förblir lokalt på enheten och inte överförs till tredje part, kan appen kanske inte kräva HIPAA-efterlevnad, men Apple rekommenderar att följa bästa säkerhetspraxis oavsett jurisdiktion.

Sammanfattning

  • Health Data Authorization — obligatorisk process för att få användarens uttryckliga samtycke för åtkomst till medicinska data.
  • HealthKit — Apples ramverk för att arbeta med hälso data via HKHealthStore på iOS.
  • Google Fit API — Android-plattform för åtkomst till träningsdata via OAuth 2.0 och FitnessOptions.
  • Datatyper — HealthKit stöder kvantitativa, kategoriska och kliniska data; Google Fit — steg, kalorier, puls, aktivitet och sömn.
  • Partiell åtkomst — användaren kan ge åtkomst till vissa datatyper samtidigt som andra nekas på båda plattformarna.
  • HIPAA och GDPR — obligatoriska regleringskrav vid bearbetning av hälso data på USA:s och Europeiska unionens territorium.
  • Rysk reglering — 152-FZ kräver certifierad kryptering och lagring av data på servrar i Ryska federationen vid arbete med medicinska data för ryska medborgare.

Vi utvecklar en mobil applikation nyckelfärdigt

IT Sectr skapar iOS- och Android-applikationer för startups och företag sedan 2017. Vi ger dig råd och föreslår den bästa lösningen.

Diskutera projektet

Läs också