首页 > 解决方案 > 在 Flutter 中使用相同的 Firebase 将用户和卖家分开

问题描述

一切顺利

我正在尝试使用同一个应用程序制作一个应用程序,您可以是用户,也可以是卖家。在我们的例子中,卖家将是一家餐厅,而用户将是餐厅的常客。我的问题是,如果我登录“我是餐厅登录”,而不是用户登录。在重新启动应用程序自动登录并将用户带到用户主页,而不是卖家主页,因为我正在使用 auth.currentUser != null ?

然后根据auth状态添加主屏幕或登录屏幕,但它是一般的auth状态。我如何让它根据登录用户的类型显示不同的主屏幕。所以我知道为什么它把我带到用户主页 - 我设置它这样做,我将如何让它把我带到一个或另一个

谢谢你

标签: firebaseflutterdartfirebase-authentication

解决方案


Firebase 身份验证没有内置用户类型的概念,因此您必须自己构建它。

您可以将用户类型作为自定义声明存储在用户配置文件中,或者存储在云托管数据库中。在任何一种情况下,您都应该从安全的环境中执行此操作,以便用户无法更改其类型(除非您的用例特别希望他们能够更改)。

因此,您的应用程序在启动时会采取以下步骤:

  1. 登录用户,或恢复其身份验证状态。
  2. 决定了他们的类型。
  3. 将它们重定向到正确的屏幕。

另见:


推荐阅读