标签: google-identity

新的Google登录Android

我正在尝试使用新的Google Play服务8.3获取用户令牌ID,并且如我所述,我传递了服务器ID:

GoogleSignInOptions gso = new GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN)
    .requestIdToken(getString(R.string.server_client_id))
    .requestEmail()
    .build();
Run Code Online (Sandbox Code Playgroud)

但是我仍然得到如下结果:

{statusCode=unknown status code: 12501, resolution=null}
Run Code Online (Sandbox Code Playgroud)

并记录在这里 GoogleSignInStatusCodes

登录已被用户取消.即,用户取消了一些登录决议,例如,帐户选择或OAuth同意.

常数值:12501

这不是我的情况,因为我已经选择了一个帐户.任何想法可能是什么原因?

android google-play-services google-identity

78
推荐指数
7
解决办法
5万
查看次数

错误12501使用Google登录进行身份验证

我正在使用谷歌登录服务来验证使用我的应用程序的用户.当我刚要求电子邮件信息时,我得到了它的工作

GoogleSignInOptions gso = new GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN)
                    .requestEmail().build();
Run Code Online (Sandbox Code Playgroud)

然后,我发现我还需要请求ID令牌才能使用我的后端进行身份验证,所以我做了:

GoogleSignInOptions gso = new GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN)
                    .requestIdToken(String.valueOf(R.string.server_client_id))
                    .requestEmail().build();
Run Code Online (Sandbox Code Playgroud)

问题是它不会让我在更改后登录.我每次尝试登录时都会得到的状态是Status{statusCode=unknown status code: 12501, resolution=null}.

我一直在寻找,我发现这篇文章几乎是一回事.但是,我没有回答任何人所提出的任何错误,我的开发控制台中的oAuth客户端ID用于Web应用程序: 的ClientID 并且R.string.server_client_id是图片中的第一个客户端ID.包名称当然是正确的,否则它甚至在没有令牌请求的情况下也无法工作.2人还建议应用程序需要签名才能使用,但googles文档说调试密钥也应该工作,并且让人们签署应用程序进行调试没有意义.

我一直在试图解决这个问题几个小时但没有成功.可能是什么问题呢?请随时索取我可能忘记放在这里的更多信息.

android google-play-services google-signin google-identity

48
推荐指数
3
解决办法
4万
查看次数

如何刷新过期的谷歌登录登录?

我正在使用Google登录.用户来到我的站点并登录gapi.auth2.getAuthInstance().signIn(),或者他们已经登录,当页面加载(或重新加载)时,我们获取状态.在这一点上,我有一个身份令牌好一个小时,我可以在服务器上验证.

当用户离开浏览器(例如,过夜)时,此令牌将过期.gapi.auth2.getAuthInstance().isSignedIn.get()返回true,但令牌不验证.

如何登录用户并在会话处于活动状态时保持登录状态(即浏览器尚未关闭)?或刷新令牌?比重新加载页面更优雅的东西......

编辑:刷新令牌不是正确的答案; 我不想离线访问(并且不想要求权限).谷歌显然认为用户仍然登录我的应用程序; 用户可以重新加载页面并获取新令牌而无需再次提供凭据.当然有一些机制比隐藏的iframe更优雅,以获得更新的令牌?

google-plus-signin google-signin google-identity

32
推荐指数
2
解决办法
7533
查看次数

使用旧密码登录Google帐户 - 如何重定向到蓝色Google登录页面?

我已经在我的应用中实施了Google登录SDK,一切正常.

当我点击登录按钮 - 我得到已存储帐户的窗口.我选择其中一个,登录的整个过程以成功结束.

但是有一个用例我无法通过,我不知道如何解决这个问题:

  • 当用户访问Google登录对话框并点击已更改密码的帐户时该怎么办?

我跟着谷歌指令"实施登录SDK"并在调用这些行之后:

Task<GoogleSignInAccount> task = GoogleSignIn.getSignedInAccountFromIntent(data);
GoogleSignInAccount googleSignInAccount = task.getResult(ApiException.class);
Run Code Online (Sandbox Code Playgroud)

我捕获状态代码为12501的异常SIGN_IN_CANCELLED.

正如我之前所说,这是因为其中一个存储的帐户密码无效.

如何让用户重定向到此蓝色Google登录页面并保持当前流量?

例如,AliExpress可以以某种方式处理此问题并将用户重定向到蓝页,并要求用户再次登录.

在此输入图像描述

我的代码与Google的说明没有太大区别.这是我的代码流程.一切都从onClick():

onClick()方法中:

// Logout before all operations
GoogleSignInAccount account = GoogleSignIn.getLastSignedInAccount(this);
if (account != null) {
    mGoogleSignInClient.signOut();
}

// Call to sign in
Intent signInIntent = mGoogleSignInClient.getSignInIntent();
startActivityForResult(signInIntent, RequestCodes.RC_GOOGLE_SIGN_IN);
Run Code Online (Sandbox Code Playgroud)

onActivityResult部分:

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    Log.d(TAG, "onActivityResult() called with: requestCode = [" + requestCode + "], resultCode = …
Run Code Online (Sandbox Code Playgroud)

android google-account google-signin google-identity

24
推荐指数
1
解决办法
712
查看次数

Google身份工具包,Google OAauth,Firebase Auth和Google+登录之间有什么区别

根据我的理解,Google身份识别工具包提供了一个用于登录不同帐户的层,例如Facebook,Yahooo等,但这与Google OAuth实施有何不同?关于Google+登录,它仍在使用OAuth,但仅启用Google帐户登录?

oauth google-plus google-identity-toolkit firebase-authentication google-identity

18
推荐指数
1
解决办法
4321
查看次数

应用和网站保存的密码不同步

在我的 Android 应用中实现的 Google Smart Lock 功能。我正在尝试将密码黑白同步我的网站和我的 Android 应用程序。

根据本文件:https : //developers.google.com/identity/smartlock-passwords/android/associate-apps-and-sites

我已经完成了所有需要的更改。

我的网站网址是https: //auth-test. Centurylink.com

数字资产链接文件上传至服务器链接:https : //auth-test. Centurylink.com/.well-known/assetlinks.json

在清单中,我添加了以下代码。 <meta-data android:name="asset_statements" android:resource="@string/asset_statements" />

在 String.xml 中 <string name="asset_statements" translatable="false">[{\"include\": \"https://auth-test.centurylink.com/.well-known/assetlinks.json\"</string>

应用程序已发布到 Beta 版的 Play-store,2 周前。还多次提交了网站/应用程序凭据链接表,

仍然没有收到任何确认邮件,也没有收到任何错误。

解决问题或与团队沟通的最佳方式是什么?网页和应用同步密码需要多长时间?

android google-chrome google-smartlockpasswords google-identity

16
推荐指数
1
解决办法
507
查看次数

为什么“使用 Google 登录”按钮在我第二次渲染后消失了?

我正在使用Google Identity 中的“使用 Google 登录”按钮。我已将此按钮文档页面中的 HTML放入 React 组件中。看起来像这样:

export default function GoogleLoginButton() {

  return (
    <>
      <div
        id="g_id_onload"
        data-client_id="XXXXXX"
        data-auto_prompt="false"
      ></div>
      <div
        className="g_id_signin"
        data-type="standard"
        data-size="large"
        data-theme="outline"
        data-text="sign_in_with"
        data-shape="rectangular"
        data-logo_alignment="left"
      ></div>
    </>
  );
}
Run Code Online (Sandbox Code Playgroud)

第一次加载页面时,Google 登录按钮正确显示,我可以登录。然后登录按钮被注销按钮取代。问题是,当我单击应该再次呈现 Google 登录按钮的注销按钮时,它不会重新出现!这是为什么?

我可以补充一点,注销后刷新页面会返回 Google 按钮。

reactjs google-signin google-identity

16
推荐指数
2
解决办法
8720
查看次数

Google YOLO停止工作:不允许客户端来源使用此API

我想这与https://news.ycombinator.com/item?id=17044518#17045809有关,但谷歌yolo停止为每个人工作.我像许多人一样用它来登录,它只是停止工作.

我的域名显然已添加到console.developers.google.com上

任何ETA都可以解决这个问题?对于依赖它的人来说,一些信息会很棒.

最好的祝福

google-identity

15
推荐指数
1
解决办法
3770
查看次数

Google 的登录按钮在加载后会调整大小

我正在关注https://developers.google.com/identity/gsi/web/guides/display-button#javascript将 Google 登录添加到我的 ReactJS 应用程序中。

我添加了

 <script>
      function handleCredentialResponse(response) {
        console.log("Encoded JWT ID token: " + response.credential);
      }

      window.onload = function () {
        google.accounts.id.initialize({
          client_id: "YOUR_GOOGLE_CLIENT_ID",
          callback: handleCredentialResponse,
        });
        google.accounts.id.renderButton(
          document.getElementById("buttonDiv"),
          { theme: "filled_blue", size: "large", shape: "pill" } // customization attributes
        );
        google.accounts.id.prompt(); // also display the One Tap dialog
      };
</script>
Run Code Online (Sandbox Code Playgroud)

在 中index.html,在我的组件中,我有一个<div id="buttonDiv"></div>.

但是,当我重新加载页面时会发生以下情况:

在此输入图像描述

加载的初始按钮是正确的,但不知何故调整了大小。我在调试器中暂停了JS执行,发现最初的按钮纯粹是divs,但是调整大小后,它用了aniframe代替。

reactjs google-signin google-identity

13
推荐指数
2
解决办法
5249
查看次数

Google自动“继续为”弹出窗口的文档

如何在我的网站上获得自动的“使用Google登录”框架之一?如果您登录一个帐户并访问例如Kayak.com,就会发生这种情况。我遇到的所有文档都是针对较旧的“使用Google登录”按钮的。

只需访问Kayak.com,这就是它的外观。

在此处输入图片说明

google-signin google-identity

12
推荐指数
1
解决办法
2008
查看次数