You need to enable JavaScript to run this app. Android接入Google Fit报ApiException 5000需OAuth授权错误如何解决
优惠活动
大模型
产品
解决方案
定价
更多

Android接入Google Fit报ApiException 5000需OAuth授权错误如何解决

错误原因与解决方案

你遇到的两个错误分别对应:

  • ApiException: 4 为通用权限校验失败
  • ApiException: 5000 为明确缺少用户OAuth授权许可

结合你的代码和配置流程,排查点如下:

  • Scope不匹配问题
    你代码中请求的权限是血糖读写权限 Scopes.FITNESS_BLOOD_GLUCOSE_READ_WRITE,但后续 accessGoogleFit() 方法读取的是步数数据,需要额外申请活动类权限,你需要在权限请求时补充 Scopes.FITNESS_ACTIVITY_READ 或 FITNESS_ACTIVITY_READ_WRITE,否则步数数据的读取请求会因为缺少对应Scope被拒。
  • 权限请求时序逻辑错误
    你的代码中发起登录跳转 startActivityForResult() 后,立刻再次执行权限判断,此时用户还未完成授权操作,第二次的权限判断必然返回无权限,直接发起重复的权限请求。你需要将第二次权限校验、accessGoogleFit() 调用逻辑,放到 onActivityResult 回调中,等登录/授权请求的结果返回后再执行。
  • OAuth同意屏幕配置缺失
  1. 确认你在Google Cloud后台的OAuth同意屏幕配置中,已经把用到的所有权限(血糖读写、活动数据读取)都添加到了权限列表中
  2. 如果你的应用还未通过Google审核发布,必须将测试用到的谷歌账号添加到OAuth同意屏幕的「测试用户」列表中,未在列表内的账号无法完成授权
  3. 确认后台填写的应用SHA1指纹与你当前打包使用的签名指纹一致,debug和release签名的SHA1值不同,不要混淆填写,同时保证应用包名与后台登记的完全一致
  • 冗余代码优化
    你不需要同时使用 GoogleSignInClient 登录和 GoogleSignIn.requestPermissions 两种请求方式,二选一即可,避免重复弹出授权窗口。

内容的提问来源于stack exchange,提问作者T_TR_ZCS

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.22 03:54:05