зарегистрироваться и войти в систему в Android через FireStore - PullRequest
0 голосов
/ 25 апреля 2018

Я новичок в Android, я пытаюсь разработать простую систему в Android и использую облачную бета-версию Firestore в качестве базы данных. Я уже сделал регистрационную часть, которая записывает данные (адрес электронной почты и пароль) в базу данных. но я не знаю процесс входа в систему, поскольку я хочу, чтобы система считывала данные из базы данных и сопоставляла их с электронными письмами и паролями из базы данных. Может кто-нибудь мне помочь? Заранее спасибо. Регистрационная активность приведена ниже:

public class RegisterActivity extends AppCompatActivity {

    private Button btnRegister;

    private EditText edtxtEmail;
    private EditText edtxtTpnumber;
    private EditText edtxtDepartment;
    private EditText edtxtPassword;
    private EditText edtxtConfirmpassword;

    private FirebaseFirestore rFireStore;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_register);

        rFireStore = FirebaseFirestore.getInstance();

        btnRegister = (Button) findViewById(R.id.btnregister);
        edtxtEmail = (EditText) findViewById(R.id.edtxtemail);
        edtxtTpnumber = (EditText) findViewById(R.id.edtxttpnumber);
        edtxtDepartment = (EditText) findViewById(R.id.edtxtdepartment);
        edtxtPassword = (EditText) findViewById(R.id.edtxtpassword);
        edtxtConfirmpassword = (EditText) findViewById(R.id.edtxtconfirmPassword);

        btnRegister.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                String Email = edtxtEmail.getText().toString();
                String TPnumber = edtxtTpnumber.getText().toString();
                String Department = edtxtDepartment.getText().toString();
                String Password = edtxtPassword.getText().toString();
                String ConfirmPassword = edtxtConfirmpassword.getText().toString();

                Map<String, String> userMap = new HashMap<>();
                userMap.put("Email Address", Email);
                userMap.put("TP Number", TPnumber);
                userMap.put("Department", Department);
                userMap.put("Password", Password);
                userMap.put("Confirm Pass", ConfirmPassword);

                rFireStore.collection("Users").document("Students").set(userMap).addOnSuccessListener(new OnSuccessListener<Void>() {
                    @Override
                    public void onSuccess(Void aVoid) {
                        Toast.makeText(RegisterActivity.this, "Data Saved!!", Toast.LENGTH_SHORT).show();
                    }
                }).addOnFailureListener(new OnFailureListener() {
                    @Override
                    public void onFailure(@NonNull Exception e) {
                        Toast.makeText(RegisterActivity.this, "Data Failed!!", Toast.LENGTH_SHORT).show();
                    }
                });

                /*rFireStore.collection("Users").add(userMap).addOnSuccessListener(new OnSuccessListener<DocumentReference>() {
                    @Override
                    public void onSuccess(DocumentReference documentReference) {
                        Toast.makeText(RegisterActivity.this, "Data Saved!!", Toast.LENGTH_SHORT).show();
                    }
                }).addOnFailureListener(new OnFailureListener() {
                    @Override
                    public void onFailure(@NonNull Exception e) {
                        Toast.makeText(RegisterActivity.this, "Data Failed!!", Toast.LENGTH_SHORT).show();
                    }
                });*/
            }
        });
    }
}

1 Ответ

0 голосов
/ 06 сентября 2018

Для входа в систему вы можете использовать это:

for (QueryDocumentSnapshot documentSnapshot : task.getResult()) {
    if (task.isSuccessful()) {
        //task result = 1
    }
}

if (task.getResult().size() == 0) {
    //task result = 0 
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...