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

Android初始化reCAPTCHA API遇ApiException:13错误求助

Android reCAPTCHA初始化出现ApiException 13的解决方法

错误信息

com.google.android.gms.common.api.ApiException: 13: Failed to fetch data for local cache - status: 400
    at com.google.android.gms.common.api.internal.TaskUtil.setResultOrApiException(com.google.android.gms:play-services-base@@18.0.1:4)
    at com.google.android.gms.internal.recaptcha.zzax.zzc(com.google.android.gms:play-services-recaptcha@@16.0.1:1)
    at com.google.android.gms.internal.recaptcha.zzad.zza(com.google.android.gms:play-services-recaptcha@@16.0.1:3)
    at com.google.android.gms.internal.recaptcha.zzb.onTransact(com.google.android.gms:play-services-recaptcha@@16.0.1:3)
    at android.os.Binder.execTransactInternal(Binder.java:1184)
    at android.os.Binder.execTransact(Binder.java:1143)

初始化代码

Recaptcha.getClient(this)
            .init(API_KEY_HERE)
            .addOnSuccessListener(
                this
            ) { handle ->
                recaptchaHandle = handle
            }
            .addOnFailureListener(
                this
            ) { e ->
                e.printStackTrace()
                if (e is ApiException) {
                    val apiException = e as ApiException
                    val apiErrorStatus: Int = apiException.statusCode
                    // Handle api errors ...
                } else {
                    // Handle other failures ...
                }
            }

清单文件配置

<meta-data
            android:name="com.google.android.gms.version"
            android:value="@integer/google_play_services_version" />
        <meta-data
            android:name="com.google.android.geo.API_KEY"
            android:value="@string/google_api_key" />

解决步骤

  • 确认API密钥类型正确:当前清单配置的是地理服务(Geo)API密钥,但reCAPTCHA需要专用的Android版reCAPTCHA密钥。前往Google Cloud控制台,创建或确认已生成对应密钥,确保密钥绑定的应用包名、SHA-1指纹与当前应用完全匹配。
  • 替换初始化密钥:初始化代码中的API_KEY_HERE必须是reCAPTCHA专用密钥,而非地图服务密钥。
  • 添加网络权限:在AndroidManifest.xml中补充INTERNET权限,reCAPTCHA初始化需要联网获取验证数据:
    <uses-permission android:name="android.permission.INTERNET" />
    
  • 更新依赖版本:升级play-services-recaptcha到较新稳定版(如18.0.0+),避免版本兼容问题。
  • 清除缓存:清除应用缓存或设备上Google Play服务的缓存,解决本地缓存数据异常问题。
  • 检查网络环境:确保设备网络正常,无代理、防火墙拦截reCAPTCHA请求。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.21 15:15:35