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

Flutter Firebase手机认证在Play Store安装包下无法发送OTP

问题根因

你未将Google Play App Signing的签名密钥指纹添加到Firebase项目配置,这是该场景下的最高发诱因。

  • 你此前添加的本地release签名SHA1/SHA256,仅适配本地打包、手动安装release包的场景。当前Play Store新上架应用默认强制开启Play App Signing,你上传安装包后,Google会使用其平台托管的专属签名密钥对安装包重签名,最终用户从Play Store下载到的安装包签名,和你本地的release签名完全不一致。
  • Firebase的OTP服务会校验请求来源应用的签名指纹,重签名后的线上包指纹不在你配置的信任列表中,会直接拦截OTP下发请求,无有效报错提示。
修复操作步骤
  1. 登录Google Play Console,进入目标应用的「设置 > 应用完整性」页面
  2. 在「应用签名」标签下,复制Google托管的App Signing密钥对应的SHA1、SHA256值
  3. 进入Firebase Console对应项目的应用设置页,把上一步复制的两个签名指纹添加到应用的签名配置列表中
  4. 下载更新后的google-services.json配置文件,替换项目工程中对应位置的旧配置文件
  5. 重新打包上传至Play Console,发布到内部测试轨道验证功能即可

补充注意:如果你使用了Play的内部应用共享功能测试包体,需要同时把「内部应用共享」板块下的签名密钥SHA1、SHA256也添加到Firebase配置中,否则内部共享链接安装的测试包同样会出现OTP发送失败问题。

常见踩坑提示
  • 不要以Android Studio中signingReport任务打印的release签名指纹作为线上包的有效签名,只要开启Play App Signing,该指纹仅对本地手动安装的release包生效。
  • Firebase签名配置同步延迟通常在2分钟以内,配置更新后替换新的配置文件重新打包即可,不需要等待过长时间。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.26 20:21:38