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

Firebase手机号认证出现DEVELOPMENT_MODE_MISMATCH异常求助

解决Firebase手机号认证正式版的DEVELOPMENT_MODE_MISMATCH异常

这个异常DEVELOPMENT_MODE_MISMATCH:Non-development mode Verification Proof given in development mode request本质是你的正式版APK签名和Firebase控制台中配置的签名不匹配,导致Firebase把正式版的验证请求误判为开发模式请求,从而拒绝处理。

调试模式正常是因为你开发时用的是Android Studio默认的调试签名,这个签名已经配置在Firebase里了,但正式版用的是你自己的发布签名,Firebase还未识别到它。

下面是一步步的解决方法:

1. 获取正式版APK的签名指纹

你需要拿到正式版签名密钥的SHA-1和SHA-256值:

  • 如果你用Android Studio生成签名APK/Bundle,可以在生成过程中查看指纹;或者用JDK自带的keytool命令:
keytool -list -v -keystore 你的发布密钥库路径.jks -alias 你的密钥别名

执行后会输出签名指纹,复制SHA-1和SHA-256的值。

2. 将正式版指纹添加到Firebase控制台

  • 打开你的Firebase项目,进入Project Settings → 找到你的Android应用
  • 在「Signing certificate fingerprints」区域,点击「Add fingerprint」,把刚才复制的SHA-1和SHA-256分别添加进去
  • 点击保存,确保更改生效

3. 更新项目中的google-services.json

  • 在Firebase控制台的Android应用设置页面,下载最新的google-services.json文件
  • 替换你Android项目中app/目录下的旧文件,然后点击Android Studio右上角的「Sync Now」同步项目

4. 特殊情况:使用Google Play App Signing

如果你发布到Google Play时开启了Google Play App Signing,那么Google Play会替换你的APK签名,这时候你需要:

  • 登录Google Play Console,进入你的应用 → Release → Setup → App signing
  • 复制「App signing certificate」下的SHA-1和SHA-256值,同样添加到Firebase控制台的签名指纹中

最后再确认你的正式版APK确实是用你配置的发布密钥打包的,重新构建正式版后,手机号认证功能就应该正常工作了——你的代码本身没有问题,问题全在签名配置的匹配上。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.11 09:05:15