获取谷歌登录错误 12501
Posted
技术标签:
【中文标题】获取谷歌登录错误 12501【英文标题】:Geting google sign in error 12501 【发布时间】:2017-10-22 10:26:48 【问题描述】:在 google 登录期间,我收到状态码 12501
@Override
public void onActivityResult(final SignInView loginView, int requestCode, int resultCode, Intent data)
if (requestCode == Constants.RC_SIGN_IN)
result = Auth.GoogleSignInApi.getSignInResultFromIntent(data);
Log.d(TAG, "Status code " + result.getStatus().getStatusCode());
final GoogleSignInAccount acct = result.getSignInAccount();
if (resultCode == GoogleSignInStatusCodes.SUCCESS || resultCode == GoogleSignInStatusCodes.SUCCESS_CACHE)
if (acct != null)
new AsyncTask<Void, Void, Void>()
@Override
protected Void doInBackground(Void... params)
googleToken = getGoogleToken();
SignUpViewModel signUpViewModel = new SignUpViewModel.Builder()
.fullName(acct.getDisplayName())
.login(acct.getEmail())
.accessToken(googleToken)
.socialIDP(Constants.GOOGLE_SOCIAL_SOURCE)
.build();
fieldLoginView.onSuccessFetchToken(signUpViewModel);
return null;
.execute();
else if (resultCode == GoogleSignInStatusCodes.SIGN_IN_CANCELLED)
fieldLoginView.onErrorSignin(fieldLoginView.getContext().getString(R.string
.ss_err_13_fb_user_cancelled));
else
String message = GoogleSignInStatusCodes.getStatusCodeString(resultCode);
if (!TextUtils.isEmpty(message))
fieldLoginView.onErrorSignin(message);
else
fieldLoginView.onErrorSignin(fieldLoginView.getContext().getString(R.string
.ss_err_13_fb_user_cancelled));
我已经多次浏览以下链接,并多次检查每个步骤,但都是徒劳的。
New Google sign in android
Error 12501 authenticating with google sign-in
如果我使用从我自己的帐户(测试帐户,我的本地系统的指纹已配置)下载的 google-service.JSON,它工作正常。但是,如果我使用的是开发者帐户(以前存在的帐户,其中集成了 plus API),则它不起作用。
欢迎询问更多详情。从过去的 4-5 天开始,我一直在努力解决这个问题:( .
【问题讨论】:
【参考方案1】:我遇到了同样的问题...
这可能是由于 Sha-1 和 Sha-256 版本和调试密钥不匹配造成的。
将所有三个(调试:Sha-1,发布:Sha-1 和 Sha-256)键添加到 firebase 控制台,然后重新下载 json 并替换。
对我来说很好用。
有时 OAuth 2.0 客户端 ID(Web 应用程序密钥)可能不匹配
【讨论】:
以上是关于获取谷歌登录错误 12501的主要内容,如果未能解决你的问题,请参考以下文章