小编Tig*_*rrr的帖子

错误:10:开发者控制台设置不正确(未使用 Firebase)(一键注册)

我正在尝试为我正在开发的 Android 应用程序实现 Google 的一键注册。我正在遵循 Google 的(相当过时的)官方指南,到目前为止一切都进展顺利,直到显示注册 UI,其中 onFailure 侦听器在我构建和运行我的应用程序时返回错误:

com.google.android.gms.common.api.ApiException: 10: Developer console is not set up correctly.
Run Code Online (Sandbox Code Playgroud)

这是我的相关代码:

com.google.android.gms.common.api.ApiException: 10: Developer console is not set up correctly.
Run Code Online (Sandbox Code Playgroud)

现在,正如我所提到的,我正在遵循官方指南,并且没有跳过任何一步,所以我做的第一件事就是谷歌并研究错误。正是在这一点上,我想提一下,我已经审查了以下问题的每一个答案: 1 2 3 4 5 6 7 8 9 10 有几个,我的意思是几个重复的答案,这使得它变得如此痛苦找到一个有帮助的答案,人们对重复的问题很重视,但我认为这些重复的答案确实需要节制。哦,很多包含代码的答案通常已被弃用,并且适用于旧版 Google 登录或其他一些 Google API,而不是 One Tap(我仍然试图查看这些解决方案是否有效,但无济于事)。

为了节省大家的时间,我将解决我在研究过程中反复出现的两个答案。

  1. 我输入的客户端 ID 是“Web”客户端 ID,而不是 Android 客户端 ID。
  2. 在制作 Web 客户端 ID 时,并未要求提供 SHA-1,但在制作 Android 客户端时,我确实按照官方指南和(以及更多事实检查指南)成功创建并输入了正确的 SHA-1。

需要注意的一些有用信息:我只有一个项目,除了调试之外没有任何变体,并且我没有使用 Firebase,每次我在测试设备上运行应用程序时都会发生这种情况,应用程序 ID 与清单中的包名称,我还尝试重新生成签名的包。

如果您有任何想法为什么我可能会收到此错误,请告诉我!已经两天了,我感觉我已经没有选择了……

google-api google-cloud-platform google-signin google-one-tap

8
推荐指数
1
解决办法
2272
查看次数

凭据管理器 - 如何创建“SignInWithGoogle”凭据?

我正在尝试设置 Google 的 One-Tap,但使用新的一体化凭据管理器。

然而,在浏览了(写得很糟糕的)文档之后,我停了下来。在“使用 Google 登录”后,一切都很好,直到我收到“NoCredentialException:没有可用的凭据”,这是有道理的。

但是……我如何创建凭证?

Google 提供了为密码密钥创建凭据的示例,但我找不到有关为“使用 Google 登录”按钮(互联网上的任何位置)创建凭据的任何信息。

“凭据管理器通过最新的 Google ID 帮助程序库支持“使用 Google 登录”按钮”

正如 Android 所说

所以,我使用<CredentialManager>.createCredentialAsync()它是因为谷歌在他们提供的示例中使用了它(并明确告诉在这里这样做)。

但是,Android 的 createCredentialAsync 需要 a CreateCredentialRequest,并且它只接受三种类型:“CreatePasswordRequest”、“CreatePublicKeyCredentialRequest”和“CreateCustomCredentialRequest”。

这就是上面引用中提到的“Google 的ID 帮助器库”应该派上用场的地方。该库具有类 GetGoogleIdOption 和 GetSignInWithGoogleOption ,它们都是GetCustomCredentialOption的子类。

现在的问题是我应该如何CreateCustomCredentialRequest为我的方法获取一个类(或其子类)<CredentialManager>.createCredentialAsync()

Google 的“最新 ID 帮助器库”不提供:

  1. CustomCredential 的子类,它是 SignInWithGoogle 的构建器(它适用于 GoogleIdToken)
  2. 一个非常长的CreateSignInWithGoogleRequest类(或一个CreateGoogleIdRequest类),它是该类的子类CreateCustomCredentialRequest

因此,由于我被困在应该如何得到这个问题上CreateCustomCredentialRequest,我也不确定应该如何“将凭证管理器与通过 Google 登录集成”。 …

android google-oauth google-signin google-one-tap android-credential-manager

7
推荐指数
1
解决办法
1626
查看次数