FirebaseAuth.getInstance()。getCurrentUser()返回先前已注销的用户

时间:2016-06-17 17:17:04

标签: android firebase firebase-authentication firebaseui

我有Android应用,它使用FirebaseAuth和FirebaseDatabase功能。一切都很好。

在上周,我与一个用户(用户1)合作,作为应用程序的管理员,昨天我将另一个用户(用户2)注册为普通用户(不是管理员)。

由于我的所有管理功能都运行良好,我再也没有以用户1的身份登录。但是我今天必须卸载我的应用程序,那时我以用户2的身份登录。

当我再次重新安装时,由于某种原因,我自动以用户1身份登录。所以我退出并再次以用户2身份登录并再次卸载。同样的事情一次又一次地发生。

我检查了我从FirebaseAuth获取的用户ID及其之前已注销的用户1的用户ID。

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

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

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

2 个答案:

答案 0 :(得分:1)

您正在使用FirebaseUI-Android使用Smart Lock自动登录,即使在卸载应用后也是如此。如果您不想自动登录,可以使用Smart Lock禁用自动登录。

答案 1 :(得分:0)

使用其他设备制作新的模拟器。这是我绕过这个问题的方式。