When I call mFirebaseAuth.signOut()
or mFirebaseUser.delete()
my FirebaseAuth.AuthStateListener()
works correct and returns null
as FirebaseUser
instance in onAuthStateChanged
, I refresh UI and show "Sign in with Google" button.
But when I want to log in again, I don't see the pop-up with users (I have 2 users on my device, attached the image). The app shows this pop-up only in first sign in, after that it uses the same user. If I clear app's data on the settings screen I will be able to see this pop-up again.
My question is how to show this pop-up after every sign out.
I run this code when press Sign In button:
GoogleSignInOptions gso = new GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN)
.requestIdToken(getString(R.string.default_web_client_id))
.requestEmail()
.build();
mGoogleApiClient = new GoogleApiClient.Builder(this)
.enableAutoManage(this /* FragmentActivity */, this /* OnConnectionFailedListener */)
.addApi(Auth.GOOGLE_SIGN_IN_API, gso)
.build();
Intent signInIntent = Auth.GoogleSignInApi.getSignInIntent(mGoogleApiClient);
startActivityForResult(signInIntent, FirebaseActivity.REQUEST_SIGN_IN);
In onActivityResult()
, I get an instance of GoogleSignInResult
so everything I need happens after I call startActivityForResult()
.
this code is written to work as copy past just read COMMENTS in code to customize it to ur needs, i prefer to send user to login
I did
mGoogleSignInClient.signOut()
this is working as expected.In the Firebase Auth Quickstart sample code, the sign-out for Google provider includes these steps. Are you calling
GoogleSignInClient.signOut()
when you sign-out?For anyone else who wants this result (as in getting the google account options back) on a different activity.
Add this on the sign in page, and before you pass to the next activity, just call
SignOut()
.and then, in your other class you can call
It's easy, and it will work. Cheers!
Another option is to use the FirebaseUI library. It simplifies sign in and sign out operations in a sense that it will do all the heavy lifting for you.
Kotlin
Java
Hope this helps
You can also define something like this: