用户和管理员使用Firebase登录Android中的重定向

时间:2018-04-10 17:11:41

标签: android firebase android-activity admin

我一直试图通过Android中的不同帐户登录,我无法为不同的用户提供不同的重定向。主要是我无法从身份验证中获取用户的电子邮件作为条件,以便我可以有不同的重定向。从现在开始尝试不同的步骤。有人可以帮忙吗?

 mAuth.signInWithEmailAndPassword(email, password).addOnCompleteListener(this, new OnCompleteListener<AuthResult>() {
                @Override
                public void onComplete(@NonNull Task<AuthResult> task) {

                    if (task.isSuccessful() == true) {

                        if(email.equals("dummy@gmail.com"))
                        {
                            progressDialog.dismiss();
                            finish();
                            startActivity(new Intent(Login.this,RegisterActivity.class));
                        }
                        else {
                            progressDialog.dismiss();
                            finish();
                            startActivity(new Intent(Login.this, MainActivity.class));
                        }

                    } else if (task.isSuccessful() == false) {
                        progressDialog.dismiss();
                        Toast.makeText(Login.this, "Invalid emailid or password.", Toast.LENGTH_SHORT).show();
                        passwordUser.getText().clear();
                        emailUser.getText().clear();
                        emailUser.requestFocus();
                        return;
                    }
                }
            });

1 个答案:

答案 0 :(得分:0)

只有firebase无法帮助您确定用户的角色。您需要将firebase auth与数据库集成以确定用户的角色。

要访问登录用户的电子邮件,请遵循此代码

FirebaseUser user = FirebaseAuth.getInstance().getCurrentUser();
if (user != null) {
// Name, email address, and profile photo Url
String name = user.getDisplayName();
String email = user.getEmail();
Uri photoUrl = user.getPhotoUrl();

// Check if user's email is verified
boolean emailVerified = user.isEmailVerified();

// The user's ID, unique to the Firebase project. Do NOT use this value to
// authenticate with your backend server, if you have one. Use
// FirebaseUser.getIdToken() instead.
String uid = user.getUid();
}
相关问题