Google Fit — что это, архитектура платформы и API

Автор: IT Sectr Опубликовано: 2026-03-25 Время чтения: 8 мин

Платформа Google Fit — экосистема Google для сбора, хранения и анализа данных о физической активности и здоровье пользователей Android. По данным Google Developers, 2025, платформа объединяет Fitness API, Sensors API и Sessions API в единую архитектуру, которая синхронизируется с Google Cloud и доступна через REST-запросы. Единый профиль здоровья позволяет пользователям контролировать, какие приложения имеют доступ к их данным о фитнесе и самочувствии.

Главное

  • Google Fit — платформа здоровья от Google, объединяющая данные о физической активности из разных приложений.
  • Fitness API — основной интерфейс для чтения и записи данных о шагах, калориях и пульсе.
  • Sensors API — позволяет получать данные в реальном времени с датчиков устройства.
  • Sessions API — управляет сессиями активности: тренировками, прогулками, пробежками.
  • Google Fit SDK доступен для Android и iOS, а также через REST API для веб-серверов.

Что такое Google Fit?

Google Fit — это платформа управления здоровьем, запущенная Google в 2014 году на конференции I/O. Платформа предоставляет единое API для чтения и записи данных о физической активности, позволяя приложениям обмениваться информацией через центральное хранилище в облаке Google.

В отличие от проприетарных решений, Google Fit работает на операционной системе Android и iOS через REST API. Пользователь может подключить фитнес-браслеты, умные часы и приложения для отслеживания активности, а Google Fit агрегирует все данные в единый профиль здоровья в Google Cloud.

По данным Google I/O 2024, платформа используется в более 5000 приложениях по всему миру, а количество активных пользователей превышает 100 миллионов. Платформа интегрирована с Wear OS и поддерживает все популярные фитнес-трекеры через сторонние приложения.

Архитектура Google Fit

Архитектура Google Fit построена на трёх уровнях: клиентский SDK, облачное хранилище Google Fitness Store и REST API для серверной интеграции. Клиентский SDK доступен для Android (Kotlin, Java) и iOS (Swift, Objective-C), а также есть веб-клиент через JavaScript.

Данные организованы в виде источников (DataSource) и точек данных (DataPoint). Каждый источник представляет устройство или приложение, а каждая точка данных — одно измерение с меткой времени. Группы точек данных объединяются в сессии — непрерывные периоды активности с типом и длительностью.

kotlin
val fitnessClient = Fitness.getClient(activity, GoogleSignIn
    .getAccountForExtension(activity, fitnessOptions))

val stepType = DataType.TYPE_STEP_COUNT_DELTA

val request = DataReadRequest.Builder()
    .read(stepType)
    .setTimeRange(
        startTime, endTime, TimeUnit.MILLISECONDS
    )
    .build()

fitnessClient.readData(request)
    .addOnSuccessListener { response ->
        for (bucket in response.buckets) {
            println(bucket.dataSets)
        }
    }

Как работает Google Fit

Google Fit использует модель синхронизации через Google Cloud с поддержкой как онлайн, так и офлайн-режимов. Приложение записывает данные локально, а Google Fit SDK автоматически синхронизирует их с облачным хранилищем при наличии интернет-соединения. Конфликты разрешаются по принципу последней записи.

Каждый тип данных имеет стандартизированный формат: шаги — TYPE_STEP_COUNT_DELTA, калории — TYPE_CALORIES_EXPENDED, пульс — TYPE_HEART_RATE_BPM, расстояние — TYPE_DISTANCE_DELTA. Для кастомных типов можно создавать пользовательские DataType через консоль Google APIs с уникальным пространством имён.

Платформа поддерживает два режима записи: активный — приложение явно вызывает HistoryClient.insertData(), и пассивный — через RecordingClient, который подписывается на сбор данных в фоне. Пассивный режим удобен для фитнес-приложений: пользователь запускает приложение один раз, а Google Fit автоматически собирает шаги, калории и дистанцию при свёрнутом приложении без постоянной работы процессора.

