Fork me on GitHub
 Like...


23 Dec
2011
KATEGORI : TUTORIAL ANDROID - Dibaca : 14697 kali
Ditulis oleh :    Ada 27 Komentar Seru

Tutorial Android : Menampilkan Google Map Dengan GoogleMap API di Emulator Android

Dari 2 hari yang lalu, entah kenapa saya uring-uringan bin galau terus menerus. Bawaannya pengen tidur + meluk guling aja, padahal masih ada segudang kegiatan dan tugas yang harus saya kerjakan. Salah satunya ialah menyiapkan berbagai abstraksi untuk coba-coba ikut seminar nasional lagi. Dan tepatnya tadi malam ada sedikit kabar gembira buat saya, yaitu makalah saya yang gagal tembus ke sesindo bulan kemarin akhirnya bisa diterima di knsi, lantaran seleksinya yang sangat-sangat ketat. Yaw walaupun tidak se-terkenal sesindo, acara knsi tersebut sudah lumayan memberikan sedikit motivasi untuk saya, karena terus terang saja saya merasa minder ketika makalah saya ditolak di ajang sesindo. Sekarang saatnya mencari kucuran dana untuk membayar biaya pendaftaran pemakalah lewat jurnal kampus :D.

Mulai pada postingan kali ini saya akan coba untuk mengulas cara pembuatan aplikasi di platform Android, hitung-hitung sambil mencoba ilmu baru. Bahasa pemrograman yang digunakan untuk membuat aplikasi di Android ialah Java, otomatis kita membutuhkan JDK (Java Development Kit). Selain itu, kita juga membutuhkan Android SDK (Software Development Kit) dan sebuah IDE sebagai compiler-nya. Disini, saya akan mencoba untuk membuat sebuah aplikasi sederhana untuk menampilkan peta dengan memanfaatkan GoogleMap API milik Google. Keliatannya memang gampang, tapi tunggu sampai tahap generate API Key dari Google, dijamin garuk-garuk kepala kalau Key-nya dianggap gak valid (#haha).

1. Saya praktekkan di laptop dengan OS Window$ dan ketika saya coba di OS Ubuntu banyak error-nya. Siapkan dulu bahan-bahannya dan jangan lupa untuk diinstal :

  • JDK versi 1.6, kenapa…??? Sesuai pengalaman saya, kalau pakai JDK yang terbaru alias 1.7, dijamin deh Key yang dihasilkan gak akan valid ketika didaftarkan.
  • Android SDK Manager
  • Android SDK 2.2 dan Google API Level 8
  • Eclipse Helios for Java Developers
  • Plug In ADT (Android Development Tools) for Eclipse

2. Setelah semua komponen terinstal, kita buat Android Virtual Device (AVD) baru. Buka android SDK Manager, dan pilih New.

3. Untuk menampilkan Google Map, kita membutuhkan Key dari Google. Key ini bersifat unik dan didapatkan dari MD5 FingerPrint hasil generate file debug.keystore yang terdapat di direktori C:\Users\Nama_User\.android. Agar lebih mudah mencari direktorinya, copy file debug.keystore ke folder D:/android (foldernya buat sendiri). Cara generate kode-nya cukup mudah, kita bisa menggunakan Command Prompt milik Windows dan mengektikkan kode di bawah ini.

keytool.exe -list -alias androiddebugkey -keystore “D:\android\debug.keystore” -storepass android -keypass android

4. Copy MD5 FingerPrint yang dihasilkan dari CMD dan daftarkan di http://code.google.com/android/maps-api-signup.html. Maka akan muncul Key yang bisa kita gunakan untuk membangun aplikasi yang memanfaatkan Google Map.

5. Sekarang kita lanjut ke pembuatan aplikasinya, buka Eclipse dan buat project baru. File > New > Android Project.

6. Pada Package Explorer, buka dan edit file main.xml (GoogleMapSederhana > res > layout > main.xml). Ketikkan kode untuk mengubah layout aplikasi seperti di bawah ini.

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">

    <com.google.android.maps.MapView
        android:id="@+kode/mapView"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:enabled="true"
        android:clickable="true"
        android:apiKey="0F8HAxC9X2UNmnpFnmnTezlw17RREfOeKtCji3w"
        />

</RelativeLayout>

Baris code com.google.android.maps.MapView berfungsi untuk menampilkan layout Google Map dan pada android:apiKey, ketikkan kode yangsudah kita daftarkan tadi di langkah nomor 4.

7. Kita perlu menambahkan library dan permision (<uses-library> com.google.android.maps dan <uses-permission> INTERNET) agar aplikasi yang dijalankan nantinya bisa mengakses Google Map dan internet. Buka file AndroidManifest.xml, dan ketikkan kode di bawah ini :

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
	package="dlmbg.paket.map" android:versionCode="1" android:versionName="1.0">
	<application android:icon="@drawable/icon" android:label="@string/app_name">
		<uses-library android:name="com.google.android.maps" />
		<activity android:name=".GoogleMapSederhanaActivity" android:label="@string/app_name">
			<intent-filter>
				<action android:name="android.intent.action.MAIN" />
				<category android:name="android.intent.category.LAUNCHER" />
			</intent-filter>
		</activity>

	</application>
	<uses-sdk android:minSdkVersion="8" />
	<uses-permission android:name="android.permission.INTERNET"></uses-permission>
</manifest>

8. Selanjutnya, buka file GoogleMapSederhanaActivity.java (src > GoogleMapSederhanaActivity.java) dan ketikkan kode di bawah ini.

package dlmbg.paket.map;

import com.google.android.maps.MapActivity;
import android.os.Bundle;

public class GoogleMapSederhanaActivity extends MapActivity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
    }

    @Override
    protected boolean isRouteDisplayed() {
        return false;
    }
}

