You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Google One Tap登录时正常时抛错误码10,求助排查

Google One Tap Sign-In 无规律触发 ApiException: 10 的解决方案

问题背景

已完成Google One Tap Sign-In功能集成,配置了Web应用凭证、Android调试及发布凭证,初期运行正常。无代码变更情况下,功能出现不稳定:时而正常运行,时而抛出com.google.android.gms.common.api.ApiException: 10: Developer console is not set up correctly,异常无规律自行恢复。2023-07-08更新:授权弹窗后的步骤也会触发相同错误。

排查与修复步骤

1. 验证Google Cloud Console凭证配置

  • 确认Android凭证的SHA-1指纹包含所有环境的签名信息:调试版本(本地debug.keystore)和发布版本(正式签名密钥)的SHA-1都需添加到对应Android凭证中,缺一不可。
  • 核对代码中SERVER_CLIENT_ID是否为Web应用的Client ID,不要误填Android平台的Client ID。
  • 若为生产环境,确保OAuth同意屏幕已发布(状态为「已发布」),未发布的同意屏幕仅支持添加的测试用户,可能导致随机校验失败。

2. 清除Google Play服务缓存

时好时坏的异常常与Google Play服务本地缓存异常有关:

  • 进入设备「设置」→「应用」→「Google Play服务」→「存储」→「清除缓存」(不要清除数据)。
  • 测试设备可尝试重启,或更新Google Play服务至最新版本。

3. 调整重试逻辑,避免掩盖真实问题

代码中针对DEVELOPER_ERROR关闭autoSelect的重试逻辑与错误码10无直接关联,建议暂时移除该逻辑,直接抛出错误并记录详细日志,便于定位根因:

.addOnFailureListener {
    val statusCode = (it as? ApiException)?.statusCode
    when {
        statusCode == CommonStatusCodes.CANCELED &&
                launchSignInOptions.filterByAuthorizedAccounts -> {
            launchLogIn(launchSignInOptions.copy(filterByAuthorizedAccounts = false), onError)
        }
        else -> {
            // 直接抛出错误,不做autoSelect重试
            onError(it)
        }
    }
}

4. 确认APK签名与配置一致

  • 用以下命令获取当前运行APK的SHA-1指纹,与Google Cloud Console中配置的对比,确保完全匹配:
    keytool -list -v -keystore /path/to/your/keystore/file
    
  • 检查打包配置,避免发布版本误用调试签名,或调试版本误用发布签名。

5. 添加详细日志辅助排查

在setResult的异常捕获块中添加日志,记录异常信息及Google Play服务版本,便于定位问题:

fun setResult(data: Intent?, onError: (Throwable) -> Unit) {
    try {
        val credential = oneTapClient.getSignInCredentialFromIntent(data)
        loadUser(credential.id, credential.googleIdToken)
    } catch (e: ApiException) {
        Log.e("AuthDebug", "Code: ${e.statusCode}, Message: ${e.message}, GMS Version: ${GoogleApiAvailability.getInstance().getApkVersion(activity)}")
        onError(e)
    }
}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.18 13:53:29