Android:谷歌登录时的无限循环
我的应用程序使用谷歌登录已经有几年了。几个月前我修改了实现,直到最近才发现问题。 现在,几周前,登录已经停止工作。当我尝试登录时,登录永远不会结束,而是停留在一个无限循环中,一遍又一遍地显示“连接”屏幕Android:谷歌登录时的无限循环,android,google-play-services,google-login,Android,Google Play Services,Google Login,我的应用程序使用谷歌登录已经有几年了。几个月前我修改了实现,直到最近才发现问题。 现在,几周前,登录已经停止工作。当我尝试登录时,登录永远不会结束,而是停留在一个无限循环中,一遍又一遍地显示“连接”屏幕 互联网连接正常 这会发生在许多用户身上(不确定是否会影响所有谷歌登录用户) 我已经尝试过清除Google Play服务的缓存 Google API客户端仍处于连接状态 我已尝试将所有相关的google库更新为最新版本 我在Android 6上看到了这一点-不确定其他版本是否受到影响 在我发布
- 互联网连接正常
- 这会发生在许多用户身上(不确定是否会影响所有谷歌登录用户)
- 我已经尝试过清除Google Play服务的缓存
- Google API客户端仍处于连接状态
- 我已尝试将所有相关的google库更新为最新版本
- 我在Android 6上看到了这一点-不确定其他版本是否受到影响
onCreate
中创建API客户端:
实际登录方式:
回调(从未接触过)
…如果有人仍然存在此问题,以下是解决方法: 您可能忘了在Firebase上切换Google身份验证
您只需登录到console.firebase.google.com-->单击左侧的身份验证-->单击登录方法-->选择google并切换开关以激活。如果有人仍然存在此问题,以下是解决方法: 您可能忘了在Firebase上切换Google身份验证
您只需登录到console.firebase.google.com-->单击左侧的身份验证-->单击登录方法-->选择google并切换开关即可激活。我打开了此开关。如果我通过Android Studio安装应用程序,它可以工作。但通过google PlayStore,它不允许我进入。继续要求选择gmail帐户我打开了这个开关。如果我通过Android Studio安装应用程序,它会工作。但是通过Google PlayStore,它不允许我进入。一直要求选择gmail帐户
GoogleSignInOptions googleSignInOptions = googleSignInOptionsBuilder
.build();
googleApiClient = new GoogleApiClient.Builder(this)
.enableAutoManage(this,
new GoogleApiClient.OnConnectionFailedListener() {
@Override
public void onConnectionFailed(
@NonNull ConnectionResult connectionResult) {
Logger.error("Google API connection failed");
}
})
.addApi(Auth.GOOGLE_SIGN_IN_API, googleSignInOptions)
.addApi(Games.API)
.build();
public void signInWithGoogle() {
logToServer("Google Sign-In Started");
Intent signInIntent = Auth.GoogleSignInApi
.getSignInIntent(googleApiClient);
startActivityForResult(signInIntent,
GameConstants.GOOGLE_REQUEST_CODE_SIGN_IN);
}
@Override
protected void onActivityResult(final int requestCode, int response,
Intent data) {
super.onActivityResult(requestCode, response, data);
if (requestCode == GameConstants.GOOGLE_REQUEST_CODE_SIGN_IN) {
GoogleSignInResult result = Auth.GoogleSignInApi
.getSignInResultFromIntent(data);
handleGoogleSignInResult(result);
}
}