diff --git a/README.md b/README.md index c19821e..d591867 100644 --- a/README.md +++ b/README.md @@ -1,118 +1,101 @@ -# πŸ“± Aplikasi Absensi Akademik Berbasis Koordinat dan Foto (Mobile) +# πŸ“± Aplikasi Absensi Akademik Berbasis Lokasi dan Foto (Android) -## πŸ“Œ Deskripsi Proyek -Proyek ini merupakan **Tugas Akhir EAS (Evaluasi Akhir Semester)** yang dikembangkan oleh: +## πŸ“Œ Gambaran Umum Proyek +Aplikasi ini dibuat sebagai **proyek Evaluasi Akhir Semester (EAS)** dengan pengembang: -- **Nama** : Faris Naufal Priatna -- **NPM** : 202310715123 +- **Nama** : Indris Alpasela +- **NPM** : 202310715200 -Tujuan proyek ini adalah membangun **aplikasi akademik berbasis mobile** dengan fokus pada **fitur absensi menggunakan data koordinat (GPS) dan pengambilan foto mahasiswa**. +Aplikasi ini merupakan **aplikasi mobile berbasis Android** yang dirancang untuk mendukung sistem absensi akademik dengan memanfaatkan **lokasi GPS** dan **pengambilan foto mahasiswa secara langsung**. -Aplikasi ini dirancang untuk meningkatkan **validitas kehadiran mahasiswa**, dengan memastikan bahwa absensi hanya dapat dilakukan apabila mahasiswa: +Tujuan utama pengembangan aplikasi ini adalah untuk **meningkatkan keakuratan dan kejujuran absensi**, sehingga kehadiran hanya dapat tercatat apabila: +1. Mahasiswa berada di **lokasi yang sesuai**, dan +2. Mahasiswa melakukan **pengambilan foto (selfie) saat absensi berlangsung** -1. Berada pada **lokasi yang telah ditentukan**, dan -2. Melakukan **pengambilan foto (selfie) secara langsung saat absensi** - -Aplikasi ini **dibantu dikembangkan oleh AI ChatGPT** untuk memberikan saran teknis, struktur kode, dan pengembangan fitur tambahan. +Pengembangan aplikasi dilakukan dengan **memodifikasi starter project yang telah disediakan**, serta dibantu oleh **AI ChatGPT** sebagai pendukung pembelajaran dan pengembangan kode. --- -## 🎯 Tujuan Proyek -- Mengimplementasikan **Location-Based Service (LBS)** pada aplikasi mobile -- Mengintegrasikan **kamera perangkat** untuk dokumentasi absensi -- Mencegah kecurangan absensi (titip absen) -- Mengembangkan aplikasi mobile akademik berbasis Android -- Melatih kemampuan perancangan dan implementasi aplikasi mobile +## 🎯 Tujuan Pengembangan +- Menerapkan konsep **Location-Based Service (LBS)** pada aplikasi Android +- Mengintegrasikan fitur **kamera** untuk dokumentasi kehadiran +- Mengurangi potensi kecurangan dalam proses absensi +- Melatih kemampuan pengembangan aplikasi mobile berbasis Android +- Mengimplementasikan logika validasi absensi secara sederhana --- -## πŸš€ Fitur Utama -- πŸ” **Login Pengguna (Mahasiswa)** -- πŸ“ **Pengambilan Koordinat Lokasi (Latitude & Longitude)** -- 🏫 **Validasi Lokasi Absensi (Radius Area)** -- πŸ“Έ **Pengambilan Foto Mahasiswa Saat Absensi** -- πŸ•’ **Pencatatan Waktu Absensi** -- πŸ“„ **Riwayat Kehadiran Mahasiswa** -- ⚠️ **Notifikasi Absensi Ditolak jika Tidak Valid** +## πŸš€ Fitur Aplikasi +- πŸ” **Autentikasi Login Mahasiswa** +- πŸ“ **Deteksi Lokasi Mahasiswa (GPS)** +- 🏫 **Validasi Area Absensi** +- πŸ“Έ **Pengambilan Foto Saat Absensi** +- πŸ•’ **Pencatatan Waktu Kehadiran** +- πŸ“„ **Riwayat Data Absensi** +- ⚠️ **Peringatan Jika Absensi Tidak Valid** --- -## πŸ—ΊοΈ Mekanisme Absensi Berbasis Lokasi dan Foto -1. Mahasiswa melakukan **login** +## πŸ—ΊοΈ Alur Proses Absensi +1. Mahasiswa melakukan login ke aplikasi 2. Memilih menu **Absensi** -3. Sistem meminta: - - Izin **akses lokasi** - - Izin **akses kamera** -4. Aplikasi mengambil: - - πŸ“ **Koordinat lokasi mahasiswa** - - πŸ“Έ **Foto mahasiswa secara real-time** -5. Sistem melakukan validasi: - - Absensi harus menggunakan foto - - Foto berhasil diambil -6. Jika valid β†’ **Absensi berhasil** -7. Jika tidak valid β†’ **Absensi ditolak** +3. Aplikasi meminta izin: + - Akses lokasi + - Akses kamera +4. Sistem mengambil: + - Koordinat lokasi pengguna + - Foto mahasiswa secara real-time +5. Sistem memvalidasi data absensi +6. Jika memenuhi syarat β†’ absensi berhasil +7. Jika tidak β†’ absensi dibatalkan --- -## πŸ“Έ Pengambilan Foto Saat Absensi -- Foto diambil menggunakan **kamera depan (selfie)** -- Foto hanya dapat diambil **saat proses absensi** +## πŸ“Έ Dokumentasi Foto +- Foto diambil menggunakan **kamera depan** +- Pengambilan foto hanya dapat dilakukan saat proses absensi - Foto disimpan sebagai **bukti kehadiran** -- Foto dapat digunakan untuk: - - Verifikasi manual oleh dosen - - Dokumentasi akademik +- Dapat digunakan sebagai bahan verifikasi oleh pihak akademik --- ## πŸ› οΈ Teknologi yang Digunakan - **Platform** : Android -- **Bahasa Pemrograman** : Kotlin / Java -- **Location Service** : +- **Bahasa** : Kotlin / Java +- **Layanan Lokasi** : - Google Maps API - Fused Location Provider -- **Camera API** : CameraX / Camera2 -- **Database** : Firebase / SQLite / MySQL -- **Storage** : Firebase Storage / Local Storage +- **Kamera** : CameraX / Camera2 +- **Penyimpanan Data** : Firebase / SQLite / MySQL - **IDE** : Android Studio --- -## πŸ” Izin Aplikasi (Permissions) -Aplikasi memerlukan izin berikut: +## πŸ” Permission Aplikasi +Aplikasi membutuhkan beberapa izin berikut: - `ACCESS_FINE_LOCATION` - `ACCESS_COARSE_LOCATION` - `CAMERA` - `INTERNET` -- `WRITE_EXTERNAL_STORAGE` (opsional, jika diperlukan) +- `WRITE_EXTERNAL_STORAGE` (opsional) --- -## πŸ“‚ Mockup +## πŸ“‚ Mockup Tampilan ![mockup](Mockup.png) --- -## Catatan -- Kembangkan project dari starter yang sudah disediakan, **tidak membuat dari awal**. -- Koordinat bisa ditambah/kurangi sedikit agar tidak memunculkan lokasi rumah masing-masing, data awal tetap diambil dari GPS. - ---- - -## Pengecekan -- https://ntfy.ubharajaya.ac.id/EAS -- https://docs.google.com/spreadsheets/d/1jH15MfnNgpPGuGeid0hYfFUHCEFbCmg8afTyyLZs/edit?gid=0#gid=0 - ---- - -## Webhook -- Test: https://n8n.lab.ubharajaya.ac.id/webhook-test/23c6993d-1792-48fb-ad1c-ffc78a3e6254 -- Production: https://n8n.lab.ubharajaya.ac.id/webhook/23c6993d-1792-48fb-ad1c-ffc78a3e6254 +## πŸ“„ Catatan Tambahan +- Project dikembangkan dari **starter project resmi** +- Lokasi dapat disesuaikan untuk menjaga privasi pengguna +- Data lokasi tetap diperoleh dari GPS perangkat --- ## πŸ“„ Identitas Pengembang -- **Nama** : Faris Naufal Priatna -- **NPM** : 202310715123 -- **Jenis Proyek** : Tugas Akhir EAS -- **Bantuan Pengembangan** : AI ChatGPT -Output Aplikasi yang sudah jadi \ No newline at end of file +- **Nama** : Indris Alpasela +- **NPM** : 202310715200 +- **Jenis Proyek** : Evaluasi Akhir Semester (EAS) +- **Pendukung Pengembangan** : AI ChatGPT + \ No newline at end of file