Firebase认证调用失败:java.lang.SecurityException问题排查求助
解决Firebase Auth调用时的
java.lang.SecurityException: Unknown calling package name 'com.google.android.gms'错误 错误日志
2025-05-26 15:01:25.380 8939-9082 GoogleApiManager com.example.certificate_study E Failed to get service from broker. (Ask Gemini) java.lang.SecurityException: Unknown calling package name 'com.google.android.gms'. at android.os.Parcel.createExceptionOrNull(Parcel.java:3262) at android.os.Parcel.createException(Parcel.java:3246) at android.os.Parcel.readException(Parcel.java:3229) at android.os.Parcel.readException(Parcel.java:3171) at axix.a(:com.google.android.gms@251833038@25.18.33 (260800-756823100):36) at axhe.z(:com.google.android.gms@251833038@25.18.33 (260800-756823100):143) at awol.run(:com.google.android.gms@251833038@25.18.33 (260800-756823100):42) at android.os.Handler.handleCallback(Handler.java:995) at android.os.Handler.dispatchMessage(Handler.java:103) at cfxe.mJ(:com.google.android.gms@251833038@25.18.33 (260800-756823100):1) at cfxe.dispatchMessage(:com.google.android.gms@251833038@25.18.33 (260800-756823100):5) at android.os.Looper.loopOnce(Looper.java:248) at android.os.Looper.loop(Looper.java:338) at android.os.HandlerThread.run(HandlerThread.java:85)
问题场景
应用包名为com.example.certificate_study,调用Firebase Authentication功能(如修改邮箱)时触发上述错误,导致功能无法执行。已核对AndroidManifest.xml包名、SHA-1指纹均正确,仍无法解决。
解决步骤
统一依赖版本:在
app/build.gradle中使用Firebase BOM管理所有Firebase和Google Play服务依赖的版本,避免版本冲突:implementation platform('com.google.firebase:firebase-bom:32.8.0') implementation 'com.google.firebase:firebase-auth' implementation 'com.google.android.gms:play-services-auth'同步gradle后clean并rebuild项目。
重新验证Firebase控制台配置:
- 确认Firebase控制台中已添加当前测试环境的SHA-1(debug包用debug keystore的SHA-1,release包用release keystore的)
- 核对控制台内的应用包名与
AndroidManifest.xml中的包名完全一致(包括大小写) - 重新下载
google-services.json文件,替换至app目录下。
检查权限与Manifest配置:
- 确保Manifest中添加了网络权限:
<uses-permission android:name="android.permission.INTERNET" /> - 排查Manifest中是否存在与Google Play服务相关的错误配置(如自定义权限、包名混淆)。
- 确保Manifest中添加了网络权限:
清除缓存并重启:
- 清除测试设备上应用的缓存与数据
- 清除Google Play服务的缓存(设置→应用→Google Play服务→存储→清除缓存)
- 重启设备后重新测试功能。
启用关联API:
- 登录与Firebase项目绑定的Google Cloud Console,确认Identity Toolkit API已启用
- 若未启用,手动开启后等待5-10分钟再测试。
检查构建变体配置:
- 若使用productFlavors,确保每个flavor的包名和对应SHA-1都已在Firebase控制台配置
- 确认当前构建变体使用的keystore与Firebase控制台中添加的SHA-1匹配。
内容的提问来源于stack exchange,提问作者Gyeong Seok Yoon
相关产品推荐
相关产品推荐

