Het Google Fit-platform — het ecosysteem van Google voor het verzamelen, opslaan en analyseren van gegevens over fysieke activiteit en gezondheid van Android-gebruikers. Volgens Google Developers, 2025 combineert het platform Fitness API, Sensors API en Sessions API in één architectuur die synchroniseert met Google Cloud en toegankelijk is via REST-verzoeken. Uniek gezondheidsprofiel stelt gebruikers in staat te controleren welke apps toegang hebben tot hun fitness- en welzijnsgegevens.
Belangrijkste
Google Fit is een gezondheidsbeheerplatform dat door Google in 2014 op de I/O-conferentie is gelanceerd. Het platform biedt een uniforme API voor het lezen en schrijven van gegevens over fysieke activiteit, waardoor apps informatie kunnen uitwisselen via een centrale opslag in de Google-cloud.
In tegenstelling tot propriëtaire oplossingen werkt Google Fit op het Android-besturingssysteem en iOS via REST API. De gebruiker kan fitnessarmbanden, smartwatches en activiteitstracking-apps aansluiten, en Google Fit aggregeert alle gegevens in één gezondheidsprofiel in Google Cloud.
Volgens Google I/O 2024 wordt het platform gebruikt in meer dan 5000 apps wereldwijd en bedraagt het aantal actieve gebruikers meer dan 100 miljoen. Het platform is geïntegreerd met Wear OS en ondersteunt alle populaire fitnesstrackers via apps van derden.
De architectuur van Google Fit is gebouwd op drie lagen: client-SDK, cloudopslag Google Fitness Store en REST API voor serverintegratie. De client-SDK is beschikbaar voor Android (Kotlin, Java) en iOS (Swift, Objective-C), en er is ook een webclient via JavaScript.
Gegevens zijn georganiseerd in de vorm van bronnen (DataSource) en datapunten (DataPoint). Elke bron vertegenwoordigt een apparaat of app, en elk datapunt vertegenwoordigt één meting met een tijdstempel. Groepen datapunten worden samengevoegd in sessies — aaneengesloten activiteitsperioden met type en duur.
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 gebruikt een synchronisatiemodel via Google Cloud met ondersteuning voor zowel online als offline modus. De app schrijft gegevens lokaal en de Google Fit SDK synchroniseert ze automatisch met de cloudopslag bij een internetverbinding. Conflicten worden opgelost volgens het principe van laatste schrijfactie.
Elk gegevenstype heeft een gestandaardiseerd formaat: stappen — TYPE_STEP_COUNT_DELTA, calorieën — TYPE_CALORIES_EXPENDED, hartslag — TYPE_HEART_RATE_BPM, afstand — TYPE_DISTANCE_DELTA. Voor aangepaste typen kunnen eigen DataTypes worden gemaakt via de Google APIs-console met een unieke naamruimte.
Het platform ondersteunt twee schrijfmodi: actief — de app roept expliciet HistoryClient.insertData() aan, en passief — via RecordingClient, die zich abonneert op gegevensverzameling op de achtergrond. De passieve modus is handig voor fitness-apps: de gebruiker start de app eenmalig en Google Fit verzamelt automatisch stappen, calorieën en afstand wanneer de app is geminimaliseerd, zonder continu processorgebruik.
Volgens Google verwerkt het platform dagelijks meer dan 2 miljard datapunten. De gemiddelde synchronisatievertraging bedraagt 5–10 seconden bij actieve verbinding en in de achtergrondmodus vindt synchronisatie elke 30 minuten plaats om batterij te sparen.
Google Fit gebruikt OAuth 2.0 voor autorisatie met de toegangsbereiken fitness.activity.read, fitness.activity.write, fitness.body.read en fitness.body.write. De app vraagt alleen de noodzakelijke bereiken aan en de gebruiker bevestigt de toegang via de standaard Google Sign-In-dialoog met accountselectie.
De gebruiker kan te allen tijde de toegang intrekken via Google Account Permissions of de Google Fit-app. Google verbiedt streng het delen van gezondheidsgegevens met derden zonder expliciete toestemming, evenals het gebruik van gegevens voor reclamedoeleinden in overeenstemming met het Restricted Scopes-beleid.
Google Fit biedt drie hoofd-API’s: Fitness API voor het lezen en schrijven van historische gegevens, Sensors API voor real-time gegevensstromen van sensoren en Sessions API voor het beheren van activiteitensessies. Elke API is zowel via Android SDK als via REST-verzoeken beschikbaar.
Fitness API — de belangrijkste API voor het werken met gegevens. Het ondersteunt batchbewerkingen: schrijven van maximaal 1000 datapunten in één aanroep, lezen met filtering op tijdsbereik, gegevenstype en bron. Voor aggregatie wordt DataSet gebruikt met groepering op geselecteerde metrieken.
Sensors API maakt abonneren op real-time sensorgegevens mogelijk — stappen, hartslag, versnelling. Gegevens worden geleverd via SensorEventListener met een frequentie bepaald door het sensortype en de app-instellingen.
Naast de drie hoofd-API’s biedt Google Fit Recording API voor automatische gegevensverzameling zonder dat de app actief hoeft te blijven. Deze API is vooral waardevol voor Wear OS: smartwatches kunnen gegevens over hartslag en activiteit verzamelen en de app op de telefoon synchroniseert ermee bij verbinding. Recording API gebruikt Google Fit Background Services, geoptimaliseerd voor minimaal energieverbruik — tot 2% batterij per dag bij passieve stapverzameling.
REST API van Google Fit is toegankelijk via het endpoint fitness.googleapis.com. REST API stelt server-apps in staat gegevens te lezen en schrijven namens de gebruiker na OAuth-autorisatie. Dit is nuttig voor webanalytische dashboards, bedrijfsfitnessprogramma’s en medische systemen waar gecentraliseerde opslag van gezondheidsgegevens van werknemers of patiënten vereist is.
val recordingClient = Fitness
.getRecordingClient(activity, googleSignInAccount)
recordingClient.subscribe(DataType.TYPE_STEP_COUNT_DELTA)
.addOnSuccessListener {
println("Abonnement actief")
}
// Geschiedenisgegevens ophalen
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("Stappen vandaag: $total")
}
Integratie van Google Fit begint met het toevoegen van afhankelijkheden van Google Fit SDK via build.gradle: com.google.android.gms:play-services-fitness. Vervolgens moet de Google APIs-console worden geconfigureerd — een project aanmaken, Fitness API inschakelen en OAuth 2.0-referenties met correcte SHA-1-vingerafdrukken toevoegen.
Het integratieproces omvat: initialisatie van GoogleSignIn met de vereiste bereiken, aanmaken van FitnessClient via Fitness.getClient(), autorisatie aanvragen bij de gebruiker en het uitvoeren van lees- of schrijfbewerkingen. Voor achtergrondschrijven wordt RecordingClient gebruikt, die automatisch gegevens verzamelt zelfs wanneer de app is geminimaliseerd. Google Fit beheert automatisch de frequentie van gegevensverzameling op basis van het batterijniveau en gebruikersactiviteit.
Volgens Google vertonen apps met Google Fit-integratie een 35% hogere gebruikersretentie. De belangrijkste app-categorieën zijn fitnesstrackers, hardloopapps, fietsapps, yoga- en gewichtsbeheersingsapps.
Het is belangrijk rekening te houden met privacyvereisten: Google Fit gebruikt Restricted Scopes — speciale toegangsbereiken die afzonderlijke verificatie van de app vereisen via OAuth Verification. De ontwikkelaar moet beschrijven welke gegevens worden verzameld, hoe ze worden gebruikt en hoe lang ze worden bewaard. Google vereist ook een privacybeleid en naleving van het API Services Terms of Service-programma.
Voor het schrijven van gegevens wordt een DataSource aangemaakt met specificatie van type, apparaat en app. Vervolgens wordt een DataPoint gevormd met een tijdstempel en waarden. Meerdere DataPoints worden samengevoegd in een DataSet, die wordt doorgegeven aan HistoryClient.write().
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("Gegevens opgeslagen")
}
Veelgestelde vragen
Google Fit ondersteunt meer dan 50 gegevenstypen, waaronder stappen, calorieën, hartslag, afstand, snelheid, slaap, gewicht, lengte, bloeddruk, glucoseniveau en lichaamstemperatuur. De volledige lijst is beschikbaar in de DataType-documentatie voor Android en REST API.
Ja, voor het gebruik van Google Fit is een Google-account vereist. De gebruiker autoriseert via Google Sign-In, waarna de app toegang krijgt tot de Fitness API met de opgegeven bereiken. Zonder Google-account is het platform niet beschikbaar omdat alle gegevens in Google Cloud worden opgeslagen.
Ja, Google Fit-gegevens kunnen worden geëxporteerd via Google Takeout — de service maakt het mogelijk alle platformgegevens te downloaden in JSON- en CSV-formaten. Ontwikkelaars kunnen gegevens programmatisch exporteren via REST API met het juiste toegangsbereik.
Google Fit is een cross-platform cloudplatform dat werkt op Android, iOS en via REST API, terwijl HealthKit is gebonden aan het Apple iOS-ecosysteem en gegevens lokaal op het apparaat opslaat. Google Fit gebruikt OAuth 2.0 voor autorisatie, HealthKit gebruikt iOS-systeemrechten.
Google Fit API heeft de volgende limieten: 1000 verzoeken per 100 seconden per project, 1000 datapunten per schrijfverzoek, maximaal leesbereik van 365 dagen per verzoek. Om limieten te verhogen moet een quotum worden aangevraagd via Google Cloud Console.
Samenvatting
We ontwikkelen een mobiele applicatie turnkey
IT Sectr creëert sinds 2017 iOS- en Android-applicaties voor startups en bedrijven. We adviseren u en stellen de beste oplossing voor.
Lees ook