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

Flutter安卓应用删除账户时App Check令牌获取失败求助

问题描述

我的Flutter安卓应用运行正常,但用户尝试删除账户时出现如下错误:

Error getting App Check token; using placeholder token instead. Error: com.google.firebase.FirebaseException: Too many attempts

代码起初可用,但一段时间后就会触发该错误。我查阅资料后添加了App Check配置,但问题仍未解决。相关配置如下:

main.dart

WidgetsFlutterBinding.ensureInitialized();
await Firebase.initializeApp();
await FirebaseAppCheck.instance.activate(
    androidProvider: AndroidProvider.playIntegrity
);

app/build.gradle

dependencies {
    implementation("com.google.firebase:firebase-appcheck-playintegrity")
}

pubspec.yaml

firebase_app_check: ^0.2.1+2

已确认问题与网络、Firebase规则无关,请问我哪里配置出错了?

可能的原因及修复方案
  • 检查Play Integrity API配额:Play Integrity API有免费调用配额(每日10万次),若应用调用量超出阈值,就会触发Too many attempts错误。登录Firebase控制台的App Check页面,查看Play Integrity的配额使用情况。如果超出配额,可考虑升级付费方案,或优化业务逻辑减少不必要的App Check令牌请求。

  • 验证App Check控制台配置:

    1. 确保Firebase控制台中,你的安卓应用已启用Play Integrity作为App Check提供方,且正确配置了应用包名、发布版和调试版的SHA-256指纹。
    2. 调试阶段若使用模拟器或未安装Google Play服务的设备,Play Integrity无法正常验证,会导致令牌获取失败。调试时可临时切换为AndroidProvider.debug,发布版再切换回playIntegrity。
  • 升级firebase_app_check依赖版本:当前使用的^0.2.1+2是旧版本,可能存在令牌重试逻辑的bug。升级到pub.dev上的最新稳定版,新版本修复了多次重试导致的请求超限问题。

  • 优化删除账户逻辑的请求频率:删除账户操作可能触发多次Firebase API调用,每次调用都请求App Check令牌,短时间内大量请求会触发限流。优化逻辑:提前获取一次令牌复用,或合并相关API调用减少请求次数。

  • 确认Play Integrity API已启用:登录Google Cloud控制台,检查Firebase关联的GCP项目是否已启用Play Integrity API。未启用该服务的话,即使配置了依赖也无法正常获取令牌。

内容的提问来源于stack exchange,提问作者Samet D.

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.06 10:10:03