1. Pembuatan Project Baru
Mari kita mulai dengan membuat project baru ketentuan sebagai berikut,- Klik File > New lalu pilih Android Project
- Klik Next lalu isikan field-field yang tersedia dengan ketentua sebagai beriktu
- Project Name : Nama Project yang akan kita buat.
- Built Target : Target aplikasi yang akan digunakan untuk menjalankan aplikasi.
- Application Name : Nama aplikasi yang akan dibuat.
- Package Name : Nama paket yang mengacu pada standar penamaan aplikasi java.
- Create Activity : Nama aktiviti.
- Min SDK Version : Versi dari Android SDK yang digunakan.
2. Pembuatan AVD
- Klik Window > Android SDK and AVD Manager
- Klik New
- Isikan field-field yang tersedia dengan ketentuan sebagai berikut,
- Name : Nama AVD
- Target : Target untuk menjalankan aplikasi
- SD Card Size : Kapasitas memori yang akan digunakan
- Skin : Jenis layar
- Hardware : Perangkat keras yang dibutuhkan
3. Key API
- Cari lokasi folder key-nya, biasanya terletak pada C:\Document and Settings\\.android\debug.keystore
- Copy file debug.keystore ke sebuah lokasi yang mudah dijangkau, misalkan di folder data di drive D.
- Cara membuka debug.keystore dapat melalui DOS dengan melalui Start > Run > CMD
- Kemudian cari dimana kita menempatkan JDK\bin kita, misal pada C:\Program Files\jdk 1.6.0_16\bin
- Setelah berada pada lokasi yang benar maka perintah yang kita gunakan adalah : keytool –list –alias androiddebugkey –keystore D:\data\debug.keystore –storepass android –keypass android
- Setelah itu masuk ke masuk ke alamat http://code.google.com/android/add-ons/google-apis/maps-api-signup.html untuk mendaftarkan key Certificate fingerprint kita.
- Masukkan key Certificate fingerprint pada My Certicate’s MD5 fingerprint :
- Setelah itu kita akan mendapatkan API Key Google Map
4. Koneksi Google Map
Dalam pembuatan aplikasi peta sederhana
ini, kita menggunakan fasilitas Google Map yang dikembangkan oleh Google
Inc. Jadi untuk dapat menggunakannya maka di dalam pembuatannya kita
sisipkan perintah yang akan menghubungkan aplikasi kita dengan Google
Map. Dalam hal ini kita tambahkan
- com.google.android.maps.MapViewandroid:id”@+id/map”
- android:apikey=””
sehingga pada file main.xml akan menjadi seperti di bawah ini,
android:layout_width=”fill_parent”
android:layout_height=”fill_parent”>
<com.google.android.maps.MapView android:id=”@+id/map”
android:layout_width=”fill_parent”
android:layout_height=”fill_parent”
android:apiKey=”0N7Hy8N-J4GRSHu6EBqBPNNmCZIGnxFWaJyCLAQ”
android:clickable=”true” />
android:layout_width=”wrap_content”
android:layout_height=”wrap_content”
android:layout_alignParentBottom=”true”
android:layout_alignParentLeft=”true” >
Sedangkan untuk koneksi dengan internet, kita haru menambahkan permission dan library pada file AndroidManifest.xml, yaitu:
- Permission INTERNET dan ACCESS_COARSE_LOCATION
- Pada elemen , tambahkan elemen dengan android:name= ”com.google.android.maps”, sebagai tanda untuk menggunakan Android API
Sehingga file AndroidManifest.xml secara menjadi seperti ini:
package=”biz.multimediacenter.myfirstmap”
android:versionCode=”1″
android:versionName=”1.0″>
android:label=”@string/app_name”>
5. Fasilitas Zoom
Fasilitas zoom sangat diperlukan pada
aplikasi peta digital untuk mengetahui lebih detail tempat yang ingin
dilihat. Di dalam Android, kita bisa mengontrol secara langsung level
zoom melalui method setzoom() pada getMapController(). Nilai ini
menggunakan angka integer, diamana 1 (satu) akan memperlihatkan peta
dunia secara keseluruhan, dan 21 (dua puluh satu) adalah level terdekat
yang bisa kita dapatkan.
Setiap level merupakan kelipatan dari
efektif resolusi layer, level 1 (satu) sama dengan 256 pixel, sedangkan
level 21 (dua puluh satu) sama dengan 268,435,456 pixel. Layar handphone
tentu tidak sebesar itu, sehingga menggunakan level 16 (enam belas)
untuk melihat peta seukuran beberapa blok pada sebuah lokasi.
Untuk membuat aplikasi memiliki zoom level, kita membutuhkan beberapa hal:
- Kita menentukan tempat untuk menempatkan kontrol zoom, dan kita bisa mengesetnya hanya terhlihat ketika kita membutuhkan. Misal kita tempatkan overlay di atas peta, pada pojok kiri bawah layar. Kita menggunakan LinearLayout atau kontainer sederhana untuk kontol zoom layout kita.
- Pada Activity method onCreate(), kita bisa mendapatkan kontrol zoom kontainer melalui findViewById().
- Tambahkan hasil dari map.getZoomControl() pada kontainer.
Sebagai contoh, ini baris kode dari method onCreate(), yang dimaksud sebelumnya:
ViewGroup zom=(ViewGroup) findViewById (R.id.zoom);
Zoom.addView(map.getZoomControl());
Kemudian kita dapat memanggil kontrol
zoom agar terlihat dengan memanggil displayZoomControl() pada mapView
kita, atau bisa juga secara otomatis terlhiat ketika penggunanya
menyentuh layar.
Biasanya kita akan butuh untuk
mengontrol peta, selain level zoom, misal lokasi pengguna pada aplikasi
semacam where I am, atau lokasi-lokasi tertentu yang kita inginkan, ini
akan memerlukan GeoPoint sebagai parameter lokasi tersebut. GeoPoint
sebagai parameter lokasi tersebut. GeoPoint merupakan titik alamat dari
lokasi, yaitu Latitude dan Longtitude, yang direpresentasikan ke dala
deretan angka integer. Dan untuk mengubah posisi map kita bisa memanggil
setCenter() pada mapController.
6. GeoPoint
Untuk mendapatkan GeoPoint salah satunya
bisa melihat pada Google Maps. Misalkan kita menujut ke Indonesia. Dan
disini kita akan mengambil GeoPoint untuk kota Depok dengan titik
Universitas Gunadarma. Klik kanan, lalu pilih What’s here?
Sehingga pada jendela sebelah kiri akan
muncul angka GeoPoint dari titik tersebut, atau pada field searching.
Untuk Universitas Gunadarma kita mendapatkan GeoPoint dengan deretan
angka integer, -6.36806,106.833029
7. Rugged Terrain
Seperti juga Google Maps pada komputer
yang bisa memperlihatkan image peta terrain dari satellite, Android map
juga bisa melakukan hal seperti itu.
Dengan menggunakan method
toggleSatellite() pada MapView, kita bisa melihat peta perspektif dari
satellite yaitu terrain. Kita bisa membuat triggernya dari menu ataupun
dari keypad. Contoh penggunaan keypad yaitu dengan mengeset untuk
berpindah mode peta terrain dari satellite pada keypad S, dan untuk
menampilkan zoom kontrol pada keypad
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_S) {
map.setSatellite(!map.isSatellite());
return(true);
}
else if (keyCode == KeyEvent.KEYCODE_Z) {
map.displayZoomControls(true);
return(true);
}
8. Push Pin
Ketika kita menggunakan Google Maps,
kita mungkin pernah menggunakan atau melihat sesuatu di atas peta,
seperti “push-pins” yang menandakan suatu tempat. Dimana sebenarnya push
pin tersebut terpisah dari peta, dia memiliki layer sendiri, diatas
layer peta. Android map juga menyediakan fasilitas layering inim
sehingga kita bisa menandai peta dengan push pin sesuai yang diinginkan.
Setiap overlay yang ingin kita tambahkan
pada peta, harus diimplementasikan sebagai subkelas dari Ovelay.
Terdapat sebuah subkelas ItemizedOverlay ketika kita ingin melihat
semacam push pin atau sejenisnya dan ItemizedOverlay memudahkan proses
itu.
Untuk menetapkan kelas overlay pada
peta, kita bisa memanggil getOverlays() pada MapView kita, dan gunakan
add() sebagai instance dari Overlay:
marker.setBounds(0,0, marker.getIntrinsicWidth(),marker.getIntrinsicHeight());
map.getOverlays().add(new SitesOverlay(marker));
9. Touch Screen
Subkelas Overlay juga
mengimplementasikan method onTap(), yang akan menangani sentuhan pada
layar seperti pada Google Maps, mengklik pada push pin akan mentriger
sebuah balon pop up informasi mengenai lokasi. Dengan onTap(), kita
dapat melakukan hal yang sama pada Android.
@Override
protected boolean onTap(int i) {
Toast.makeText(MyFirstMap.this,
items.get(i).getSnippet(),
Toast.LENGTH_SHORT).show();
return(true);
}
Android memiliki built-in overlay untuk menghandle dua skenario keadaan:
- Menunjukkan dimana kita pada peta, berdasarkan GPS atau lokasi lain yang disediakan
- Menunjukkan titik dimana kita ditetapkan, berdasarkan pada built-in sensor kompas apabila tersedia.
Yang harus kita lakukan adalah membuat
instance dari MyLocationOverlay(), tambahkan pada daftar MapViews dari
overlay, dan mengeset pada enable atau disable fitur ini pada waktu yang
ditentukan. Dinama waktu ini didasarkan pada umur penggunaan batttery,
tidak perlu meng-update lokasi atau arah ketika activity di pause, untuk
itu direkomendasikan kita meng-enable fitur ini dengan onResume() dan
disable dengan onPause().
Disini kita memberikan penanda (marker)
pada titik-titik GeoPoint yang kita masukkan koordinatnya ke dalam peta
kita. Yaitu dengan membuat objek gambar kecil, dengan menggunakan
formatpng, dan kita manamakannya marker.png. untuk membuatnya bisa
menggunakan pengolah gambar yang kita kuasai, dengan ukuran 22×23 pixel
kemudian copy ke folder res/drawable-mdpi/marker.png
10. Tampilan
- Tampilan Satelit
- Tampilan Peta
Sumber : http://cingciripit.com/2011/01/membuat-aplikasi-android-3/
EmoticonEmoticon