Projek : Camer (Catat Meter Air dan Listrik) Bagian : Front-End Platform : Android Framework : React Native
-
Gandakan repository ini pada komputer anda
-
Ikuti tutorial pemasangan React Native pada laman ini
-
Pastikan anda memiliki
nodejs
pada komputer anda, jika belum anda dapat mendownload nya pada [laman] (https://nodejs.org/) ini -
Masuk ke project yang telah anda kloning, lalu pada terminal ketikkan
npm i -g yarn
-
Setelah Yarn terinstall, install dependensi project dengan memasukkan perintah pada terminal
yarn install
-
Buka file
build.gradle
pada folder node_modules/react-native-month-year-picker/android/build.gradle, dan replace semua kodenya dengan kode pada file -
Ketikkan
yarn android
pada terminal project ini. Jika setup environment anda benar maka akan terbuka jendela bash baru untuk debugging.
- Arahkan terminal pada folder
android
dengancd android
- Masukkan perintah
./gradlew assembleRelease
- Setelah proses selesai, anda akan dapatkan file apk pada android/app/build/generated/../outputs/apk/debug/app-debug.apk
- Pasang file apk tersebut pada perangkat android anda
- Buka aplikasi Camer yang sudah terinstall pada perangkat anda.
- Tampilan awal aplikasi camer.
- Dengan asumsi pengguna sudah mendapatkan id dari pihak pengelola apartemen, pengguna dapat langsung menambahkan id dengan menekan tombol
Add
. Dan akan muncul isian id untuk penambahan apartemen yang akan di monitor.
- Masukkan id yang akan dimonitor, lalu klik
Confirm
.
- Jika id yang dimasukkan benar, akan terdapat card monitoring seperti gambar dibawah ini.
- Anda dapat menambahkan lebih dari 1 id apartemen.
- Tekan tombol
Open
, lalu anda akan diarahkan menuju halaman monitoring. - Halaman dibawah ini memonitoring secara realtime pada hari yang sama.
- Klik tombol
Table
untuk melihat detail dari riwayat monitoring dari hari ke hari, tampilan seperti gambar dibawah ini.
Tiap detik titik pada garis horizontal merepresentasikan jam, pada gambar diatas, titik ke 12 berada pada sumbu Y dengan nilai 1, yang artinya pada jam 11.00 - 12.00 meter air dan listrik terbaca 1 satuan.
10. Perhitungan tab Bill
dengan logo uang dibawah. Tampilan awal akan seperti gambar dibawah ini.
Nilai yang termonitor pada card yakni nilai per bulan.
11. Anda dapat melihat detail bayar anda dengan menekan tombol Detail
.
12. Lalu anda akan dialihkan menuju laman monitoring tagihan. Masukkan harga per satuan dari masing-masing perhitungan, harga akan di informasikan oleh pihak pengelola apartemen.
- Misal harga per kWh adalah Rp 40,- dan harga per m3 adalah Rp 30,-. Nilai tersebut akan dikalikan dengan kumulatif nilai monitoring perbulan dari bulan yang dipilih.
- Monitoring harga akan terupdate secara real-time
Dengan asumsi apartemen belum ada yang didaftarkan sama sekali, maka data belum ada sama sekali, dan pihak pengelola apartemen harusnya mendaftarkan tiap apartemen.
Backend APIs Documentation: https://documenter.getpostman.com/view/12579961/UzBvGiN5
- Buka documenter backend pada aplikasi client pada postman (dapat menggunakan app client lain [menyesuaikan]).
- Pada Backend APIs Documentation diatas, buka request
Register Meter
, lalu pada parametername
terdapat nama yang dapat anda tentukan untuk nama ruangan atau apartemen yang akan anda daftarkan. Sebagai contoh, disini dituliskan LT3-7.
- Klik Send
- Jika berhasil, maka akan terdapat response seperti gambar dibawah ini
- Nilai
_id
merupakan id yang akan pengelola berikan kepada penghuni apartmen untuk memonitor apartemenya sendiri.
- Buka request
Get All Device
- Klik Send
- Jika berhasil, maka hasil response akan seperti gambar dibawah ini
- Nilai
_id
merupakan id yang akan pengelola berikan kepada penghuni apartmen untuk memonitor apartemenya sendiri.
- Buka request
Update Data By Device ID
- Pada gambar diatas, terdapat id device, dapat diubah sesuai id apartemen yang akan di update.
- Klik Send
- Jika berhasil, maka hasil response akan seperti gambar dibawah ini
Note: Jika menggunakan real hardware dan pengembangannya mengguanakan Arduino Framework, maka kode dapat dilihat seperti kode ini
Note : API lain tidak perlu dijalankan, hanya untuk mempermudah pengembangan.