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

Android端Google登录报DEVELOPER_ERROR,iOS端正常求助

解决Android端Google登录DEVELOPER_ERROR问题(Expo + Firebase + react-native-google-signin)

以下是针对你已排查基础项后的进阶排查方案:

  • 确认EAS构建的签名指纹(若使用EAS Build)
    如果你用Expo EAS构建Android包,本地gradlew signingReport获取的指纹可能和EAS实际使用的不一致。登录EAS控制台,进入你的项目→Builds→选择对应构建记录→Credentials,找到Android Keystore的SHA-1指纹,添加到Firebase和Google Cloud Console的OAuth客户端配置中。

  • 检查Google Cloud Console的OAuth同意屏幕状态
    进入Google Cloud Console的OAuth同意屏幕页面,确保状态是已发布。生产环境下,未发布的同意屏幕仅允许添加的测试用户登录,其他用户会触发验证错误。

  • 启用Google People API
    登录Google Cloud Console,搜索并启用Google People API。react-native-google-signin在获取用户信息时依赖该API,未启用会导致登录失败。

  • 验证google-services.json的完整性
    打开下载的google-services.json,检查client数组中是否存在包含你添加的所有SHA-1指纹的条目,且client_info.android_client_info.package_name与你的应用包名完全一致(大小写敏感)。若有多个client条目,确保Web客户端ID对应的配置正确关联了包名和指纹。

  • 检查Expo配置的一致性
    确认app.json/app.config.js中android.package的值与Firebase、Google Cloud Console中配置的包名完全一致,无拼写错误或大小写差异。

  • 等待签名指纹生效
    Google Play应用签名和Firebase的指纹同步存在延迟,添加新指纹后可能需要等待1-24小时才会生效,不要立即测试。

  • 获取错误详情
    在signIn方法的错误捕获中,打印完整的错误对象(而非仅错误码):

    try {
      await GoogleSignin.signIn();
    } catch (error) {
      console.log('Google登录错误详情:', error);
    }
    

    错误详情中的message或details字段可能给出更具体的失败原因,比如API未启用、客户端ID不匹配等。

  • 更新设备Google Play服务
    确保测试设备上的Google Play服务是最新版本,旧版本可能存在验证逻辑兼容问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.28 14:46:26