重新验证用户将其注销

问题描述 投票:0回答:1

这是在 Firebase 身份验证删除之前重新验证用户身份的代码。

 final user = FirebaseAuth.instance.currentUser!;

 AuthCredential cred = EmailAuthProvider.credential(
    email: email,
    password: password,
 );
 UserCredential userCredential =
      await user.reauthenticateWithCredential(cred);
 
 // await userCredential.user?.delete(); commented out to test the reauthentication exceptions

当我使用正确的电子邮件地址和错误的密码进行测试时,我收到错误消息,但应用程序正常。

但是当我使用错误的电子邮件进行测试时,当我再次按下按钮时,应用程序会由于当前用户为空而崩溃。

当我重新启动应用程序时,我返回到登录页面。因此它会注销当前用户。这是为什么?

flutter firebase-authentication
1个回答
0
投票

使用不同的电子邮件地址登录意味着您正在使用不同的帐户登录。显然,即使新登录失败,也会注销当前帐户。

如果您不想退出当前用户,请考虑为每个用户使用单独的

FirebaseApp
对象。那里没有代码示例,但您应该能够根据其他语言和 Flutter 的参考文档使其工作。

© www.soinside.com 2019 - 2024. All rights reserved.