Ứng dụng MyStore] Bài 4: (P2) Xây dựng chức năng đăng nhập đăng ký trong ứng dụng.

1262


Demo

Xem Bài 4 phần 1
Tiếp theo phần một chúng ta sẽ tiến hành code chức năng đăng ký và đăng nhập.

  • Đầu tiên mình cung cấp cho các bạn 2 hàm trong lớp Utils.java mà mình sẽ cần dùng tới:

  • Lớp Constants.java lớp này chứa các tên các Note trên firebase

Theo dõi cấu trúc lưu trữ :

CHỨC NĂNG ĐĂNG KÝ TÀI KHOẢN

  1. Đầu tiên Tạo một RegisterService.java để xử lý đăng ký, khi đăng ký thành công sẽ gửi 1 email active tài khoản tới email đã đăng ký đồng thời lưu dữ liệu vào database.

Tạo tiếp một interface để hứng dữ liệu RegisterListener.java

Bây giờ quay lại RegisterActivity.java để xử lý.
Tiến hành gọi RegisterService.java để thực hiện đăng ký tài khoản.

Vậy là cơ bản đã xong chức năng đăng ký.

Kết quả như sau:


Lưu ý đây chỉ là phần core mình vẫn chưa xử lý hết các trường hợp, các bạn nhớ check kỹ và tự bổ sung thêm

CHỨC NĂNG ĐĂNG NHẬP

Ở chức năng đăng ký các bạn lưu ý chúng ta cần truy cập Email để active tài khoản, nếu các bạn không thích có thể bỏ nó đi.

Tiếp Tục:
Tạo Model Users.java  model này chứa thông tin users sau khi đăng nhập, gồm uid là mã cố định của mỗi users.
Các thông tin này đã được lưu vào bảng USERS trong bước đăng ký ở trên.
Tuy nhiên các bạn cũng có thể update câp nhật tùy ý của mình.

Tiếp tục tạo một LoginServices.java như ở Register lớp này chỉ có 1 chức năng duy nhất là xác thực tài khoản thôi mình chia nhỏ ra cho dễ quản lý.

Tạo interface lắng nghe  LoginListener.java

Cuối cùng quay lại LoginActivity.java để xử lý.

  • FirebaseAuth.AuthStateListener mAuthListener : Dùng để lắng nghe thông tin users đã đăng nhập, có nghĩa là khi bạn đăng nhập thành công các thông tin đăng nhập sẽ được lắng nghe trên Activity này.
    Với phương thức onAuthStateChanged bạn có thể lấy ra thông tin users đã đăng nhập.
  • Công việc còn lại thì đơn giản gọi LoginServices.java ra để check users và handle các trường hợp là xong.

Lưu ý lớn : Có khá nhiều thứ các bạn cần tự mình xử lý, ở tutorial này mình chỉ thực hiện các chức năng core và phát triển, handle ….. sẽ là phần của các bạn.

Link GitHub.

——————
Bài viết tiếp theo: Login FaceBook…