我正在使用Firebase创建一个应用程序,其中包含用于身份验证包装器的Friebase UI库。 Firebase用户界面使用谷歌智能锁来检测以前登录的用户,并在再次打开应用程序时自动登录。 当我将另一个谷歌用户添加到应用程序时,会出现问题。然后每次它向我显示一个与所有谷歌用户的对话,我必须选择其中一个添加不必要的步骤。
有没有办法让Firebase Auth将所选用户存储为默认值,然后每次都自动登录?
由于
答案 0 :(得分:0)
事实证明,谷歌比我想象的要聪明。无论如何都会自动选择默认凭据。错误就在我身边:
auth = FirebaseAuth.getInstance();
FirebaseUser fUser = auth.getCurrentUser();
if (fUser != null) { //this line triggers multiple users dialog
startActivity(ActivityAddEventPopup.createIntent(this, null));
finish();
}
signIn();
我的signIn();
总是在没有else块的情况下被调用。这意味着它始终从一开始就触发了FULL身份验证过程(查看图表)。
解决方案是将signIn放在else块中,这样就不会一直调用它。 Firebase Auth将检索最后选择的用户并与他一起登录。