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-а је доступан преко endpoint-а 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 акредитиве са исправним 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. године. Саветоваћемо вас и предложити најбоље решење.

Разговарајте о пројекту

Прочитајте такође