FirebaseAuth.getInstance()。getCurrentUser()返回以前注销的用户 [英] FirebaseAuth.getInstance().getCurrentUser() returns previously logged out user

查看:121
本文介绍了FirebaseAuth.getInstance()。getCurrentUser()返回以前注销的用户的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有使用FirebaseAuth和FirebaseDatabase功能的Android应用程序。一切工作正常。在上个星期,我和一个用户(用户1)一起工作,作为应用程序的管理员,昨天我把另一个用户(用户2)注册为普通用户(不是用户2)因为我所有的管理功能都正常工作,我从来没有再次以用户1的身份登录。然而,我不得不今天卸载我的应用程序,那时我以用户2身份登录。



当我重新安装它时,我自动以用户1登录一些原因。所以我注销并以用户2登录并再次卸载。同样的事情一再发生。



我检查了我从FirebaseAuth获取的用户ID及其用户ID,这是我以前注销的用户ID。

  FirebaseAuth auth = FirebaseAuth.getInstance(); 
if(auth!= null)
{
String uid = auth.getCurrentUser.getUid();

$ / code>

请帮我解决这个问题,并在下面添加了我注销的代码。

pre $ AuthUI.getInstance()
.signOut(ShopHome.this)
.addOnCompleteListener(new OnCompleteListener< ; void>(){
public void onComplete(@NonNull Task< Void> task){
// Code for login Activity
}
});


解决方案

您正在使用 FirebaseUI-Android ,它使用 Smart Lock 即使在卸载应用程序之后也会自动登录。如果您不想自动登录,则可以使用Smart Lock禁用自动登录功能。


I have Android app which uses FirebaseAuth and FirebaseDatabase functionalities. Everything was working fine.

During last week I was working with one user (user 1) as an admin of the app and yesterday I registered another user (user 2) as a normal user(not admin).

Since all my admin functionalities were working fine, I never logged in as the user 1 again. However I had to uninstall my app today and by that time I was logged in as user 2.

When I reinstalled it again, I was automatically logged in as user 1 for some reason. So I logged out and logged in as user 2 again and uninstalled again. The same thing happened again and again.

I checked the user ID I am getting from the FirebaseAuth and its the user 1's user ID which I had logged out previously.

FirebaseAuth auth = FirebaseAuth.getInstance();
if(auth !=null)
{
    String uid = auth.getCurrentUser.getUid();
}

Please help me to solve this issue and I have added my logged out code below.

 AuthUI.getInstance()
    .signOut(ShopHome.this)
    .addOnCompleteListener(new OnCompleteListener<Void>() {
        public void onComplete(@NonNull Task<Void> task) {
           // Code for login Activity              
         }
    });

解决方案

You are using FirebaseUI-Android which uses Smart Lock to automatically log you in, even after after an uninstall of the app. If you do not want to automatically log-in, you can disable automatic sign in with Smart Lock.

这篇关于FirebaseAuth.getInstance()。getCurrentUser()返回以前注销的用户的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