Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/196.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 安卓:如何在firebase中分离不同的用户并限制他们登录?_Android_Firebase_Firebase Realtime Database - Fatal编程技术网

Android 安卓:如何在firebase中分离不同的用户并限制他们登录?

Android 安卓:如何在firebase中分离不同的用户并限制他们登录?,android,firebase,firebase-realtime-database,Android,Firebase,Firebase Realtime Database,我有两种类型的用户——客户端和事件成员——我将他们的姓名、电子邮件、密码等保存到firebase数据库中。我将如何限制客户的电子邮件,使其无法在活动成员活动中登录;我如何限制活动成员的电子邮件,使其无法登录到客户端活动?请帮帮我。谢谢大家! 下图显示了我的firebase结构: 在firebase用户数据库中添加一个值,该数据库是您的“成员类型”。 “成员类型”:“true”如果您的成员是客户端,则将其另存为值“成员类型”:“false” 然后,在用户登录到应用程序后,在应用程序中检索该特定用户

我有两种类型的用户——客户端和事件成员——我将他们的姓名、电子邮件、密码等保存到firebase数据库中。我将如何限制客户的电子邮件,使其无法在活动成员活动中登录;我如何限制活动成员的电子邮件,使其无法登录到客户端活动?请帮帮我。谢谢大家!

下图显示了我的firebase结构:

在firebase用户数据库中添加一个值,该数据库是您的
“成员类型”
“成员类型”:“true”
如果您的成员是客户端,则将其另存为值
“成员类型”:“false”

然后,在用户登录到应用程序后,在应用程序中检索该特定用户的信息,并检查该用户的
“成员类型”
是正确还是错误的客户端或事件? 如果
“成员类型”
是客户端,则允许访问clientactivity,否则允许访问EventActivity

您的数据库模型如下所示:

client
    -KrvzqA4GnTsomTzRHtT
        birthday: "23/2/1986"
        country: "Philippines"
        emailAdd: "client's email"
        fname: "Steph"
        lname:"Diaz"
        mobileNum:"Client's mobile"
        password:"password"
        member_type: true
eventMember
    -Ks-RHCoq0bUWJySDvCF
         birthday: "21/8/1992"
         country: "American Samoa"
         emailAdd: "eventmember's email"
         fname: "Patricia"
         lname:"Ortega"
         mobileNum:"eventmember's mobile"
         password:"password"
         member_type: false

您还可以通过布尔值、整数或任何其他您认为有用的数据类型来区分成员类型。

您有两种类型的用户,但正如我所看到的,您可以将确切的信息保存给客户端和事件用户。因此,首先,您可以为这两个用户创建一个firebase结构,只需添加一个布尔变量CLIENT,指示用户是客户端还是事件成员。为了回答您的另一个问题,您添加了另一个布尔变量成员,该成员指示用户是否可以登录到事件或客户端活动。这是我的firebase模型

users
-KrvzqA4GnTsomTzRHtT
    client: false
    birthday: "23/2/1986"
    country: "Philippines"
    emailAdd: "client's email"
    fname: "Steph"
    lname:"Diaz"
    mobileNum:"Client's mobile"
    password:"password"
    member: true

添加一个包含成员类型的新列,然后从该列开始添加布尔值,该布尔值指示用户是否为事件成员。然后你可以随时检查它。@HonorLT:我还需要使用Firebaseauth吗?你能给我看一些代码来说明用户是否是事件成员吗?非常感谢。是的,您仍然需要FirebaseAuth。当用户输入他/她的凭据时,您将检索此布尔值(称为isEventMember)并检查其是否为真。如果是,您可以打开另一个活动。如果不是,您可以通知用户他/她无权访问它(可能会显示Toast消息或类似的内容)