По данным Google, платформа обрабатывает более 2 миллиардов точек данных ежедневно. Средняя задержка синхронизации составляет 5–10 секунд при активном соединении, а в фоновом режиме синхронизация происходит каждые 30 минут для экономии заряда батареи.

Согласие пользователя и безопасность

Google Fit использует OAuth 2.0 для авторизации с областями доступа fitness.activity.read, fitness.activity.write, fitness.body.read и fitness.body.write. Приложение запрашивает только необходимые области, а пользователь подтверждает доступ через стандартный диалог Google Sign-In с выбором аккаунта.

Пользователь может в любой момент отозвать доступ через Google Account Permissions или приложение Google Fit. Google строго запрещает передачу данных о здоровье третьим лицам без явного согласия, а также использование данных для рекламных целей в соответствии с политикой Restricted Scopes.

API Google Fit

Google Fit предоставляет три основных API: Fitness API для чтения и записи исторических данных, Sensors API для потоковой передачи данных с датчиков в реальном времени и Sessions API для управления сессиями активности. Каждый API доступен как через Android SDK, так и через REST-запросы.

Fitness API — основной API для работы с данными. Он поддерживает пакетные операции: запись до 1000 точек данных за один вызов, чтение с фильтрацией по временному диапазону, типу данных и источнику. Для агрегации данных используется DataSet с группировкой по выбранным метрикам.

Sensors API позволяет подписаться на данные датчиков в реальном времени — шаги, пульс, ускорение. Данные поступают через SensorEventListener с частотой, определяемой типом датчика и настройками приложения.

Помимо трёх основных API, Google Fit предоставляет Recording API для автоматического сбора данных без необходимости держать приложение активным. Этот API особенно ценен для Wear OS: умные часы могут собирать данные о пульсе и активности, а приложение на телефоне синхронизируется с ними при подключении. Recording API использует Google Fit Background Services, которые оптимизированы для минимального энергопотребления — до 2% заряда в день при пассивном сборе шагов.

REST API Google Fit доступен через эндпоинт fitness.googleapis.com. REST API позволяет серверным приложениям читать и записывать данные от имени пользователя после OAuth-авторизации. Это полезно для веб-панелей аналитики, корпоративных фитнес-программ и медицинских систем, где требуется централизованное хранение данных о здоровье сотрудников или пациентов.

kotlin
val recordingClient = Fitness
    .getRecordingClient(activity, googleSignInAccount)

recordingClient.subscribe(DataType.TYPE_STEP_COUNT_DELTA)
    .addOnSuccessListener {
        println("Подписка активна")
    }

// Получение данных истории
val historyClient = Fitness
    .getHistoryClient(activity, googleSignInAccount)

val endTime = Calendar.getInstance().timeInMillis
val startTime = endTime - TimeUnit
    .DAYS.toMillis(7)

historyClient.readDailyTotal(DataType.TYPE_STEP_COUNT_DELTA)
    .addOnSuccessListener { total ->
        println("Шагов за сегодня: $total")
    }

Интеграция Google Fit в приложение

Интеграция Google Fit начинается с подключения зависимостей Google Fit SDK через build.gradle: com.google.android.gms:play-services-fitness. После этого необходимо настроить консоль Google APIs — создать проект, включить Fitness API и добавить OAuth 2.0 credentials с правильными SHA-1 отпечатками.

Процесс интеграции включает: инициализацию GoogleSignIn с нужными скоупами, создание FitnessClient через Fitness.getClient(), запрос авторизации у пользователя и выполнение операций чтения или записи данных. Для фоновой записи используется RecordingClient, который автоматически собирает данные даже когда приложение свёрнуто. При этом Google Fit автоматически управляет частотой сбора данных в зависимости от уровня заряда батареи и активности пользователя.

