How to make a user sign out in Firebase?

前端 未结 13 1612
猫巷女王i
猫巷女王i 2020-12-15 04:22

I am making a simple authentication app in Android using Firebase authentication. Till now I am successful in signing the user in, however the issue is that the user remains

相关标签:
13条回答
  • 2020-12-15 04:43

    Use this code FirebaseAuth.getInstance().signOut();

    0 讨论(0)
  • 2020-12-15 04:52

    use this`

    findViewById(R.id.signout).setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                FirebaseAuth.getInstance().signOut();
                Intent intent = new Intent(currentActivity.this, MainActivity.class);             
    
    intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK);//makesure user cant go back
                    startActivity(intent);
                }
            });`
    
    0 讨论(0)
  • 2020-12-15 04:57

    This one just signs you out from the current application .

    if you are using a fragment do this

    AuthUI.getInstance().signOut(getActivity());
    

    if you are using an activity do this

    AuthUI.getInstance().signOut(getApplicationContext);
    

    cheers!

    0 讨论(0)
  • 2020-12-15 04:58

    if you are using firebaseAuthUI then recommended method is

    public void onClick(View v) {
    if (v.getId() == R.id.sign_out) {
        AuthUI.getInstance()
            .signOut(this)
            .addOnCompleteListener(new OnCompleteListener<Void>() {
                public void onComplete(@NonNull Task<Void> task) {
                    // user is now signed out
                    startActivity(new Intent(MyActivity.this, SignInActivity.class));
                    finish();
                }
            });
        }
    }
    

    according to firebaseAuthUI github Guide.

    0 讨论(0)
  • 2020-12-15 04:59

    Try this one it is working for me.

    FirebaseAuth.getInstance()
            .signOut(this)
            .addOnCompleteListener(new OnCompleteListener<Void>() {
                public void onComplete(@NonNull Task<Void> task) {
                    // user is now signed out
                    startActivity(new Intent(YOUR CURRENT ACTIVITY, ACTIVITY IN WHICH YOU WANT TO MOVE));
                    finish();
                }
            });
    
    0 讨论(0)
  • 2020-12-15 05:01
    FirebaseAuth.getInstance().signOut();
    

    Then, to detect the sign-in status:

    private FirebaseAuth mAuth = FirebaseAuth.getInstance()
    public static boolean mAuthSignIn() {
        if (mAuth != null) {
            FirebaseUser user = mAuth.getCurrentUser();
            return user != null;
        }
        return false;
    }
    
    0 讨论(0)
提交回复
热议问题