9. Sekarang saatnya melihat hasilnya melalui Android Emulator, pada Package Explorer pilih project GoogleMapSederhana, klik kanan dan pilih Run As > Android Application. Emulatornya butuh waktu sekitar 5 menit’an untuk hidup, monggo ditinggal bikin kopi dulu :p. Dan kalau sudah hidup, hasilnya akan seperti di bawah ini :

10. Kurang lengkap rasanya jika belum ada tombol zoom in dan zoom out. Caranya sangat mudah, tinggal memanggil package MapView dan menambahkan 2 baris kode di bawah ini pada akhir event onCreate(). Kode lengkapnya seperti di bawah ini :

package dlmbg.paket.map;

import com.google.android.maps.MapActivity;
import com.google.android.maps.MapView;
import android.os.Bundle;

public class GoogleMapSederhanaActivity extends MapActivity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        MapView mapView = (MapView) findViewById(R.kode.mapView);
        mapView.setBuiltInZoomControls(true);
    }

    @Override
    protected boolean isRouteDisplayed() {
        return false;
    }
}

OK deh, sekian dulu tutorial yang cukup panjang ini. Semoga bisa bermanfaat untuk rekan-rekan yang kebetulan sedang dipusingkan dalam menampilkan Google Map ke dalam Android Emulator. Mudah-mudahan di postingan selanjutnya, saya bisa lebih banyak lagi membuat tutorial seputar pembuatan aplikasi pada platform Android.

Refrensi : http://mobiforge.com/developing/story/using-google-maps-android

Happy Blogging and Keep Coding

Cheerrrss….!!!!

[to_like]Download Aplikasi[/to_like]

Tentang Gede Lumbung
Seorang anak SMK yang gak keren, bocah ingusan & kutu kupret yang haus pengen terus belajar segala hal yang baru, makhluk aneh yang tertarik dengan gemerlap dunia Informatika dan Open Source. Pokoknya gak ada yang keren dari bocah lulusan SMK ini.

