【发布时间】:2020-08-17 02:49:52
【问题描述】:
我正在开发一个 android 应用程序并使用 firebase 数据库。它包含不同角色的授权和少量活动。如果您以“安装者”的身份进入,则打开一项活动,如果以“联络中心”的身份进入 - 另一项活动,但现在这并不重要。所以我需要检查输入的一对电子邮件和密码的角色。那我该怎么办?
这是我的数据库结构:
登录代码:
mAuth.signInWithEmailAndPassword(email,pass).addOnCompleteListener(new OnCompleteListener<AuthResult>() {
@Override
public void onComplete(@NonNull Task<AuthResult> task) {
if(task.isSuccessful()){
Toast.makeText(MainActivity.this,"Аутентификация прошла успешно",Toast.LENGTH_SHORT).show();
startActivity(new Intent(getApplicationContext(),RoleInstallerForm.class));
}
else {
Toast.makeText(MainActivity.this,"Проверьте правильность введённых данных", Toast.LENGTH_SHORT).show();
ProgressBar.setVisibility(View.GONE);
}
}
});
【问题讨论】:
-
如果您尝试过任何代码,请添加一些代码并详细说明您的问题。 . .
-
我没有可以解决我的问题的代码,我尝试使用 Firebase 进行默认授权(来自助手的示例)。那是我在 android studio 的第一个项目,所以我只能在网上搜索。我想要什么:从 firebase 数据库获取用户角色以打开适当的页面。 Atm i 使用用户列表(firebase 控制台中的身份验证点)并且没有任何方法可以为用户分配角色。如果我创建自定义数据库并使用用户数据填充它,我可以创建一个捕获一对电子邮件并传递适当角色的方法(我已经从上面的 c# 和 sql 中编写了一个示例)并进一步使用它。
-
我只需要方向(尝试使用 c# 和 sql 中的数据库数据或使用 firestone 的自定义声明)。只是我不知道什么是可能的,atm 网络没有给我答案。
-
是的,当新用户注册时,您必须更新数据库中的角色。并在您需要时在应用程序中获取它。我不知道您的应用程序结构将如何,也不知道您将如何处理这些角色,所以我帮不上什么忙。如果您可以添加更多信息,我可以提供帮助。 :-)
-
现在的结构:Auth 页面,2 个不同的页面用于适当的角色和带有设置的 mb 页面。我想要的 atm:在进行身份验证时,获取用户的角色并基于它打开页面并在某个地方显示他的名字。
标签: android firebase firebase-security roles user-roles