As APIs do Google Fit, incluindo a API REST do Google Fit, serão descontinuadas em 2026. A partir de 1º de maio de 2024, os desenvolvedores não poderão se inscrever para usar essas APIs.
Verifique se o usuário já concedeu o acesso necessário aos dados e se
não, inicie o fluxo de autorização:
if(!GoogleSignIn.hasPermissions(account,fitnessOptions)){GoogleSignIn.requestPermissions(this,// your activityGOOGLE_FIT_PERMISSIONS_REQUEST_CODE,// e.g. 1account,fitnessOptions)}else{accessGoogleFit()}
Se o fluxo de autorização for necessário, processe a resposta do usuário:
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}}}
Depois que o usuário autorizar o acesso aos dados solicitados, crie um condicionamento
cliente, por exemplo, um HistoryClient para ler e/ou gravar o histórico de condicionamento físico
dados) com base na finalidade e nas necessidades do app:
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)})}
[[["Fácil de entender","easyToUnderstand","thumb-up"],["Meu problema foi resolvido","solvedMyProblem","thumb-up"],["Outro","otherUp","thumb-up"]],[["Não contém as informações de que eu preciso","missingTheInformationINeed","thumb-down"],["Muito complicado / etapas demais","tooComplicatedTooManySteps","thumb-down"],["Desatualizado","outOfDate","thumb-down"],["Problema na tradução","translationIssue","thumb-down"],["Problema com as amostras / o código","samplesCodeIssue","thumb-down"],["Outro","otherDown","thumb-down"]],["Última atualização 2025-08-31 UTC."],[[["\u003cp\u003eThis code snippet demonstrates how to build a Fitness API client to read aggregate step count data.\u003c/p\u003e\n"],["\u003cp\u003eIt highlights the importance of requesting only necessary data types to improve user consent rates.\u003c/p\u003e\n"],["\u003cp\u003eThe example guides developers through creating \u003ccode\u003eFitnessOptions\u003c/code\u003e, handling user authorization, and accessing historical fitness data using \u003ccode\u003eHistoryClient\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eIt showcases how to query and retrieve aggregate step count data within a specified time frame.\u003c/p\u003e\n"]]],[],null,[]]