Flutter 和 Google 登录:Web 客户端 ID 适用于 Android,Android 客户端 ID 不适用于 Android

问题描述 投票:0回答:1

所以这对我来说绝对是一个谜题。我正在构建一个 Flutter 应用程序并使用最新版本的 google_sign_in(本文发布时为 6.1.0)。

我已经将其全部设置为我认为合适的,当我尝试登录时,我收到无处不在的错误消息:

com.google.android.gms.common.api.ApiException: 10: 

我知道这通常与确保您的应用程序在 Firebase 中正确注册并且 SHA-1 密钥匹配等等有关。我的部分问题是我没有使用 Firebase,而是使用 Identity Platform,所以它有点不同。这也是最近出现的一个新问题,因为之前它是有效的。一般来说我的设置是这样的:

  1. API 和服务 -> Oauth 同意屏幕,浏览并填写所有必填字段等。
  2. API 和服务 -> 凭证
    • 创建 2 个 Oauth 2.0 客户端 ID
    • 首先是针对 Web,具有授权来源和重定向
    • 第二个适用于 Android,包名称与我的 AndroidManifest 文件匹配,SHA-1 与我的 Android 调试密钥库匹配
    • 注意:还有第三个客户端,“Web 客户端(由 Google 服务自动创建)”
  3. 识别平台 -> 提供商,添加 Google
    • 在Web Client ID & Secret下,我放置了“Web client(由Google服务自动创建)”ClientID和Secret。
    • 在允许的客户端 ID 下,我包含了我创建的 Android ClientID 和 Web ClientID
    • 以上我都保存了
  4. 在我的应用程序中,当我在网络上运行它时,它可以毫无问题地登录。
  5. 当我除了在 Android 上运行它并使用 Android ClientID 之外没有任何更改时,它会抛出上述错误:
com.google.android.gms.common.api.ApiException: 10: 

但是,如果在 Android 上,再次不做任何更改,除了我使用 Web 客户端 ID 而不是 Android 客户端 ID 之外,它工作正常,没有问题。

这有道理吗?难道就应该这样表现吗?我觉得我失去了一些东西。任何输入都有帮助。

android flutter google-cloud-platform oauth-2.0 google-signin
1个回答
0
投票

您是如何解决这个问题的? 我现在就面临着这个问题

© www.soinside.com 2019 - 2024. All rights reserved.