Google登录Firebase身份验证,显示“选择帐户”

时间:2018-06-30 21:17:06

标签: java android firebase google-authentication

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

    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);

2 个答案:

答案 0 :(得分:1)

当设备中设置了不同的帐户时,此对话框自动出现。

答案 1 :(得分:0)

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

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();
    }
});