Repolode
appeeky

appeeky/expo-healthkit

Módulo Expo/React Native que oferece uma única API JavaScript para Apple HealthKit e Android Health Connect.

Alternativa open source a:react-native-healthkit

Estrelas
108
Forks
8
Issues abertas
1
Último commit
há 11 dias

O que é?

@appeeky/expo-healthkit é um módulo nativo baseado na Expo Modules API que oferece aos apps Expo e React Native uma única API JavaScript para dados de saúde nas duas plataformas: HealthKit no iOS e Health Connect no Android. O código do app sempre usa identificadores de tipo da Apple; a camada nativa faz o mapeamento, então tipos mapeados, como passos, frequência cardíaca, sono, massa corporal e pressão arterial, não exigem ramificações específicas por plataforma.

As consultas abrangem amostras de quantidade e categoria, treinos, agregados estatísticos e estatísticas por intervalo, além de dados exclusivos do iOS, como eletrocardiogramas, anéis de atividade, registros clínicos FHIR e rotas GPS de treinos. É possível gravar amostras de quantidade e categoria, treinos e correlações, como pressão arterial, além de excluir dados. A sincronização incremental usa um token de âncora opaco, com uma primeira leitura paginada no Android, seguida por tokens de alterações do Health Connect.

Um config plugin configura os entitlements do HealthKit e as declarações de permissões do Health Connect, além de elevar o minSdk para 26. Requer Expo SDK 53 ou superior com um development build (Expo Go não é compatível), iOS 16.4 ou superior e Android 8 ou superior.

Recursos principais

  • 01Uma API nas duas plataformas: os mesmos métodos e identificadores de tipo da Apple funcionam no iOS e no Android, com o mapeamento feito nativamente.
  • 02Consultas de amostras de quantidade, amostras de categoria, treinos e estatísticas, incluindo intervalos via queryStatisticsCollection.
  • 03Consultas exclusivas do iOS para eletrocardiogramas, anéis de atividade, registros clínicos FHIR, audiogramas, rotas GPS de treinos, séries de batimentos cardíacos e correlações.
  • 04Sincronização incremental via queryAnchored, que retorna added, deleted, anchor e hasMore para recuperar dados paginados.
  • 05Gravação e exclusão: saveQuantitySample, saveCategorySample, saveWorkout, saveCorrelation e deleteObjects.
  • 06Entrega em segundo plano com observe, addUpdateListener e enableBackgroundDelivery; os tipos de observador salvos são registrados novamente quando o app é reaberto após ser encerrado.
  • 07O config plugin declara as strings de uso do HealthKit e as entradas uses-permission do Health Connect, além de elevar o minSdk para 26.
  • 08Códigos de erro específicos (ERR_HEALTHKIT_UNSUPPORTED, ERR_HEALTH_CONNECT_UNSUPPORTED, ERR_HEALTH_CONNECT_ANCHOR_EXPIRED) permitem ocultar elementos da interface sem verificar Platform.OS.

Casos de uso

  • Ler a contagem diária de passos, a frequência cardíaca ou o sono em um app de fitness.
  • Criar painéis de saúde para acompanhar tendências de peso, pressão arterial ou composição corporal.
  • Gravar no HealthKit ou Health Connect treinos e amostras registrados dentro do app.
  • Sincronizar o histórico de saúde de um usuário com seu próprio backend usando consultas incrementais com âncora.
  • Exibir dados exclusivos da Apple, como ECGs ou anéis de atividade, no iOS e ocultá-los no Android.

Início rápido

  1. 1

    Instale o pacote com Expo

    npx expo install @appeeky/expo-healthkit
  2. 2

    Adicione o config plugin ao app.json ou app.config.ts

  3. 3

    Reconstrua o código nativo e execute em um development build

    npx expo prebuild --clean

Antes de usar

  • As APIs de dados de saúde não podem ser executadas no Expo Go; é necessário um development build.
  • É necessário iOS 16.4 ou superior com a capability HealthKit ativada, ou Android 8 ou superior com Health Connect.
  • O pacote não declara uma licença nos metadados (NOASSERTION), então verifique a licença antes de usá-lo.
  • No iOS, a autorização de leitura é opaca, então os apps não conseguem saber se as leituras foram negadas.

Em coleções

Tópicos

#react-native#expo#healthkit#health-connect#ios#android#mobile#typescript#health-data#apple-healthkit

Perguntas frequentes

O que é expo-healthkit?
Módulo Expo/React Native que oferece uma única API JavaScript para Apple HealthKit e Android Health Connect. @appeeky/expo-healthkit é um módulo nativo baseado na Expo Modules API que oferece aos apps Expo e React Native uma única API JavaScript para dados de saúde nas duas plataformas: HealthKit no iOS e Health Connect no Android. O código do app sempre usa identificadores de tipo da Apple; a camada nativa faz o mapeamento, então tipos mapeados, como passos, frequência cardíaca, sono, massa corporal e pressão arterial, não exigem ramificações específicas por plataforma.
expo-healthkit é gratuito? Qual é a licença?
expo-healthkit é open source sob a licença Other. Confira os termos da licença antes de usá-lo em produtos comerciais.
expo-healthkit ainda é mantido?
Manutenção ativa. O último commit de expo-healthkit foi em 26 de out. de 2026.
Para que posso usar expo-healthkit?
Ler a contagem diária de passos, a frequência cardíaca ou o sono em um app de fitness. Criar painéis de saúde para acompanhar tendências de peso, pressão arterial ou composição corporal. Gravar no HealthKit ou Health Connect treinos e amostras registrados dentro do app. Sincronizar o histórico de saúde de um usuário com seu próprio backend usando consultas incrementais com âncora. Exibir dados exclusivos da Apple, como ECGs ou anéis de atividade, no iOS e ocultá-los no Android.
Como instalar expo-healthkit?
Instale o pacote com Expo: npx expo install @appeeky/expo-healthkit Adicione o config plugin ao app.json ou app.config.ts Reconstrua o código nativo e execute em um development build: npx expo prebuild --clean
Onde consigo expo-healthkit?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/appeeky/expo-healthkit

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados