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

Firebase App Check在Test Lab多设备运行时遭限流的解决方案咨询

Firebase Test Lab多设备测试时App Check限流的解决方案

问题背景

使用Firebase Test Lab在多台设备上并行运行应用测试时,触发了App Check的限流机制,日志关键报错如下:

09-21 22:51:55.551: W/LocalRequestInterceptor(7303): Error getting App Check token; using placeholder token instead. Error: com.google.firebase.FirebaseException: -8: Integrity API error (-8): The calling app is making too many requests to the API and hence is throttled.
09-21 22:51:58.672: W/LocalRequestInterceptor(7303): Error getting App Check token; using placeholder token instead. Error: com.google.firebase.FirebaseException: -8: Integrity API error (-8): The calling app is making too many requests to the API and hence is throttled.
09-21 22:51:58.836: W/GCM-GMS(4915): Failed to get registration: java.io.IOException: QUOTA_EXCEEDED

可行解决方案

  • 拆分测试批次,降低并发量
    减少同时运行的测试设备数量,将大规模测试拆分为多个小批次执行,批次间设置10-15分钟的间隔,避免短时间内向App Check/Integrity API发送大量请求。例如原本同时启动10台设备,改为分3批次,每批次3-4台。

  • 启用App Check调试令牌
    在测试环境中使用调试令牌替代生产环境的验证方式,调试令牌不受配额限制,完全适配测试场景:

    1. 在Firebase控制台生成对应应用的调试令牌
    2. 在测试构建中加入环境判断逻辑,当检测到当前是Test Lab测试环境时,自动使用调试令牌获取App Check凭证
  • 优化应用内的令牌请求逻辑
    检查应用中App Check令牌的获取代码,减少不必要的请求:

    • 对获取到的令牌进行本地缓存,设置合理的过期时间,避免每次网络请求都重复获取
    • 仅在访问敏感Firebase服务(如Firestore、Cloud Functions)前获取令牌,而非应用启动时就频繁调用
    • 处理令牌获取失败(包括限流)时,实现指数退避重试机制,避免短时间内重复请求
  • 申请API配额提升
    如果业务测试确实需要高并发的多设备测试,可以通过Firebase控制台提交配额提升申请,详细说明测试场景的需求,申请更高的App Check/Integrity API调用配额。

  • 混合测试策略:本地+云端结合
    将部分测试任务转移到本地模拟器或物理设备执行,减少对Firebase Test Lab的依赖。例如UI回归测试、单元测试在本地完成,仅将兼容性测试、多设备适配测试等必须云端多设备的任务放到Test Lab。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.10 09:46:03