
Indonesia menduduki peringkat ke-2 secara global untuk kerentanan bencana dengan skor 43,5%, namun ada kesenjangan kritis antara data bencana mentah pemerintah dan peringatan pribadi yang dapat ditindaklanjuti. Kebanyakan orang yang tinggal di daerah rawan bencana tidak memiliki cara yang dapat diandalkan dan dipersonalisasi untuk mengetahui kapan banjir, tanah longsor, atau gempa bumi mendekat, bahkan lebih sulit lagi saat koneksi internet mereka terputus.
Tantangannya adalah membangun aplikasi Android lengkap dari awal yang menjembatani kesenjangan ini: mengumpulkan data real-time dari BMKG, BNPB, USGS, dan PetaBencana, menjalankan model prediksi ML di atasnya, memberikan pemberitahuan push sebelum peristiwa terjadi, dan menjaga fungsionalitas penuh bahkan saat offline.
Sebagai satu-satunya Android Developer, saya merancang dan membangun seluruh aplikasi seluler end-to-end menggunakan Jetpack Compose dan arsitektur Android modern.
Aplikasi Inti & Arsitektur
- Membangun aplikasi Android penuh menggunakan Jetpack Compose, Material 3, Hilt untuk injeksi dependensi, dan Navigation Compose untuk perutean layar
- Menyusun aplikasi di sekitar arsitektur MVVM yang bersih dengan UI, domain, dan lapisan data yang terpisah dengan jelas
Dasbor & Data Real-Time
- Mengimplementasikan deteksi lokasi berbasis GPS melalui FusedLocationProviderClient
- Membangun dasbor risiko berkode warna yang mengonsumsi skor risiko AI dari backend FastAPI, meliputi banjir, tanah longsor, dan gempa bumi
- Menambahkan pembaruan otomatis setiap 5 menit, pull-to-refresh, status pemuatan shimmer, dan fallback cache offline melalui Room
Peta Offline-First
- Mengintegrasikan MapLibre Android SDK dengan dukungan MBTiles offline sehingga rute evakuasi dan penanda tempat berlindung berfungsi tanpa internet
- Membangun peta layar penuh dengan toggle lapisan (Banjir / Longsor / Gempa / Laporan), detail penanda lembar bawah, dan deteksi spanduk offline
Laporan Komunitas
- Membangun alur pengiriman laporan komunitas dengan pemilih jenis bahaya, tampilan lencana terverifikasi NLP, ID perangkat anonim (UUID), dan UX hitung mundur batas laju
- Mengintegrasikan pelaporan laporan dengan logika sembunyi otomatis 3-bendera
Pemberitahuan Push & Pekerjaan Latar Belakang
- Mengkonfigurasi Firebase Cloud Messaging (FCM) untuk pemberitahuan push sebelum peristiwa bencana
- Menyiapkan WorkManager untuk pemeriksaan risiko dan peringatan latar belakang senyap setiap 15 menit, bertahan dari reboot perangkat melalui RECEIVE_BOOT_COMPLETED
Riwayat Peringatan & Penomoran Halaman
- Membangun riwayat peringatan yang dipaginasi berbasis kursor menggunakan Paging 3 + Compose, dikelompokkan berdasarkan tanggal dengan indikator tingkat keparahan berkode warna
Pengaturan & Preferensi
- Mengimplementasikan toggle notifikasi per-bahaya yang disimpan di DataStore Menambahkan pemicu unduhan peta offline melalui WorkManager dan manajemen siklus hidup token FCM
Tumpukan Teknologi: Kotlin, Jetpack Compose, Material 3, Hilt, Retrofit, Room, MapLibre, WorkManager, Firebase Cloud Messaging, Paging 3, DataStore, Coil, Python, FastAPI, Neon PostgreSQL
Mengirimkan aplikasi Android multi-bencana yang terintegrasi penuh dengan backend FastAPI nyata dan model prediksi ML. Aplikasi ini menangani data risiko real-time, akses peta offline, crowdsourcing komunitas dengan verifikasi NLP, dan pemberitahuan push FCM.