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

Godot集成Firebase谷歌登录遇DEVELOPER_ERROR问题求助

Godot Android Firebase Google Sign-In 解决 DEVELOPER_ERROR 问题

我在Godot引擎开发移动游戏,通过自定义Android插件集成Firebase实现Google登录,但运行时抛出以下错误:

Status{statusCode=DEVELOPER_ERROR, resolution=null}

已尝试添加SHA-1/SHA-256指纹、导入最新google-services.json、启用Firebase谷歌认证,但问题仍存在。以下是针对性的排查和解决步骤:

  • 提前初始化FirebaseApp
    不要在signIn()方法中延迟初始化FirebaseApp,应该在插件实例化时完成初始化,避免时机错误或重复初始化:

    class Authentication(private val activity: Activity) {
        private lateinit var auth: FirebaseAuth
        private lateinit var googleSignInClient: GoogleSignInClient
    
        init {
            FirebaseApp.initializeApp(activity)
            auth = Firebase.auth
        }
    
        // ... 其余signIn()、onActivityResult()代码
    }
    
  • 验证default_web_client_id的正确性

    1. 打开Firebase控制台→项目设置→常规→滚动到「OAuth 2.0客户端ID」区域
    2. 确认存在类型为Web应用的客户端ID,将其值复制到插件的res/values/strings.xml中,确保R.string.default_web_client_id指向该Web应用ID(而非Android客户端ID)
    3. 检查google-services.json的oauth_client数组,确认包含该Web客户端ID的条目
  • 匹配Godot导出的签名配置

    1. 若使用debug构建,通过keytool -list -v -keystore debug.keystore获取debug密钥库的SHA指纹,确认与Firebase控制台添加的一致
    2. 若使用release构建,检查Godot导出设置中指定的签名文件指纹,确保和Firebase控制台的记录完全匹配
    3. 避免勾选「使用调试密钥库」但实际用自定义签名打包的矛盾配置
  • 检查插件依赖配置
    在插件的build.gradle中确认依赖完整且版本兼容:

    dependencies {
        implementation 'com.google.firebase:firebase-auth:22.3.1'
        implementation 'com.google.android.gms:play-services-auth:20.7.0'
    }
    

    确保在build.gradle顶部应用Google服务插件:

    apply plugin: 'com.google.gms.google-services'
    
  • 清理构建缓存

    1. 在Godot中执行「项目→清理项目」,之后重新导出构建
    2. 若用Android Studio开发插件,执行「File→Invalidate Caches / Restart」清理缓存
    3. 删除插件项目的.gradle、build文件夹,重新构建插件
  • 验证测试环境

    1. 确保测试设备上的Google Play服务为最新版本,通过Google Play商店更新
    2. 使用带Google APIs的Android模拟器测试,避免无Google服务的模拟器

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.09 01:20:33