[Video Summary] Ch. 8.2 Firebase Email & Password Signup / Login in SwiftUI, Snacktacular App (2024)
Mô tả nhanh
Video này hướng dẫn cách thiết lập dịch vụ xác thực trong ứng dụng Firebase và viết code SwiftUI để người dùng có thể tạo tài khoản bằng email và mật khẩu, sau đó sử dụng thông tin đăng nhập này để đăng nhập vào ứng dụng.
Video
Mô tả chi tiết
Video này hướng dẫn cách thiết lập dịch vụ xác thực trong ứng dụng Firebase và viết code SwiftUI để người dùng có thể tạo tài khoản bằng email và mật khẩu, sau đó sử dụng thông tin đăng nhập này để đăng nhập vào ứng dụng. Cụ thể:
-
Thiết lập Firebase Authentication:
- Vào Firebase console, chọn dự án Snacktacular.
- Chọn "Authentication", sau đó "Get Started".
- Chọn "Email/Password" và bật nó lên.
-
Tạo Giao Diện Đăng Nhập (Login View) trong SwiftUI:
- Đổi tên
ContentViewthànhLoginView. - Import
FirebasevàFirebase/Auth. - Thêm một
Imagelogo. - Tạo các
@Statevariableemailvàpasswordđể lưu trữ dữ liệu người dùng nhập vào. - Thêm
TextFieldcho email vàSecureFieldcho mật khẩu.- Sử dụng modifier
.keyboardType(.emailAddress)choTextFieldemail để hiển thị bàn phím email đặc biệt, và.autocorrectionDisabled()để tắt tự động sửa lỗi. - Sử dụng modifier
.submitLabel(.next)để thay đổi label của nút return trên bàn phím thành "Next" trênTextFieldemail và.submitLabel(.done)trênSecureFieldpassword.
- Sử dụng modifier
- Thêm
Groupđể áp dụng modifier chung cho cảTextFieldvàSecureField, bao gồm.textFieldStyle(.roundedBorder)và.overlayđể tùy chỉnh đường viền.
-
Thêm Button và Màu Sắc Tùy Chỉnh:
- Thêm
HStackđể chứa hai button "Sign Up" và "Log In". - Thêm button style modifier
.buttonStyle(.borderedProminent). - Tạo một color set mới tên
snackColortrong Asset Catalog để tùy chỉnh màu sắc button. - Sử dụng modifier
.tint(.snack)để áp dụng màu sắc tùy chỉnh cho button. - Thêm padding cho button để tạo khoảng cách.
- Thêm
-
Xây Dựng Chức Năng Đăng Ký (Sign Up):
- Tạo function
register(). - Sử dụng
Auth.auth().createUser(withEmail:password:completion:)để tạo tài khoản mới. - Xử lý lỗi và in thông báo lỗi.
- Tạo các
@StatevariableshowingAlert,alertMessagevà sử dụng.alertđể hiển thị thông báo lỗi. - Nếu đăng ký thành công, in thông báo "Registration Success".
- Gọi hàm
register()khi người dùng bấm nút "Sign Up".
- Tạo function
-
Xây Dựng Chức Năng Đăng Nhập (Log In):
- Tạo function
login(). - Sử dụng
Auth.auth().signIn(withEmail:password:completion:)để đăng nhập. - Xử lý lỗi và in thông báo lỗi.
- Nếu đăng nhập thành công, in thông báo "Login Success".
- Gọi hàm
login()khi người dùng bấm nút "Log In".
- Tạo function
-
Kiểm Thử:
- Chạy ứng dụng trên simulator.
- Đăng ký tài khoản mới.
- Kiểm tra thông tin người dùng trong Firebase console.
- Đăng nhập bằng tài khoản đã tạo.
- Kiểm tra kết quả trong console.
Chúc bạn có những trải nghiệm thú vị và thành công trên con đường chinh phục lập trình iOS/macOS với Swift và SwiftUI!