По данным Google, приложения с интеграцией Google Fit показывают на 35% более высокий уровень удержания пользователей. Ключевые категории приложений — фитнес-трекеры, приложения для бега, велоспорта, йоги и контроля веса.

Важно учитывать требования к конфиденциальности: Google Fit использует Restricted Scopes — специальные области доступа, требующие отдельной верификации приложения через OAuth Verification. Разработчик должен описать, какие данные собираются, как они используются и как долго хранятся. Google также требует наличие политики конфиденциальности и соответствие программе API Services Terms of Service.

Практический пример записи

Для записи данных создаётся DataSource с указанием типа, устройства и приложения. Затем формируется DataPoint с меткой времени и значениями. Множество DataPoint объединяются в DataSet, который передаётся в HistoryClient.write().

kotlin
val dataSource = DataSource.Builder()
    .setAppPackageName(activity)
    .setDataType(DataType.TYPE_STEP_COUNT_DELTA)
    .setType(DataSource.TYPE_RAW)
    .build()

val stepCount = DataPoint.builder(dataSource)
    .setTimestamp(now, TimeUnit.MILLISECONDS)
    .setField(Field.FIELD_STEPS, 500)
    .build()

val dataSet = DataSet.builder(dataSource)
    .add(stepCount)
    .build()

historyClient.insertData(dataSet)
    .addOnSuccessListener {
        println("Данные сохранены")
    }

Часто задаваемые вопросы

Какие данные поддерживает Google Fit?

Google Fit поддерживает более 50 типов данных, включая шаги, калории, пульс, расстояние, скорость, сон, вес, рост, артериальное давление, уровень глюкозы и температуру тела. Полный список доступен в документации DataType для Android и REST API.

Нужен ли аккаунт Google для Google Fit?

Да, для работы с Google Fit требуется аккаунт Google. Пользователь авторизуется через Google Sign-In, после чего приложение получает доступ к Fitness API с указанными скоупами. Без аккаунта Google платформа недоступна, так как все данные хранятся в Google Cloud.

Можно ли экспортировать данные из Google Fit?

Да, данные Google Fit можно экспортировать через Google Takeout — сервис позволяет скачать все данные платформы в форматах JSON и CSV. Разработчики могут программно экспортировать данные через REST API с соответствующим скоупом доступа.

Чем Google Fit отличается от HealthKit?

Google Fit — кроссплатформенная облачная платформа, работающая на Android, iOS и через REST API, в то время как HealthKit привязан к экосистеме Apple iOS и хранит данные локально на устройстве. Google Fit использует OAuth 2.0 для авторизации, а HealthKit — системные разрешения iOS.

Какие лимиты у Google Fit API?

Google Fit API имеет следующие лимиты: 1000 запросов на 100 секунд на проект, 1000 точек данных за один запрос записи, максимальный временной диапазон чтения — 365 дней за один запрос. Для увеличения лимитов необходимо запросить квоту через Google Cloud Console.

Итоги

  • Google Fit — кроссплатформенная облачная платформа здоровья от Google, запущенная в 2014 году.
  • Платформа предоставляет три API: Fitness, Sensors и Sessions для разных сценариев работы.
  • Около 5000 приложений используют Google Fit, а количество пользователей превышает 100 миллионов.
  • OAuth 2.0 обеспечивает безопасную авторизацию с гранулярными областями доступа.
  • Google Cloud гарантирует синхронизацию в реальном времени и доступ через REST API.
  • Интеграция требует настройки Google APIs Console и подключения SDK через build.gradle.
  • Recording API собирает данные в фоновом режиме с минимальным расходом батареи до 2% в день.

Мы разработаем мобильное приложение под ключ

IT Sectr создаёт приложения для iOS и Android для стартапов и бизнеса с 2017 года. Мы проконсультируем вас и предложим наилучшее решение.

Обсудить проект

Читайте также