A autorização de dados de saúde é o processo de obter o consentimento explícito do usuário para ler e escrever dados médicos e de fitness através das APIs do sistema das plataformas móveis. No iOS, a autorização é implementada através do HealthKit com as classes HKHealthStore e HKObjectType, enquanto no Android é feita através da Google Fit API com OAuth 2.0 e FitnessOptions. De acordo com a Documentação do Apple HealthKit, 2025, os dados de saúde são classificados como uma categoria de informação altamente confidencial. Precisão médica e conformidade regulatória são requisitos fundamentais ao trabalhar com esses dados.
Principais conclusões
A autorização de dados de saúde é um mecanismo que exige consentimento explícito e documentado do usuário antes de acessar suas métricas médicas e de fitness. Diferente das permissões padrão (contatos, calendário), os dados de saúde são regidos por regulamentações legais adicionais: HIPAA nos EUA, GDPR na Europa e a Lei Federal 152-FZ na Rússia.
No iOS, a autorização de saúde é implementada através do HealthKit: o usuário vê uma tela listando todos os tipos de dados que o aplicativo solicita e pode selecionar categorias específicas para conceder acesso. No Android, a Google Fit API é usada com autorização OAuth 2.0, onde um escopo separado é solicitado para cada tipo de dado.
De acordo com a App Annie (2025), os aplicativos de saúde e fitness são um dos segmentos de crescimento mais rápido do mercado móvel, com uma taxa de crescimento anual de 28%. Enquanto isso, 71% dos usuários negam acesso aos dados de saúde se o aplicativo não fornecer uma explicação clara do propósito da coleta.
A diferença principal da autorização de saúde em relação a outras permissões é a capacidade de conceder acesso parcial. Um usuário pode permitir a leitura de passos, mas proibir o acesso a dados de frequência cardíaca ou registros médicos.
HealthKit é o framework da Apple, apresentado no iOS 8, que fornece um repositório unificado e centralizado de dados de saúde. Os aplicativos não têm acesso direto ao HealthKit — eles solicitam autorização através do HKHealthStore, e o usuário decide quais tipos de dados fornecer. Todos os dados são criptografados no dispositivo e sincronizados através do iCloud com criptografia de ponta a ponta.
O processo de autorização começa com a criação de uma instância do HKHealthStore e a chamada ao método requestAuthorization(toShare:read:). O aplicativo passa dois conjuntos de tipos: tipos para leitura (HKObjectType que o aplicativo deseja ler) e tipos para escrita (HKSampleType que o aplicativo deseja salvar). O sistema exibe uma tela de consentimento onde o usuário ativa ou desativa cada tipo individualmente.
Uma característica importante: o HealthKit não mostra ao desenvolvedor quais tipos específicos o usuário permitiu na tela de consentimento. Após chamar requestAuthorization, é necessário verificar individualmente o acesso a cada tipo através de HKHealthStore.authorizationStatus(for:). De acordo com a WWDC Session 11108 (2024), a Apple recomenda verificar o status de autorização antes de cada operação de leitura ou escrita.
O HealthKit suporta centenas de tipos de dados divididos em categorias: quantidade (passos, frequência cardíaca, calorias), características (altura, peso, data de nascimento), registros clínicos (alergias, vacinações, resultados de exames), sintomas e ciclo menstrual. Cada tipo é representado por uma subclasse de HKObjectType: HKQuantityType para medições numéricas e HKCategoryType para dados categóricos.
Com o iOS 18, a Apple expandiu o HealthKit para suportar dados de instituições médicas através do FHIR (Fast Healthcare Interoperability Resources). Os aplicativos podem solicitar acesso a registros médicos estruturados se o usuário tiver conectado seu hospital ou clínica ao aplicativo Saúde.
Google Fit é uma plataforma para trabalhar com dados de fitness no Android que usa autorização OAuth 2.0. Ao contrário do HealthKit, o Google Fit não está incorporado ao sistema operacional a nível de sistema — é um serviço separado do Google Play Services que requer configuração através do Google Play Console e criação de credenciais OAuth 2.0.
Para acessar o Google Fit, o aplicativo deve registrar um ID de cliente OAuth 2.0 no Google Cloud Console. A autorização é solicitada através do GoogleSignInAccount e GoogleSignIn.requestPermissions(). O usuário vê a tela de consentimento padrão do Google com a lista de escopos solicitados: fitness.activity.read, fitness.body.read, fitness.nutrition.write e outros.
O Google Fit separa as permissões em leitura e escrita para cada tipo de dado. Um aplicativo pode solicitar acesso para ler a contagem de passos sem solicitar permissões de escrita. A partir da Google Fit API v2, todas as solicitações de autorização devem incluir uma descrição do propósito do uso dos dados — sem isso, a solicitação é rejeitada pela moderação do Google.
A classe FitnessOptions permite especificar declarativamente quais tipos de dados requerem acesso. Para cada tipo, o nível de acesso pode ser definido: ACCESS_READ, ACCESS_WRITE ou ambos. O conjunto de permissões é passado para GoogleSignin.requestPermissions() junto com a conta do usuário.
A lista de tipos disponíveis inclui: passos (DataType.TYPE_STEP_COUNT_DELTA), calorias (TYPE_CALORIES_EXPENDED), frequência cardíaca (TYPE_HEART_RATE_BPM), distância (TYPE_DISTANCE_DELTA), atividade (TYPE_ACTIVITY_SEGMENT) e sono (TYPE_SLEEP_SEGMENT). Cada tipo tem sua própria frequência de atualização e requisitos de permissão.
A implementação da solicitação de autorização de dados de saúde difere significativamente entre iOS e Android. Abaixo estão exemplos funcionais para HealthKit e Google Fit API.
Em Swift, a solicitação de autorização do HealthKit é realizada através do HKHealthStore especificando os tipos para leitura e escrita. O exemplo demonstra a solicitação de acesso aos dados de passos e frequência cardíaca.
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 não está disponível neste dispositivo")
}
healthStore.requestAuthorization(toShare: writeTypes, read: readTypes) { success, error in
if success {
// Verificando o status de cada tipo separadamente
let status = healthStore.authorizationStatus(for: readTypes.first!)
print("Autorização do HealthKit: \(status.rawValue)")
} else {
print("Erro de autorização do HealthKit: \(error?.localizedDescription ?? "desconhecida")")
}
}
No Android, a autorização do Google Fit é realizada através do GoogleSignIn e FitnessOptions. O exemplo demonstra a solicitação de acesso aos dados de passos e calorias.
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 {
// Permissões já concedidas — lendo dados
readGoogleFitData(account)
}
// Processando resultado da solicitação de permissões
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) }
}
}
Os dados de saúde pertencem a uma categoria especialmente sensível de dados pessoais. Os desenvolvedores de aplicativos que trabalham com HealthKit ou Google Fit devem cumprir os requisitos regulatórios na região de seus usuários.
Nos EUA, os dados de saúde são regulamentados pelo HIPAA (Health Insurance Portability and Accountability Act), que estabelece requisitos rigorosos para armazenamento, transmissão e processamento de informações médicas. Os aplicativos que trabalham com HealthKit podem estar em conformidade com o HIPAA se os dados forem transmitidos ao servidor de forma criptografada e o acesso for restrito.
Na União Europeia, os dados de saúde são considerados uma categoria especial de dados pessoais de acordo com o GDPR (artigo 9). O processamento desses dados requer consentimento explícito do usuário e, na maioria dos casos, uma avaliação de impacto à proteção de dados. A violação dos requisitos do GDPR acarreta multas de até 20 milhões de euros ou 4% do faturamento anual da empresa.
Na Rússia, a coleta de dados de saúde é regulamentada pela Lei Federal 152-FZ “Sobre Dados Pessoais”. Desde 2025, todos os aplicativos que processam dados médicos de cidadãos russos são obrigados a usar ferramentas de criptografia certificadas e armazenar dados em servidores localizados no território da Federação Russa, de acordo com os requisitos de Roskomnadzor.
Recomendação: antes de publicar um aplicativo que trabalhe com dados de saúde, consulte o departamento jurídico para verificar a conformidade com as regulamentações locais. A Apple e o Google reservam-se o direito de rejeitar um aplicativo se sua política de privacidade não atender aos requisitos.
Perguntas frequentes
HealthKit é um framework integrado do iOS com um repositório local criptografado de dados de saúde. Google Fit é um serviço em nuvem baseado no Google Play Services, usando OAuth 2.0 para autorização. HealthKit funciona offline, Google Fit requer conexão com a internet para sincronização.
Sim, em ambas as plataformas. No iOS, o usuário seleciona tipos de dados específicos (passos, frequência cardíaca, sono) na tela de consentimento do HealthKit. No Android, o usuário vê a lista de escopos do Google Fit e pode revogar permissões individuais através das configurações da conta Google.
HKHealthStore é a classe central do framework HealthKit no iOS. Ele gerencia a autorização, leitura e escrita de todos os dados de saúde. O aplicativo não pode acessar diretamente o repositório do HealthKit — todas as operações passam pelo HKHealthStore, garantindo uma interface de acesso unificada e a conformidade com os direitos de acesso do usuário.
O usuário pode revogar o acesso através das Configurações do Google — Gerenciar Conta — Segurança — Aplicativos de terceiros com acesso. Selecione o aplicativo e clique em “Remover acesso”. Também é possível revogar o acesso através do Google Play Console: Serviços conectados — Google Fit — Gerenciamento de aplicativos.
Se o aplicativo processar dados de saúde de usuários nos EUA e os transmitir para um servidor, a conformidade com HIPAA é obrigatória. Se todos os dados permanecerem localmente no dispositivo e não forem transmitidos a terceiros, o aplicativo pode não precisar de conformidade com HIPAA, mas a Apple recomenda seguir as melhores práticas de segurança independentemente da jurisdição.
Resumo
Vamos desenvolver um aplicativo móvel chave na mão
A IT Sectr cria aplicativos para iOS e Android para startups e empresas desde 2017. Nós vamos aconselhá-lo e propor a melhor solução.
Leia também