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

React Native集成Firebase与Google登录打包debug APK后出现DEVELOPER_ERROR问题求助

React Native集成Firebase与Google登录打包debug APK后出现DEVELOPER_ERROR问题求助

兄弟我之前也踩过一模一样的坑!模拟器debug模式下Google登录顺风顺水,一打包debug APK就弹出DEVELOPER_ERROR,折腾了好几天才搞定,给你几个亲测有效的排查方向:

  • 确认debug APK的SHA1签名是否完全同步到控制台
    别只盯着Firebase控制台,Google登录的核心配置其实在Google Cloud Console里:

    1. 先拿到你打包debug APK用的keystore的SHA1,默认debug keystore可以用这个命令获取:
      keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android
      
      如果你用了自定义debug keystore,把路径换成你自己的就行
    2. 打开Google Cloud Console,找到你的项目,进入「API和服务」→「凭据」,找到对应的Android类型OAuth 2.0客户端ID,把刚才拿到的SHA1添加进去;同时别忘了在Firebase控制台的「项目设置」→「应用」里也更新这个SHA1
    3. 重点:修改SHA1后,一定要重新下载最新的google-services.json替换项目里的旧文件,很多人就是漏了这一步!
  • 清理项目缓存,确保配置生效
    React Native和Android Gradle有时候会缓存旧配置,执行以下命令清空缓存:

    # 清空React Native缓存
    npm start -- --reset-cache
    # 清空Android Gradle缓存
    cd android && ./gradlew clean
    

    然后重新打包debug APK试试

  • 检查debug keystore的配置是否正确
    如果你在android/app/build.gradle里自定义了debug签名配置,一定要确保keystore路径、密码、alias都和你用来生成SHA1的keystore一致,比如:

    android {
        signingConfigs {
            debug {
                storeFile file('../debug.keystore') // 这里路径要对应你实际的文件位置
                storePassword 'your-password'
                keyAlias 'your-alias'
                keyPassword 'your-key-password'
            }
        }
    }
    

    要是配置的keystore和你生成SHA1的不是同一个,那肯定会报错

  • 验证APK实际的签名信息
    有时候我们算的SHA1和APK实际签名的不一致,用这个命令查看APK的真实签名:

    apksigner verify --print-certs your-debug.apk
    

    把输出里的SHA1和你添加到控制台的对比,确保完全一致

  • 检查Google登录的初始化配置
    确认@react-native-google-signin/google-signin的初始化代码里,webClientId用的是Google Cloud Console里Web类型的OAuth客户端ID,不是Android类型的,这个很容易搞混!

备注:内容来源于stack exchange,提问作者zied kanoun

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.22 10:28:11