Firebase手机号验证遇授权错误:配置无误且重建项目仍未解决
解决Firebase手机号验证"未授权"问题的排查方案
针对你遇到的 "This app is not authorized to use Firebase Authentication.Please verify that the correct package name and SHA-1 are configured in the Firebase Console" 错误,以下是几个容易被忽略的排查点:
重新校验SHA-1签名
- 用命令行重新生成debug版SHA-1:
keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android,release版需替换为自己的签名文件路径和密码 - 确保Firebase控制台同时添加了debug和release环境的SHA-1,很多人会遗漏其中一种环境的配置
- 复制SHA-1时检查是否存在空格、字符缺失或大小写错误(虽SHA-1不区分大小写,但复制失误是高频问题)
- 用命令行重新生成debug版SHA-1:
确保google-services.json完全同步
- 从Firebase控制台重新下载最新的google-services.json,替换项目中旧文件
- 执行Android Studio的
File -> Sync Project with Gradle Files操作,等待同步完成 - 检查Module级build.gradle文件底部是否添加了
apply plugin: 'com.google.gms.google-services'
检查Firebase Auth服务状态
- 进入Firebase控制台的Authentication页面,确认Phone登录方式处于启用状态
- 查看项目区域设置,部分区域可能限制手机号验证服务,建议选择支持该服务的区域(如美国、新加坡)
严格核对包名匹配
- 检查AndroidManifest.xml中的
package属性,与Firebase控制台注册的包名完全一致(包括大小写) - 若使用了productFlavors,需确保每个flavor对应的包名都已在Firebase控制台添加
- 检查AndroidManifest.xml中的
清除缓存并重装应用
- 卸载设备上的测试应用,执行Android Studio的
File -> Invalidate Caches... -> Invalidate and Restart清除构建缓存 - 重新构建并安装应用,避免旧缓存导致配置不生效
- 卸载设备上的测试应用,执行Android Studio的
检查项目权限与状态
- 确认当前Firebase账号拥有项目的所有者或编辑者权限,避免因权限不足导致配置未生效
- 进入项目设置页面,检查项目是否处于正常状态,无封禁或异常标记
内容的提问来源于stack exchange,提问作者aladium
相关产品推荐
相关产品推荐

