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

Flutter集成Firebase PlayIntegrity API仍弹出ReCaptcha问题求助

解决方案

一、解决ReCaptcha弹窗问题

1. 验证Firebase App Check配置

  • 登录Firebase控制台,进入项目设置 > App Check,确认你的Android应用已启用Play Integrity作为提供者,并且已上传应用签名证书的SHA-256指纹(生产签名和debug签名都需配置,对应不同运行环境)。
  • 在Authentication > 设置 > App Check中,开启对手机号认证的强制检查,确保只有通过App Check验证的请求才能跳过ReCaptcha。

2. 确认Flutter项目依赖与配置

  • 检查android/app/build.gradle中是否添加了Play Integrity的依赖:
    dependencies {
        // 其他依赖...
        implementation 'com.google.firebase:firebase-appcheck-playintegrity:16.0.0'
    }
    
  • 确保应用通过Google Play渠道安装(或内部测试版本):Play Integrity仅对通过Play签名的应用生效,直接运行debug包或非Play渠道安装的应用会触发ReCaptcha,这是正常的安全校验机制。

3. 调试环境临时处理(可选)

如果需要在debug模式下跳过ReCaptcha,可临时切换为Debug提供者,生产环境必须使用Play Integrity:

await FirebaseAppCheck.instance.activate(
  webRecaptchaSiteKey: 'recaptcha-v3-site-key',
  androidProvider: kDebugMode ? AndroidProvider.debug : AndroidProvider.playIntegrity,
);

二、解决OTP短信显示项目URL的问题

  • 进入Firebase控制台项目设置,找到对应Android应用,确保显示名称已设置为你的应用名称。
  • 将Firebase项目与Google Play Console关联:在Firebase项目设置的集成标签中,关联你的Play Console项目,Firebase会自动获取应用名称用于OTP短信。
  • 检查Authentication的短信模板:在Authentication > 设置 > 短信模板中,确保模板包含%APP_NAME%变量,而非硬编码的URL,示例模板:你的验证码是 %CODE%,用于登录%APP_NAME%。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.31 01:45:45