Angular/Capacitor集成Google登录报错代码10求助
Android本地调试Google登录报错代码10(DEVELOPER_ERROR)解决方案
本地完全可以使用Google登录功能,不需要上传至Google Play Console。你遇到的报错代码10是DEVELOPER_ERROR,本质是凭证配置不匹配导致的,以下是针对性排查步骤:
核对SHA-1与包名的准确性
- 确保Google Cloud Console中Android凭证使用的是本地调试签名的SHA-1:通过
./gradlew signingReport输出的debug变体SHA-1值,不要误用release签名的SHA-1。 - 包名必须与
capacitor.config.ts的appId、AndroidManifest.xml中的package值完全一致,大小写、字符都不能有差异。
- 确保Google Cloud Console中Android凭证使用的是本地调试签名的SHA-1:通过
检查
@codetrix-studio/capacitor-google-auth的配置细节capacitor.config.ts中需正确区分Android和Web客户端ID:plugins: { GoogleAuth: { scopes: ['profile', 'email'], serverClientId: '你的OAuth Web应用客户端ID', // 用于后端Laravel Socialite验证 androidClientId: '你的OAuth Android应用客户端ID', forceCodeForRefreshToken: true } }res/values/strings.xml中的server_client_id需填写Web应用客户端ID,而非Android客户端ID,这是常见混淆点。
验证Google Cloud Console的OAuth配置
- 确保Android凭证与Web凭证归属同一个OAuth同意屏幕项目,且OAuth同意屏幕已配置完成:
- 若处于测试阶段,需将你用于登录的Google账号添加为测试用户(未发布的同意屏幕仅允许测试用户登录)。
- 确认Web凭证的授权重定向URI包含
http://localhost(Capacitor本地调试默认回调地址)。
- 确保Android凭证与Web凭证归属同一个OAuth同意屏幕项目,且OAuth同意屏幕已配置完成:
检查Android签名配置
- 若你使用自定义debug签名文件,需确保
build.gradle(Module: app)中的signingConfigs.debug配置正确,且./gradlew signingReport输出的SHA-1来自该签名文件。
- 若你使用自定义debug签名文件,需确保
清理缓存并重新构建
- 清除Android Studio缓存:
File -> Invalidate Caches... -> Invalidate and Restart。 - 重新同步Capacitor项目:执行
npx cap sync android后,重新构建运行应用。
- 清除Android Studio缓存:
内容的提问来源于stack exchange,提问作者Felipe Castillo
相关产品推荐
相关产品推荐

