gpt4 book ai didi

android - GoogleSignInResult 在生产环境中返回 null GoogleSignInAccount

转载 作者:行者123 更新时间:2023-12-03 21:05:50 28 4
gpt4 key购买 nike

我正在关注 this在我的应用程序中集成谷歌身份验证。它在调试 apk 中运行良好,但在发布时,每次都失败。

我已经在云平台上注册了 debug 和 relese SHA-1 key 。

引用代码 fragment -

private void someMethid(){        
String languageURL = "https://www.googleapis.com/auth/profile.language.read";
String genderURL = "https://www.googleapis.com/auth/user.gender.read";
String birthdayURL = "https://www.googleapis.com/auth/user.birthday.read";
GoogleSignInOptions option = new
GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN)
.requestEmail()
.requestScopes(
new Scope(languageURL),
new Scope(genderURL),
new Scope(birthdayURL)
)
.build();
client = GoogleSignIn.getClient(this, option);
signIn();
}

private void signIn() {

Intent signInIntent = client.getSignInIntent();
startActivityForResult(signInIntent, RC_SIGN_IN);
}

@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);

if (requestCode == RC_SIGN_IN) {

Task<GoogleSignInAccount> task = GoogleSignIn.getSignedInAccountFromIntent(data);
handleSignInResult(task);
}
}

private void handleSignInResult(Task<GoogleSignInAccount> completedTask) {
GoogleSignInAccount acct = null;
try {
acct = completedTask.getResult(ApiException.class);
if (acct != null) {
fetchData(acct);
}
else {
showDialogMessage("Email verification failed", "failed to get Google account information", false);
client.revokeAccess();
client.signOut();
}
} catch (ApiException e) {
e.printStackTrace();
showDialogMessage("Email verification failed", "failed to get Google account information", false);
client.revokeAccess();
client.signOut();
}

登录提示打开,确实要求谷歌帐户,但不要求请求范围的权限并为 GoogleSignInAccount 返回 null。

最佳答案

当您说发布时时,您是指从 Google Play 安装该应用程序的时间吗?如果您使用 "Play App Signing" ,您需要从 Google Play 控制台添加签名 key ,而不是从您的存储库/ keystore 。这是因为 Google Play 代表您签署了该应用。

诊断您的问题:应用程序似乎是使用与身份验证服务期望的 key 不同的 key 进行签名的,因此该服务拒绝了它。在你知道的情况下它已经辞职了。

https://support.google.com/googleplay/android-developer/answer/9842756?hl=en

如果这不起作用,请提供更多详细信息:)。如果您需要更多帮助,请告诉我。

关于android - GoogleSignInResult 在生产环境中返回 null GoogleSignInAccount,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66766528/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com