Interfejsy Google Fit API, w tym interfejs Google Fit REST API, zostaną wycofane w 2026 roku. Od 1 maja 2024 roku deweloperzy nie mogą rejestrować się, aby korzystać z tych interfejsów API.
W przypadku integracji działających w chmurze zalecamy migrację do interfejsu Google Health API, a w przypadku śledzenia kroków i aplikacji na Androida przeznaczonych głównie na urządzenia mobilne – do Health Connect. Instrukcje dotyczące tego, na który interfejs API lub platformę przejść, znajdziesz w przewodniku po migracji do Fit.
Google używa technologii AI do tłumaczenia treści na Twój preferowany język. Tłumaczenia wygenerowane przez AI mogą zawierać błędy.
Sprawdź, czy użytkownik wcześniej zezwolił na dostęp do niezbędnych danych. Jeśli nie, rozpocznij proces autoryzacji:
if(!GoogleSignIn.hasPermissions(account,fitnessOptions)){GoogleSignIn.requestPermissions(this,// your activityGOOGLE_FIT_PERMISSIONS_REQUEST_CODE,// e.g. 1account,fitnessOptions)}else{accessGoogleFit()}
Jeśli proces autoryzacji jest wymagany, zrób odpowiedź użytkownika:
overridefunonActivityResult(requestCode:Int,resultCode:Int,data:Intent?){super.onActivityResult(requestCode,resultCode,data)when(resultCode){Activity.RESULT_OK->when(requestCode){GOOGLE_FIT_PERMISSIONS_REQUEST_CODE->accessGoogleFit()else->{// Result wasn't from Google Fit}}else->{// Permission not granted}}}
Gdy użytkownik zezwoli użytkownikowi na dostęp do żądanych danych, utwórz aktywność
(np. HistoryClient do odczytu lub zapisu historycznej aktywności fizycznej
danych) zależnie od przeznaczenia i potrzeb aplikacji:
privatefunaccessGoogleFit(){valend=LocalDateTime.now()valstart=end.minusYears(1)valendSeconds=end.atZone(ZoneId.systemDefault()).toEpochSecond()valstartSeconds=start.atZone(ZoneId.systemDefault()).toEpochSecond()valreadRequest=DataReadRequest.Builder().aggregate(DataType.AGGREGATE_STEP_COUNT_DELTA).setTimeRange(startSeconds,endSeconds,TimeUnit.SECONDS).bucketByTime(1,TimeUnit.DAYS).build()valaccount=GoogleSignIn.getAccountForExtension(this,fitnessOptions)Fitness.getHistoryClient(this,account).readData(readRequest).addOnSuccessListener({response->
// Use response data hereLog.i(TAG,"OnSuccess()")}).addOnFailureListener({e->Log.d(TAG,"OnFailure()",e)})}
[[["Łatwo zrozumieć","easyToUnderstand","thumb-up"],["Rozwiązało to mój problem","solvedMyProblem","thumb-up"],["Inne","otherUp","thumb-up"]],[["Brak potrzebnych mi informacji","missingTheInformationINeed","thumb-down"],["Zbyt skomplikowane / zbyt wiele czynności do wykonania","tooComplicatedTooManySteps","thumb-down"],["Nieaktualne treści","outOfDate","thumb-down"],["Problem z tłumaczeniem","translationIssue","thumb-down"],["Problem z przykładami/kodem","samplesCodeIssue","thumb-down"],["Inne","otherDown","thumb-down"]],["Ostatnia aktualizacja: 2025-08-31 UTC."],[],[]]