# πŸ“± Aplikasi Absensi Akademik Berbasis Koordinat dan Foto (Mobile) ## πŸ“Œ Deskripsi Proyek Proyek ini merupakan **Tugas Project Akhir Mata Kuliah Pemrograman Mobile** yang bertujuan untuk membangun **aplikasi akademik berbasis mobile** dengan fokus pada **fitur absensi menggunakan data koordinat (GPS) dan pengambilan foto mahasiswa**. Aplikasi ini dirancang untuk meningkatkan **validitas kehadiran mahasiswa**, dengan memastikan bahwa absensi hanya dapat dilakukan apabila mahasiswa: 1. Berada pada **lokasi yang telah ditentukan**, dan 2. Melakukan **pengambilan foto (selfie) secara langsung saat absensi** --- ## 🎯 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 --- ## πŸš€ 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** --- ## πŸ—ΊοΈ Mekanisme Absensi Berbasis Lokasi dan Foto 1. Mahasiswa melakukan **login** 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: - Lokasi berada dalam **radius absensi** - Foto berhasil diambil 6. Jika valid β†’ **Absensi berhasil** 7. Jika tidak valid β†’ **Absensi ditolak** --- ## πŸ“Έ Pengambilan Foto Saat Absensi - Foto diambil menggunakan **kamera depan (selfie)** - Foto hanya dapat diambil **saat proses absensi** - Foto disimpan sebagai **bukti kehadiran** - Foto dapat digunakan untuk: - Verifikasi manual oleh dosen - Dokumentasi akademik --- ## πŸ› οΈ Teknologi yang Digunakan - **Platform** : Android - **Bahasa Pemrograman** : Kotlin / Java - **Location Service** : - Google Maps API - Fused Location Provider - **Camera API** : CameraX / Camera2 - **Database** : Firebase / SQLite / MySQL - **Storage** : Firebase Storage / Local Storage - **IDE** : Android Studio --- ## πŸ” Izin Aplikasi (Permissions) Aplikasi memerlukan izin berikut: - `ACCESS_FINE_LOCATION` - `ACCESS_COARSE_LOCATION` - `CAMERA` - `INTERNET` - `WRITE_EXTERNAL_STORAGE` (jika diperlukan) --- ## πŸ“‚ Mockup ![mockup](Mockup.png)