penjelasan login
📚 Penjelasan Struktur dan Alur Aplikasi Login Centry
1. Arsitektur Umum Aplikasi
Aplikasi ini dibangun menggunakan Jetpack Compose dengan alur navigasi screen sederhana.
MainActivity
└──> LoginScreen
└──> jika berhasil login ➔ DashboardScreen
2. File Penting dan Perannya
- MainActivity.kt – Mengatur tampilan awal dan navigasi antar screen.
- LoginScreen.kt – Tampilan form login user.
- DashboardScreen.kt – Tampilan utama setelah login sukses.
3. Penjelasan Detail Masing-masing File
➡️ MainActivity.kt
- File pertama kali dijalankan.
- Menampilkan LoginScreen.
- Jika login sukses, berpindah ke DashboardScreen.
➡️ LoginScreen.kt
- Form input email dan password dalam Card putih di atas background.
- Jika login sukses (field tidak kosong), memanggil
onLoginSuccess().
➡️ DashboardScreen.kt
- Tampilan setelah login sukses (menu utama).
4. Alur Jalannya Aplikasi (Step-by-Step)
- Aplikasi dibuka ➔ MainActivity aktif.
- MainActivity menampilkan LoginScreen.
- User input Email dan Password di LoginScreen.
- User klik tombol Login.
- Validasi form: jika sukses ➔
onLoginSuccess()dipanggil. - MainActivity mengganti tampilan ke DashboardScreen.
5. Detail Komponen di LoginScreen.kt
- Box – Layering background dan isi form.
- Image(background) – Background gambar fullscreen.
- Column – Menyusun konten secara vertikal.
- Card – Form login dengan border bulat.
- Image(logo_centry) – Logo di atas form.
- OutlinedTextField – Input Email dan Password.
- PasswordVisualTransformation – Menyembunyikan password input.
- Row (Lupa Password) – Teks kecil di kanan.
- Button(Login) – Tombol untuk mengirim form.
- Row (Social Login) – Ikon Google, LinkedIn, Facebook.
- Image(logo_icon) – Logo kecil di bawah form.
6. Hubungan Antar File
| Fungsi | File | Penjelasan |
|---|---|---|
onLoginSuccess() |
Dipanggil dari LoginScreen | Callback untuk MainActivity |
isLoggedIn (State) |
MainActivity | Mendeteksi apakah user sudah login atau belum |
| Navigasi ke DashboardScreen | MainActivity | Menampilkan DashboardScreen setelah sukses login |
7. Kesimpulan Besar
Aplikasi ini mengandalkan LoginScreen untuk input kredensial, mengandalkan MainActivity untuk mengontrol alur berpindah antar layar, dan DashboardScreen sebagai tujuan utama setelah login sukses.
Komentar
Posting Komentar