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

Flutter应用发布至Play Store后Firebase认证、谷歌登录及OTP功能失效报错

问题描述

集成Firebase Authentication与谷歌登录功能的Flutter应用发布到Play Store后,OTP验证、谷歌登录功能均无法正常使用,本地直接运行安装到测试设备时所有功能正常。
系统抛出错误如下:

The app is not authorized to use Firebase Authentication. Please verify that the correct package name and SHA-1 are configured in the Firebase Console.[A safety net token was passed, but no matching SHA-256 was registered in the Firebase console. Please make sure that this application's package Name or SHA256 pair is registered in the Firebase Console.]

错误截图:
Firebase认证授权错误截图

已完成配置
  • 项目内已配置key.jks与key.properties文件,生成发布密钥的命令为:
keytool -genkey -v -keystore c:\Users\hp\key.jks -storetype JKS -keyalg RSA -keysize 2048 -validity 10000 -alias key
  • 已执行命令获取debug签名的SHA1、SHA-256值:
keytool -list -v -alias androiddebugkey -keystore C:\Users\hp\.android\debug.keystore
  • 已将上述获取到的SHA1、SHA256值在Firebase控制台完成注册
  • 已在Firebase Authentication模块开启Phone手机号验证、Google Sign In谷歌登录提供商
故障原因

你只添加了本地debug签名、本地上传密钥的签名指纹到Firebase,但如果开启了Google Play应用签名功能(Play上架默认强制开启),你上传的AAB/APK会被Google用平台托管的应用签名密钥重新签名后才会分发给用户,最终线上安装包的签名指纹和你之前登记的不匹配,就会触发这个授权错误。

解决步骤
  • 获取Google Play托管的应用签名密钥指纹
    登录Google Play Console,进入对应应用页面,依次打开「设置」-「应用完整性」,复制「应用签名密钥」板块下的SHA-1、SHA-256值(注意不要复制上传密钥的指纹,上传密钥仅用于你向Play提交包时的校验,不用于最终分发的安装包签名)
  • 补充指纹到Firebase控制台
    打开Firebase控制台,进入对应项目的「项目设置」-「常规」页,找到你的Android应用条目,把上一步复制的SHA-1、SHA-256添加到签名指纹列表中,保存配置
  • 更新项目配置文件
    在Firebase控制台重新下载最新的google-services.json文件,替换Flutter项目中android/app/目录下的旧配置文件
  • 重新打包提交新版本到Play Store,版本上线后功能即可恢复正常
补充说明

如果后续需要做本地release包测试,也要把你自己生成的上传密钥(即你本地生成的key.jks)的SHA-1、SHA-256添加到Firebase指纹列表,否则本地打release包直装时也会出现同样的授权错误。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.27 13:18:33