Geocoding dalam Android

Geocoding adalah proses merubah nama jalan atau nama lokasi lainnya menjadi koordinat latitude dan longitude.

Membuat Objek Geocoder

Syntax:

Geocoder namaVariabel = new Geocoder(namaKonteks);

Keterangan:

namaKonteks ini berupa nama activity dimana pembuatan objek Geocoder berada.

 

Metode getFromLocationName(“namaJalanYangDicari”, jumlahMaksimalData);

Digunakan untuk mengambil data array yang berisi alamat-alamat dari hasil pencarian dengan parameter namaJalanYangDicari

Syntax:

List<Address> namaVariabel = objekGeocoder.getFromLocationName(“namaJalanYangDicari”, jumlahMaksimalData);

Keterangan:

Class Address mempunyai isi berupa:

  • addressLines yang terdiri dari nama jalan, kecamatan, kota, provinsi dan negara.
  • feature berisi nama jalan
  • admin berisi nama provinsi
  • sub-admin berisi nama kota
  • locality berisi nama kecamatan
  • thoroughrafe berisi nama jalan
  • postalCode berisi nomor kode pos
  • countryCode berisi kode negara
  • countryName berisi nama negara
  • hasLatitude berisi nilai true atau false
  • latitude berisi koordinat latitude
  • hasLongitude berisi nilai true atau false
  • longitude berisi koordinat longitude
  • phone berisi nomor telphon
  • url
  • extras

 

Contoh:

Buatlah sebuah Activity bernama BelajarGeocoder.

Perubahan pada File Layout  XML

Bukalah file  activity_belajar_geocoder.xml dan rubahlah isinya menjadi seperti berikut ini:

<?xml version="1.0" encoding="utf-8"?>

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"

        android:layout_width="fill_parent"

        android:layout_height="wrap_content"

        android:id="@+id/scrollView"

    android:padding="7dp">

 

    <TextView

        android:layout_width="match_parent"

        android:layout_height="wrap_content"

        android:text="New Text"

        android:id="@+id/textView"

        />

</ScrollView>

 

Perubahan Pada Activity

Bukalah file BelajarGeocoder.java  lalu rubahlah isinya menjadi seperti berikut ini:

public class BelajarGeocoder extends AppCompatActivity {

    @Override

    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.activity_belajar_geocoder);

 TextView tv=(TextView) findViewById(R.id.textView);

 Address namaJalan;

StringBuffer sb=new StringBuffer();

       Geocoder g=new Geocoder(this);

        try {

            List<Address> namaJalan2 = g.getFromLocationName("Jalan kelor", 7);

            for(byte a=0;a<namaJalan2.size();a++){

                namaJalan=namaJalan2.get(a);

 

                sb.append(namaJalan.toString());

                sb.append("\n\n");

            }

        }catch (Exception e){

            Toast.makeText(this, e.getMessage().toString(), Toast.LENGTH_LONG).show();

        }

        tv.setText(sb.toString());

    }

}

Hasil:

Jalankan aplikasimu maka akan menghasilkan hasil seperti berikut ini:

Penutup

Sekian dan terima kasih.

 

 

2016 © Fahmi Basya Kartapura