🚀 Smart-Attendance: Sistem Absensi Mahasiswa Terintegrasi Cloud
Smart-Attendance adalah platform absensi mahasiswa berbasis mobile yang menggabungkan keamanan database lokal dengan validasi geografis dan biometrik visual secara real-time. Aplikasi ini dikembangkan menggunakan Jetpack Compose untuk memberikan pengalaman pengguna yang modern dan responsif.
📸 Antarmuka Aplikasi (Mockup)
| Layar Registrasi | Layar Login | Dashboard Absensi |
|---|---|---|
![]() |
![]() |
![]() |
| Pendaftaran Akun (Nama, NPM, Password) | Masuk Sistem menggunakan NPM | Validasi Lokasi & Foto Wajah |
Catatan: Pastikan Anda menyimpan file gambar di folder root project dengan nama
register.png,login.png, dandashboard.pngagar muncul di GitHub.
🌟 Fitur Utama
- Otentikasi SQLite: Pendaftaran Akun (Nama, NPM, Password) dan Login aman yang tersimpan secara lokal di perangkat.
- Geo-Precision Tracking: Mendeteksi lokasi presisi (Latitude & Longitude) menggunakan Fused Location Provider API dengan akurasi tinggi.
- Visual Proof Recognition: Pengambilan foto wajah langsung melalui kamera aplikasi sebagai bukti kehadiran fisik yang valid.
- Sinkronisasi Cloud: Data absensi (NPM, Nama, Koordinat, Mata Kuliah, dan Foto) otomatis terkirim ke Google Sheets via n8n Webhook.
- UI/UX Modern: Desain antarmuka bersih dengan tema gradasi Hijau-Kuning yang segar sesuai standar Material Design 3.
- Refresh Lokasi: Tombol manual untuk memperbarui koordinat GPS jika posisi dirasa kurang akurat.
🛠️ Stack Teknologi
- UI Framework: Jetpack Compose (Declarative UI)
- Bahasa: Kotlin
- Local Database: SQLite (Manajemen profil pengguna)
- Location: Google Play Services Location API
- Networking: HttpURLConnection (JSON Data Transmission)
- Automation: n8n.io (Integrasi Webhook ke Google Sheets)
🏗️ Struktur Data JSON (Payload)
Data yang dikirimkan ke server memiliki struktur berikut:
{
"npm": "202310715066",
"nama": "Nabila Suwandira",
"latitude": 37.421998,
"longitude": -122.084000,
"mata_kuliah": "Pemrograman Perangkat Bergerak",
"timestamp": 1739456789000,
"foto_base64": "/9j/4AAQSkZJRg..."
}
📱 Panduan Penggunaan
- Registrasi: Buka aplikasi, pilih "Daftar Sekarang". Isi Nama Lengkap, NPM, dan Password.
- Login: Masuk menggunakan NPM dan Password yang telah dibuat.
- Absensi:
- Pastikan GPS aktif.
- Isi atau verifikasi Mata Kuliah.
- Ambil foto wajah dengan menekan tombol AMBIL FOTO.
- Tekan KIRIM ABSENSI untuk mengirim data ke server.
- Logout: Tekan ikon profil di pojok kanan atas untuk keluar.
📡 Monitoring Data
Verifikasi pengiriman data absensi secara langsung melalui:
- Log Real-time: ntfy.ubharajaya.ac.id/EAS
- Database Cloud: Spreadsheet Absensi Mahasiswa
🎓 Informasi Project
Nama: Nabila Suwandira
NPM: 202310715066
Instansi: Universitas Bhayangkara Jakarta Raya
Mata Kuliah: Pemrograman Perangkat Bergerak
Tujuan: Proyek Evaluasi Akhir Semester (EAS) 2025-2026
Description
Languages
Kotlin
100%


