Interfejsy Google Fit API, w tym interfejs Google Fit REST API, po 30 czerwca 2025 r. nie będą już dostępne. Od 1 maja 2024 roku deweloperzy nie mogą rejestrować się w celu korzystania z tych interfejsów API.
Instrukcje dotyczące interfejsu API lub platformy, na które należy przejść, znajdziesz w przewodniku po migracji do Health Connect. Porównanie Health Connect z interfejsami API Google Fit i internetowymi interfejsami API Fitbita znajdziesz w porównaniu Health Connect.
W przypadku danych, które mogą być rejestrowane w sposób ciągły (z wieloma punktami danych w wybranym okresie), platforma Google Fit może agregować te dane i zwracać obliczone wyniki. Może to być średnia wartość lub podsumowanie/suma. Odczytując dane zbiorcze, możesz zaoszczędzić czas potrzebny na wykonywanie tych obliczeń i z łatwością wyświetlać użytkownikom aplikacji przydatne podsumowania i średnie.
Aby odczytać dane zbiorcze, musisz wybrać typ danych, zakres czasu i rodzaj danych, według których chcesz „zasobniki” (lub według nich grupować). Dane możesz grupować na kilka różnych sposobów:
Przedział czasu
Zagreguj dane zbiorcze według godziny lub dnia. Możesz na przykład zobaczyć kroki lub kalorie spalone w ciągu dnia.
Rodzaj aktywności
Zbiorcze dane zbiorcze według typu aktywności. Na przykład w przypadku danych na temat snu z całego tygodnia przypisano osobną grupę dla każdego rodzaju aktywności (płytkiej, głębokiej i REM).
Segment aktywności
Grupuj dane zbiorcze według segmentów aktywności w danym okresie. Jeśli np. użytkownik pobiegł między 9:00 a 10:00, ale biegał przez pierwsze 20 minut, siedział przez 10 minut, spacerował przez 15 minut i biegał przez 15 minut, uznajemy to za 4 segmenty aktywności i zwracane są 4 zasobniki.
Sesja
Wykorzystaj ramy czasowe sesji do zbierania danych zbiorczych. Jeśli np. użytkownik wykona 2 biegi zarejestrowane jako 2 sesje (poranny bieg i popołudniowy bieg), możesz podzielić dane według sesji, aby poznać średnią liczbę kroków lub średnią prędkość każdego biegu.
Aktywność
Używaj tych typów danych do odczytywania zbiorczych danych o zdrowiu i samopoczuciu.
Podsumowanie aktywności
Łączny czas i liczba segmentów danej aktywności w danym okresie.
Każdy punkt danych przedstawia podsumowanie wszystkich segmentów aktywności określonego typu aktywności w określonym przedziale czasu.
Typ aktywności użytkownika. Listę typów aktywności znajdziesz tutaj.
duration (int–milisekundy)
Łączny czas spędzony na aktywności we wszystkich segmentach w wybranym okresie.
liczba segmentów (int – liczba)
Liczba różnych segmentów aktywności w przedziale czasu tego punktu danych.
Android
funkcji
com.google.activity.summary
Obiekt typu danych
AGGREGATE_ACTIVITY_SUMMARY
Pola (format – jednostki)
FIELD_ACTIVITY (int – wyliczenie)
Typ aktywności użytkownika. Listę typów aktywności znajdziesz tutaj.
FIELD_DURATION (int–milisekundy)
Łączny czas spędzony na aktywności we wszystkich segmentach w wybranym okresie.
FIELD_NUM_SEGMENTS (liczba – int)
Liczba różnych segmentów aktywności w przedziale czasu tego punktu danych.
Podsumowanie podstawowej przemiany materii (BMR)
Każdy punkt danych reprezentuje średnią, maksymalną i minimalną podstawową przemianę materii w wybranym okresie (w kilokaloriach na dzień). Jest to przydatne, jeśli użytkownik przybrał lub stracił wagę i w rezultacie zmienił się jego BMR.
Średnia wartość PPM (podstawowej przemiany materii) użytkownika w danym okresie.
max (float–kcal na dzień)
Maksymalna wartość BBMR użytkownika w danym okresie.
min (float–kcal na dzień)
Minimalna wartość BMR użytkownika w danym okresie.
Android
funkcji
com.google.calories.bmr.summary
Obiekt typu danych
AGGREGATE_BASAL_METABOLIC_RATE_SUMMARY
Pola (format – jednostki)
FIELD_AVERAGE (float – kcal na dzień)
Średnia wartość PPM (podstawowej przemiany materii) użytkownika w danym okresie.
FIELD_MAX (float – kcal dziennie)
Maksymalna wartość BBMR użytkownika w danym okresie.
FIELD_MIN (float – kcal dziennie)
Minimalna wartość BMR użytkownika w danym okresie.
Podsumowanie spalonych kalorii
Suma lub łączna liczba spalonych kalorii (w kilokalorii) w danym okresie.
Ten typ danych i jego pola są takie same jak w przypadku typu danych błyskawicznych.
Podsumowanie punktów kardio
Każdy punkt danych odpowiada liczbie punktów kardio w danym okresie.
Średnia moc wygenerowana przez użytkownika w danym okresie (w watach).
maks (float – waty)
Maksymalna moc wygenerowana przez użytkownika w danym okresie (w watach).
min (float–waty)
Minimalna moc wygenerowana przez użytkownika w danym okresie (w watach).
Android
funkcji
com.google.power.summary
Obiekt typu danych
AGGREGATE_POWER_SUMMARY
Pola (format – jednostki)
FIELD_AVERAGE (float – waty)
Średnia moc wygenerowana przez użytkownika w danym okresie (w watach).
FIELD_MAX (float–waty)
Maksymalna moc wygenerowana przez użytkownika w danym okresie (w watach).
FIELD_MIN (float – waty)
Minimalna moc wygenerowana przez użytkownika w danym okresie (w watach).
Podsumowanie delta liczby kroków
Każdy punkt danych reprezentuje łączną liczbę kroków w wybranym okresie.
Ten typ danych i jego pola są takie same jak w przypadku typu danych błyskawicznych.
Treść
Używaj tych typów danych do odczytywania zagregowanych danych o pomiarach ciała.
Podsumowanie procentowej tkanki tłuszczowej
Każdy punkt danych reprezentuje średni, maksymalny i minimalny procent tkanki tłuszczowej użytkownika w wybranym okresie.
REST
funkcji
com.google.body.fat.percentage.summary
Zakresy uprawnień OAuth
https://www.googleapis.com/auth/fitness.body.read
Pola (format – jednostki)
średnio (float–procent)
Średni procent łącznej masy ciała użytkownika stanowiący tkankę tłuszczową w danym okresie.
max (float–procent)
Maksymalny procent łącznej masy ciała użytkownika stanowiący tkankę tłuszczową w danym okresie.
min (float–procent)
Minimalny procent łącznej masy ciała użytkownika stanowiący tkankę tłuszczową w danym okresie.
Android
funkcji
com.google.body.fat.percentage.summary
Obiekt typu danych
AGGREGATE_BODY_FAT_PERCENTAGE_SUMMARY
Pola (format – jednostki)
FIELD_AVERAGE (float–procent)
Średni procent łącznej masy ciała użytkownika stanowiący tkankę tłuszczową w danym okresie.
FIELD_MAX (float–procent)
Maksymalny procent łącznej masy ciała użytkownika stanowiący tkankę tłuszczową w danym okresie.
FIELD_MIN (float–procent)
Minimalny procent łącznej masy ciała użytkownika stanowiący tkankę tłuszczową w danym okresie.
Podsumowanie tętna
Każdy punkt danych reprezentuje średnie, maksymalne i minimalne tętno użytkownika w danym okresie (uderzenia na minutę).
REST
funkcji
com.google.heart_rate.summary
Zakresy uprawnień OAuth
https://www.googleapis.com/auth/fitness.body.read
Pola (format – jednostki)
średnio (float–bpm)
Średnie tętno użytkownika w danym okresie (w uderzeniach na minutę).
maks (float–uderz./min)
Maksymalne tętno użytkownika w danym okresie (w uderzeniach na minutę).
min (float–bpm)
Minimalne tętno użytkownika w danym okresie (uderzenia na minutę).
Android
funkcji
com.google.heart_rate.summary
Obiekt typu danych
AGGREGATE_HEART_RATE_SUMMARY
Pola (format – jednostki)
FIELD_AVERAGE (float–bpm)
Średnie tętno użytkownika w danym okresie (w uderzeniach na minutę).
FIELD_MAX (float–uderz./min)
Maksymalne tętno użytkownika w danym okresie (w uderzeniach na minutę).
FIELD_MIN (float–uderz./min)
Minimalne tętno użytkownika w danym okresie (uderzenia na minutę).
Podsumowanie wzrostu
Każdy punkt danych reprezentuje średnią, maksymalną i minimalną wysokość użytkownika w wybranym okresie (w metrach).
REST
funkcji
com.google.height.summary
Zakresy uprawnień OAuth
https://www.googleapis.com/auth/fitness.body.read
Pola (format – jednostki)
średnio (float – metry)
Średnia wysokość użytkownika w danym okresie (w metrach).
max (float – metry)
Maksymalna wysokość użytkownika w danym okresie (w metrach).
min (float – metry)
Minimalna wysokość użytkownika w danym okresie (w metrach).
Android
funkcji
com.google.height.summary
Obiekt typu danych
AGGREGATE_HEIGHT_SUMMARY
Pola (format – jednostki)
FIELD_AVERAGE (float – metry)
Średnia wysokość użytkownika w danym okresie (w metrach).
FIELD_MAX (float – metry)
Maksymalna wysokość użytkownika w danym okresie (w metrach).
FIELD_MIN (float – metry)
Minimalna wysokość użytkownika w danym okresie (w metrach).
Podsumowanie wagi
Każdy punkt danych reprezentuje średnią, maksymalną i minimalną wagę użytkownika w danym okresie (w kg).
REST
funkcji
com.google.weight.summary
Zakresy uprawnień OAuth
https://www.googleapis.com/auth/fitness.body.read
Pola (format – jednostki)
średnio (float–kg)
Średnia masa ciała użytkownika w danym okresie (w kilogramach).
max (float–kg)
Maksymalna masa ciała użytkownika w danym okresie (w kilogramach).
min (float–kg)
Minimalna masa ciała użytkownika w danym okresie (w kilogramach).
Android
funkcji
com.google.weight.summary
Obiekt typu danych
AGGREGATE_WEIGHT_SUMMARY
Pola (format – jednostki)
FIELD_AVERAGE (float–kg)
Średnia masa ciała użytkownika w danym okresie (w kilogramach).
FIELD_MAX (float–kg)
Maksymalna masa ciała użytkownika w danym okresie (w kilogramach).
FIELD_MIN (float–kg)
Minimalna masa ciała użytkownika w danym okresie (w kilogramach).
Lokalizacja
Używaj tych typów danych do odczytywania zbiorczych danych o lokalizacji.
Różnica odległości
Każdy punkt danych reprezentuje całkowitą odległość pokonaną przez użytkownika w danym okresie (w metrach). Ten typ danych i jego pola są takie same jak w przypadku typu danych błyskawicznych.
Ramka ograniczająca lokalizację
Każdy punkt danych reprezentuje ramkę ograniczającą obliczoną na podstawie punktów lokalizacji użytkownika w danym okresie. Każda ramka ograniczająca ma 4 pola reprezentujące 4 jej rogi.
Średnia prędkość użytkownika w danym okresie (w metrach na sekundę).
max (float – m na sekundę)
Maksymalna prędkość użytkownika w danym okresie (w metrach na sekundę).
min (float – metry na sekundę)
Minimalna prędkość użytkownika w danym okresie (w metrach na sekundę).
Android
funkcji
com.google.speed.summary
Obiekt typu danych
AGGREGATE_SPEED_SUMMARY
Pola (format – jednostki)
średnio (float – metry na sekundę)
Średnia prędkość użytkownika w danym okresie (w metrach na sekundę).
max (float – m na sekundę)
Maksymalna prędkość użytkownika w danym okresie (w metrach na sekundę).
min (float – metry na sekundę)
Minimalna prędkość użytkownika w danym okresie (w metrach na sekundę).
Odżywianie
Użyj tych typów danych, aby odczytać zbiorcze dane dotyczące odżywiania.
Podsumowanie nawodnienia
Każdy punkt danych reprezentuje łączną ilość wody wypitej przez użytkownika w danym okresie (w litrach). Ten typ danych i jego pola są takie same jak w przypadku typu danych błyskawicznych.
Podsumowanie żywienia
Każdy punkt danych przedstawia sumę wszystkich wpisów dotyczących odżywiania w danym okresie.
W polu wartości odżywczych każda wartość reprezentuje sumę składników odżywczych we wszystkich wpisach w danym okresie.
Jeśli dany element odżywczy nie był uwzględniony w żadnym z wpisów, nie pojawi się on też w mapie zbiorczej. Jeśli wszystkie wpisy w danym okresie dotyczą tego samego posiłku, ustawiony zostanie rodzaj posiłku.
Łączna zawartość składników odżywczych w pożywieniu spożytym w danym okresie.
Akceptowane wartości
"key": "calories" // Calories in kcal
"key": "fat.total" // Total fat in grams
"key": "fat.saturated" // Saturated fat in grams
"key": "fat.unsaturated" // Unsaturated fat in grams
"key": "fat.polyunsaturated" // Polyunsaturated fat in grams
"key": "fat.monounsaturated" // Monounsaturated fat in grams
"key": "fat.trans" // Trans fat in grams
"key": "cholesterol" // Cholesterol in milligrams
"key": "sodium" // Sodium in milligrams
"key": "potassium" // Potassium in milligrams
"key": "carbs.total" // Total carbohydrates in grams
"key": "dietary_fiber" // Dietary fiber in grams
"key": "sugar" // Amount of sugar in grams
"key": "protein" // Protein amount in grams
Android
funkcji
com.google.nutrition.summary
Obiekt typu danych
AGGREGATE_NUTRITION_SUMMARY
Pola (format – jednostki)
FIELD_MEAL_TYPE (int – wyliczenie)
Rodzaj posiłku zjadanego przez użytkownika (widoczne, jeśli wszystkie wpisy w danym okresie dotyczą tego samego posiłku).
Łączna zawartość składników odżywczych w pożywieniu spożytym w danym okresie.
Akceptowane wartości
NUTRIENT_CALORIES // Calories in kcal
NUTRIENT_TOTAL_FAT // Total fat in grams
NUTRIENT_SATURATED_FAT // Saturated fat in grams
NUTRIENT_UNSATURATED_FAT // Unsaturated fat in grams
NUTRIENT_POLYUNSATURATED_FAT // Polyunsaturated fat in grams
NUTRIENT_MONOUNSATURATED_FAT // Monounsaturated fat in grams
NUTRIENT_TRANS_FAT // Trans fat in grams
NUTRIENT_CHOLESTEROL // Cholesterol in milligrams
NUTRIENT_SODIUM // Sodium in milligrams
NUTRIENT_POTASSIUM // Potassium in milligrams
NUTRIENT_TOTAL_CARBS // Total carbohydrates in grams
NUTRIENT_DIETARY_FIBER // Dietary fiber in grams
NUTRIENT_SUGAR // Amount of sugar in grams
NUTRIENT_PROTEIN // Protein amount in grams
Zdrowie
Użyj tych typów danych do odczytywania zbiorczych danych medycznych i dotyczących zdrowia.
Podsumowanie poziomu glukozy we krwi
Każdy punkt danych reprezentuje średni, minimalny i maksymalny poziom lub stężenie glukozy we krwi w zakresie czasowym, mierzonym w mmol/l, gdzie 1 mmol/L to 18 mg/dl.
Jeśli wartości każdego z tych pól są takie same w przypadku wszystkich pomiarów wykonanych w danym zakresie czasu, w zwracanych danych zobaczysz wartość pola:
tymczasowy związek z posiłkiem
czasowe powiązanie ze snem
źródło okazów
Jeśli wartości różnią się w poszczególnych pomiarach, pole zostanie wykluczone.
Średni poziom lub stężenie glukozy we krwi u użytkownika w danym okresie.
max (float–mmol/L)
Maksymalny poziom lub stężenie glukozy we krwi u użytkownika w danym okresie.
min (float–mmol/L)
Minimalny poziom lub stężenie glukozy we krwi w danym okresie.
tymczasowy stosunek do posiłku (int – wyliczenie) (pole opcjonalne)
Moment, w którym odczytywano, w porównaniu do czasu zjedzenia przez użytkownika.
Akceptowane wartości
"intVal": 1 // Reading wasn't taken before or after a meal
"intVal": 2 // Reading was taken during a fasting period
"intVal": 3 // Reading was taken before a meal
"intVal": 4 // Reading was taken after a meal
posiłek typ posiłku (int – wyliczenie) (pole opcjonalne)
Rodzaj posiłku zjadany przez użytkownika podczas wykonywania odczytu.
tymczasowy stosunek do snu (int – wyliczenie) (pole opcjonalne)
Czas wykonania odczytu w porównaniu z czasem snu użytkownika.
Akceptowane wartości
"intVal": 1 // User was fully awake
"intVal": 2 // Before the user fell asleep
"intVal": 3 // After the user woke up
"intVal": 4 // While the user was still sleeping
Moment, w którym odczytywano, w porównaniu do czasu zjedzenia przez użytkownika.
Akceptowane wartości
FIELD_TEMPORAL_RELATION_TO_MEAL_GENERAL // Reading wasn't taken before or after a meal
FIELD_TEMPORAL_RELATION_TO_MEAL_FASTING // Reading was taken during a fasting period
FIELD_TEMPORAL_RELATION_TO_MEAL_BEFORE_MEAL // Reading was taken before a meal
FIELD_TEMPORAL_RELATION_TO_MEAL_AFTER_MEAL // Reading was taken after a meal
Czas wykonania odczytu w porównaniu z czasem snu użytkownika.
Akceptowane wartości
TEMPORAL_RELATION_TO_SLEEP_FULLY_AWAKE // User was fully awake.
TEMPORAL_RELATION_TO_SLEEP_BEFORE_SLEEP // Before the user fell asleep.
TEMPORAL_RELATION_TO_SLEEP_ON_WAKING // After the user woke up.
TEMPORAL_RELATION_TO_SLEEP_DURING_SLEEP // While the user was still sleeping.
Każdy punkt danych reprezentuje średnie, minimalne i maksymalne ciśnienie krwi w wybranym okresie, mierzone w mm Hg.
Jeśli wartości każdego z tych pól są takie same w przypadku wszystkich pomiarów wykonanych w danym zakresie czasu, w zwracanych danych zobaczysz wartość pola:
pozycja ciała
lokalizacja pomiaru
Jeśli wartości różnią się w poszczególnych pomiarach, pole zostanie wykluczone.
BODY_POSITION_STANDING // Standing up
BODY_POSITION_SITTING // Sitting down
BODY_POSITION_LYING_DOWN // Lying down
BODY_POSITION_SEMI_RECUMBENT // Reclining
W której grupie i w której części ramienia wykonano pomiar.
Akceptowane wartości
BLOOD_PRESSURE_MEASUREMENT_LOCATION_LEFT_WRIST // Left wrist
BLOOD_PRESSURE_MEASUREMENT_LOCATION_RIGHT_WRIST // Right wrist
BLOOD_PRESSURE_MEASUREMENT_LOCATION_LEFT_UPPER_ARM // Left upper arm
BLOOD_PRESSURE_MEASUREMENT_LOCATION_RIGHT_UPPER_ARM // Right upper arm
Podsumowanie temperatury ciała
Każdy punkt danych reprezentuje średnią, minimalną i maksymalną temperaturę ciała użytkownika w wybranym okresie.
Będzie też zawierać miejsce wykonania pomiaru na ciele, o ile lokalizacja pomiaru była taka sama dla wszystkich punktów danych w danym przedziale czasu.
Każdy punkt danych reprezentuje średnie, minimalne i maksymalne nasycenie krwi tlenem oraz szybkość przepływu tlenu dodatkowego w danym przedziale czasu.
Jeśli wartości każdego z tych pól są takie same w przypadku wszystkich pomiarów wykonanych w danym zakresie czasu, w zwracanych danych zobaczysz wartość pola:
tryb podawania tlenoterapii
system nasycenia tlenem
metoda pomiaru nasycenia tlenem
Jeśli wartości różnią się w poszczególnych pomiarach, pole zostanie wykluczone.