首页 > 解决方案 > Google 登录 Firebase 身份验证,显示“选择帐户”

问题描述

您好,我正在使用 firebase 和 google 登录。一切正常,但我不知道如何显示“选择帐户”对话框。当用户不在 firebase auth 用户中时,它不会出现。我想显示这个对话框。这就是我创建身份验证的方式(它在片段中)

    gso = new GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN)
            .requestIdToken(getActivity().getResources().getString(R.string.key))
            .requestEmail()
            .build();

    mGoogleApiClient = new GoogleApiClient.Builder(getActivity())
            .enableAutoManage(((AppCompatActivity)getActivity()), this)
            .addApi(Auth.GOOGLE_SIGN_IN_API, gso)
            .build();
  // and start activity

  Intent signInIntent = Auth.GoogleSignInApi.getSignInIntent(mGoogleApiClient);
    startActivityForResult(signInIntent, RC_SIGN_IN);

标签: javaandroidfirebasegoogle-authentication

解决方案


那是因为您没有退出您的谷歌帐户(不是 Firebase)。尝试退出您的谷歌帐户:

signOutButton.setOnClickListener(new View.OnClickListener() {           
    @Override
    public void onClick(View view) {
        firebaseAuth.signOut();
        signInClient.signOut();        //here

        nameTextView.setText("Google Account Name");

        Toast.makeText(view.getContext(), "Sign out successfully", Toast.LENGTH_SHORT).show();
    }
});

推荐阅读