27 Komentar Seru

  • Wah saya lihat isi blognya banyak sekali tutorial tentang android. Penggemar android ya mas? atau developer mobile….. salut.

  • sob, kok ga muncul ya map nya? kotak2 aja..

    • udah generate key’nya???
      cek juga koneksi internetnya, apa bisa diakses dari emulator atau gak…
      cek via browser emulatornya android

  • gan,itu beneran ngaruh ya klo java nya yg udah versi 1.7 g bakal valid?
    ngaruh nya pas daftar di google nya y gan pas di kasih key API nya?

    soalnya ane coba fingerprint nya g valid pas di masukkin ke codingan

  • mau komen pernyataan: “JDK versi 1.6, kenapa…??? Sesuai pengalaman saya, kalau pakai JDK yang terbaru alias 1.7, dijamin deh Key yang dihasilkan gak akan valid ketika didaftarkan.”

    sebenernya pake JDK 1.7 tetep bisa, tinggal ditambahin -v aja di command linenya.

    untuk JDK 1.6: keytool.exe -list -alias androiddebugkey -keystore “D:\android\debug.keystore” -storepass android -keypass android

    untuk JDK 1.7: keytool.exe -v -list -alias androiddebugkey -keystore “D:\android\debug.keystore” -storepass android -keypass android

    disitu akan akan keluar certificate fingerprint untuk MD5, SHA1, sama SHA256 dan kita tinggal ambil yang MD5 (sesuai permintaan Google).

    semoga membantu. :)

  • [...] pada file peta.xml kita harus memasukkan apiKey untuk memanfaatkan GoogleMap. Silahkan baca postingan saya sebelumnya untuk cara mendapatkan [...]

  • gan itu ngejalanin aplikasi nya wajib online yaa,.. ??
    ada gak gann ngejalanin aplikasi maps nya gak harus online ??
    makasih gann.. minta bantuanya..

    • iya donk, google maps kan kudu diakses pake koneksi internet..
      ada sih yg offline, tapi kudu copy semua library+data ke aplikasi..
      itu membuat aplikasi ente jadi gemuk, dan kasian si user ente suruh download file aplikasinya yang berukuran besar ;)

      • Gan, kalo mau buat aplikasi pake google map trus ofline bisa ngga..??
        Mohon Bantuanya…??

        • kayaknya saya belum nemu solusi utk itu om,,
          kalaupun bisa, pasti makan space di hape, karena harus menyimpan semua gambar peta :)

  • Makasih gan ilmunya…

    kalo aplikasinya udah jadi tapi minta tutup paksa itu knapa ya Bang?

  • [...] pada file peta.xml kita harus memasukkan apiKey untuk memanfaatkan GoogleMap. Silahkan baca postingan saya sebelumnya untuk cara mendapatkan [...]

  • gan di cmd muncul keytool.exe is not recognized as an internal or external commend

    apa solusinya gan .. thanks

  • gan acses http://code.google.com/android/maps-api-signup.html. akarang udah V2 gmana cara na gan?
    mohon pencerahan nya.

  • gan ane udh coba tp selalu bermasalah di

    ” setContentView(R.layout.main); ”

    ini kenapa ya gan ??

    • biasanya SDK yg bermasalah, pake yg ADT bundle aja brow, atau android studio

  • ane udh coba download android studio pas udh kelar di install pas di open ga keluar2 gan..

  • gan kalo program LBS pas di running di emulatornya muncul tulisan FORCE CLOSE,,itu kenapa ya ??

  • gan kalo mau mapnya cuma wilayah tertentu misal satu kota doank, gimana caranya gan?
    mohon pencerahannya…

  • map nya g muncul gan..
    di logcat muncul error “Couldn’t get connection factory client”…
    mohon pncerahannya..!

  • gan mau tanya klo buat aplikasi tracking gmna yah gan?
    mohon pencerahannya

  • mas, itu mesti pake google api yah klo mw gunain google map, nah misalkan download sendiri tanpa lewat android SDK manager, itu menempatkan folder google apinya dimana yah

Ayoookkk di-komen brow...