Фреймворк с открытым исходным кодом для создания универсальных нативных приложений на React, работающих на Android, iOS и в вебе.
appeeky/expo-healthkit
Модуль Expo/React Native, который предоставляет единый JavaScript API для Apple HealthKit и Android Health Connect.
Open source альтернатива:react-native-healthkit
- Звёзды
- 108
- Форки
- 8
- Открытые issues
- 1
- Последний коммит
- 11 дней назад
Что это?
@appeeky/expo-healthkit — нативный модуль на базе Expo Modules API, который предоставляет приложениям Expo и React Native единый JavaScript API для работы с данными о здоровье на обеих платформах: HealthKit на iOS и Health Connect на Android. Код приложения всегда передаёт идентификаторы типов Apple, а нативный слой преобразует их, поэтому для сопоставленных типов — например, шагов, пульса, сна, массы тела и артериального давления — не нужны отдельные ветки кода для каждой платформы.
Запросы охватывают количественные и категориальные образцы данных, тренировки, статистические агрегаты и статистику по интервалам, а также данные только для iOS: электрокардиограммы, кольца активности, клинические записи FHIR и GPS-маршруты тренировок. Можно сохранять количественные и категориальные образцы, тренировки и корреляции, например данные об артериальном давлении, а также удалять данные. Инкрементальная синхронизация использует непрозрачный токен-якорь: на Android сначала выполняется постраничное чтение, а затем используются токены изменений Health Connect.
Плагин конфигурации добавляет entitlements для HealthKit и объявления разрешений Health Connect, а также устанавливает minSdk 26. Для работы необходимы Expo SDK 53 или новее с development build (Expo Go не поддерживается), iOS 16.4 или новее и Android 8 или новее.
Ключевые возможности
- 01Единый API для обеих платформ: на iOS и Android используются одни и те же методы и идентификаторы типов Apple, а преобразование выполняется на нативном уровне.
- 02Запросы количественных и категориальных образцов, тренировок и статистики, включая интервальные группы через queryStatisticsCollection.
- 03Запросы данных только для iOS: электрокардиограммы, кольца активности, клинические записи FHIR, аудиограммы, GPS-маршруты тренировок, ряды сердечных сокращений и корреляции.
- 04Инкрементальная синхронизация через queryAnchored: метод возвращает added, deleted, anchor и hasMore для постраничной загрузки изменений.
- 05Сохранение и удаление данных: saveQuantitySample, saveCategorySample, saveWorkout, saveCorrelation и deleteObjects.
- 06Фоновая доставка данных через observe, addUpdateListener и enableBackgroundDelivery; сохранённые типы наблюдения регистрируются повторно, если приложение было закрыто и запущено снова.
- 07Плагин конфигурации добавляет строки с описанием использования HealthKit и записи uses-permission для Health Connect, а также устанавливает minSdk 26.
- 08Отдельные коды ошибок (ERR_HEALTHKIT_UNSUPPORTED, ERR_HEALTH_CONNECT_UNSUPPORTED, ERR_HEALTH_CONNECT_ANCHOR_EXPIRED) позволяют скрывать неподдерживаемые элементы интерфейса без проверок Platform.OS.
Сценарии использования
- Получение дневного количества шагов, пульса или данных о сне в фитнес-приложении.
- Создание дашбордов здоровья, чтобы отслеживать изменения веса, артериального давления или состава тела.
- Запись тренировок и образцов данных, собранных внутри приложения, в HealthKit или Health Connect.
- Синхронизация истории здоровья пользователя с собственным бэкендом с помощью инкрементальных запросов с якорями.
- Отображение данных только Apple — например, ЭКГ или колец активности — на iOS и их скрытие на Android.
Быстрый старт
- 1
Установите пакет с помощью Expo
npx expo install @appeeky/expo-healthkit - 2
Добавьте config plugin в app.json или app.config.ts
- 3
Пересоберите нативный код и запустите приложение в development build
npx expo prebuild --clean
Что важно знать
- API данных о здоровье не работают в Expo Go — требуется development build.
- Требуется iOS 16.4 или новее с включённой capability HealthKit либо Android 8 или новее с Health Connect.
- В метаданных пакета лицензия не указана (NOASSERTION), поэтому проверьте её перед использованием.
- В iOS статус разрешения на чтение непрозрачен, поэтому приложения не могут определить, были ли запросы на чтение отклонены.
В подборках
Темы
Частые вопросы
- Что такое expo-healthkit?
- Модуль Expo/React Native, который предоставляет единый JavaScript API для Apple HealthKit и Android Health Connect. @appeeky/expo-healthkit — нативный модуль на базе Expo Modules API, который предоставляет приложениям Expo и React Native единый JavaScript API для работы с данными о здоровье на обеих платформах: HealthKit на iOS и Health Connect на Android. Код приложения всегда передаёт идентификаторы типов Apple, а нативный слой преобразует их, поэтому для сопоставленных типов — например, шагов, пульса, сна, массы тела и артериального давления — не нужны отдельные ветки кода для каждой платформы.
- expo-healthkit можно использовать бесплатно? Какая у него лицензия?
- expo-healthkit распространяется с открытым исходным кодом под лицензией Other. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- expo-healthkit всё ещё поддерживается?
- Активно поддерживается. Последний коммит в expo-healthkit — 26 окт. 2026 г..
- Для чего можно использовать expo-healthkit?
- Получение дневного количества шагов, пульса или данных о сне в фитнес-приложении. Создание дашбордов здоровья, чтобы отслеживать изменения веса, артериального давления или состава тела. Запись тренировок и образцов данных, собранных внутри приложения, в HealthKit или Health Connect. Синхронизация истории здоровья пользователя с собственным бэкендом с помощью инкрементальных запросов с якорями. Отображение данных только Apple — например, ЭКГ или колец активности — на iOS и их скрытие на Android.
- Как установить expo-healthkit?
- Установите пакет с помощью Expo: npx expo install @appeeky/expo-healthkit Добавьте config plugin в app.json или app.config.ts Пересоберите нативный код и запустите приложение в development build: npx expo prebuild --clean
- Где скачать expo-healthkit?
- Исходный код и инструкции по установке — на GitHub: https://github.com/appeeky/expo-healthkit
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Официальные AI-агентские skills от команды Expo помогают агентам писать код, собирать, развёртывать, обновлять и отлаживать приложения Expo.
Lottie- и dotLottie-заставки для React Native, которые запускаются нативно вместе с приложением, ещё до загрузки JavaScript-бандла.
Мобильное приложение Cherry Studio для iOS и Android: общайтесь с разными AI-моделями, запускайте агентов, подключайте инструменты MCP и генерируйте изображения.
Неофициальный клиент Bangumi на React Native для Android и iOS, изначально разработанный для мобильных устройств.
Фреймворк для создания нативных приложений для Android и iOS на React: интерфейс на JavaScript отображается с помощью компонентов платформы.