Aplikasi Andoid Widget Gempa BMKG


BMKG (Badan Meteorologi, Klimatologi, dan Geofisika) menyediakan data terbuka Gempabumi M 5.0+ Terkini, berupa file XML yang saat tulisan ini ditulis, dapat diakses melalui link http://data.bmkg.go.id/autogempa.xml.

Contoh struktur data gempa tersebut dapat dilihat sebagaimana code berikut:
<Infogempa>
<gempa>
<Tanggal>19-Aug-19</Tanggal>
<Jam>12:53:49 WIB</Jam>
<point>
<coordinates>128.26,-0.78</coordinates>
</point>
<Lintang>0.78 LS</Lintang>
<Bujur>128.26 BT</Bujur>
<Magnitude>5.0 SR</Magnitude>
<Kedalaman>10 Km</Kedalaman>
<_symbol>imagesSWF/m2b.swf</_symbol>
<Wilayah1>86 km Tenggara LABUHA-MALUT</Wilayah1>
<Wilayah2>100 km TimurLaut HALMAHERASELATAN-MALUT</Wilayah2>
<Wilayah3>130 km Tenggara WEDA-MALUT</Wilayah3>
<Wilayah4>200 km Tenggara TERNATE-MALUT</Wilayah4>
<Wilayah5>2455 km TimurLaut JAKARTA-INDONESIA</Wilayah5>
<Potensi>tidak berpotensi TSUNAMI</Potensi>
</gempa>
</Infogempa>

Data gempa ini, adalah data gempa seluruh Indonesia dengan skala di atas sama dengan 5 SR (Skala Richter).

Tidak menggunakan HttpURLConnection, penulis lebih suka menggunakan Android Volley, untuk menggenerate response data dari suatu url. Menurut penulis, penggunaan Android Volley lebih mudah dan stabil.

Sama seperti HttpURLConnection, aplikasi widget gempa ini membutuhkan authentifikasi android:usesCleartextTraffic="true" di file AndroidManifest.xml-nya. Karena jika tidak, aplikasi tidak dapat mengakses halaman web apapun.

Aplikasi juga menggunakan class Service, untuk memanggil pembaharuan data, dengan estimasi waktu yang dilakukan tiap 5 menit. Data akan disimpan dalam format SharedPreferences dalam Android dan jika terdapat perbedaan data, maka aplikasi akan memperbaharui dan menampilkan notifikasi.

Tampilan contoh hasil aplikasi adalah sebagaimana gambar berikut:

 
 

Sedangkan kode Androidnya dapat di download pada link Google Drive penulis di bawah ini:
Di mana penulis menggunakan Android Studio 3.4.2 dalam pembuatannya.

Untuk versi jadinya, dapat dicoba aplikasi Widget Gempa diatas, yang penulis distribusikan menjadi salah satu app Computational Lab, dengan link berikut ini:


Referensi:

Komentar



Postingan populer dari blog ini

Apps Script untuk Cetak Sertifikat

Kumpulan Source Code Greenfoot

Menyembunyikan Failed Load Images di Blogger

Kode Greenfoot Game Flappy Bird

Checking Data yang Belum Dimasukkan dalam Daftar Menggunakan Query Google Sheet

Kebodohan Karyawan Menyalahkan Sistem

Algorithma Bilangan Prima dengan Javascript

Algorithma Coretan Abstrak dengan HTML5 Canvas

Generate Karakter Acak dan Menempatkannya di Sel Google Sheets dengan Apps Script

Mencoba Submit Theme di Wordpress.org