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

签名APK上传测试时触发java.lang.SecurityException异常求助

解决签名APK中Firebase登录的SecurityException: Unknown calling package name 'com.google.android.gms'问题

核心原因

这个错误本质是签名发布版APK的SHA-1指纹未在Firebase/Google Cloud平台配置,导致Google Play Services无法验证应用合法身份,进而拒绝提供服务。

分步解决方法

  • 步骤1:获取签名APK的SHA-1指纹
    打开终端/命令行,执行keytool命令(替换你的keystore路径和别名):

    keytool -list -v -keystore C:/XX/release.keystore -alias XX
    

    输入keystore密码后,复制输出中的SHA1值(注意是SHA-1,不是SHA-256)。

  • 步骤2:更新Firebase控制台的应用指纹

    1. 登录Firebase控制台,进入你的项目
    2. 点击顶部齿轮图标 → 项目设置
    3. 在你的应用区域,找到对应Android应用,点击添加指纹
    4. 粘贴刚才获取的SHA-1值,保存更改。
  • 步骤3:同步Google Cloud Console的OAuth配置

    1. 登录Google Cloud Console,进入同一项目
    2. 导航到API和服务 → 凭据
    3. 找到类型为Android的客户端ID(对应你的应用包名),点击编辑
    4. 在SHA-1证书指纹栏添加刚才的SHA-1值,保存
    5. 同时检查Web类型的客户端ID是否存在(代码中用到的default_web_client_id对应这个),确保其状态正常。
  • 步骤4:替换最新的google-services.json
    回到Firebase控制台项目设置页面,重新下载google-services.json文件,替换你项目app目录下的旧文件。

  • 步骤5:重新构建签名APK
    在Android Studio中执行:

    1. Build → Clean Project
    2. Build → Generate Signed Bundle/APK,使用正确的签名配置重新生成发布包。

额外检查项

  • 确认app/build.gradle中的签名配置(storeFile、alias、密码)完全正确,没有拼写错误
  • 确保release构建的isMinifyEnabled为false(你的配置已满足),避免混淆Google Play Services核心代码
  • 测试设备上安装最新版本的Google Play Services,旧版本可能存在兼容性问题

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.15 09:48:10