Membuat Peta Tempat Menggunakan Google Maps Android V2 API (Part 1-Menampilkan Peta)

11:18 PM

Menampilkan Peta

Pada postingan sebelumnya pernah dijelaskan bagaimana cara membuat peta menggunakan Google Maps Javascript API v3. Sekarang kita akan membuat aplikasi android menggunakan Google Maps Android API V2. Untuk instalasi dari API nya sendiri dibutuhkan beberapa langkah yang menurut saya cukup merepotkan, langsung saja sebelum kita melakukan coding kita lakukan dulu instalasi API nya. .

Google maps Android API ini sendiri merupakan bagian dari Google Play Service, jadi untuk menginstallnya pertama kita harus melakukan download Google Play Service menggunakan Android SDK Manager.
android SDK manager
Setelah itu kita import Google Play Service yang sudah kita download ke dalam Eclipse kita.
File->Import->Existing Android Code Into WorkSpace

Browse Folder Google Play Service yang sudah kita download, lokasinya berada di

android-sdk-windows\extras\google\google_play_services\libproject\google-play-services_lib
add project eclipse
Jangan lupa check bagian copy Project Into Workspace.

Step Berikutnya adalah melakukan Generate Google Maps API key.

Pertama untuk mendapatkan API key kita perlu melakukan generate SHA-1 fingerprint menggunakan java keytool.

Cara menggunakan java keytool kita harus membuka nya melalui command prompt(cmd), change directory cmd menjadi
C:\Program Files\Java\jdk1.7.0\bin> (Bisa berubah, tergantung dimana anda menginstall java)
masukkan perintah berikut pada cmd anda:

keytool -list -v -keystore "%USERPROFILE%\.android\debug.keystore" -alias androiddebugkey -storepass android -keypass android
Dan hasilnya adalah sebagai berikut
SHA1 googlemaps
Pada output diatas terdapat SHA 1 fingerprint diantara MD5 dan SHA256, jangan close dulu output ini, sekarang kita buka Google API Console.
Service->Cari Google Maps Android V2, aktifkan
Setelah itu pilih API Access, lalu pilih Create new Android key , lalu akan muncul tampilan berikut
configure android key
Masukkan SHA 1 fingerprint anda, diikuti dengan nama package Android Application anda, dan anda akan mendapatkan API key anda
api access google maps


Lets Start Code. . :)

eitss, sebelum coding tentunya kita buat dulu Android Application Project dengan package name sesuai dengan yang di register tadi.(package name yang saya pakai adalah com.dea.mymaps)
Setelah project selesai dibuat, mari kita masukkan library Google Play Service pada project kita.
Klik Kanan project anda->Properties->Android->Add
add project android
Setelah itu buka AndroidManifest.xml lalu tambahkan kode xml berikut di dalam tag application, kode di bawah ini berfungsi untuk mendaftarkan google play service dan google maps sekaligus API key nya di dalam aplikasi kita

Setelah itu kita juga mendaftarkan permission pada AndroidManifest.xml, kita tambahkan kode berikut

Permission diatas nantinya digunakan antara lain untuk mengakses internet, lokasi, dll
Sekarang kita masukkan kode berikut pada MainActivity.java
Sekarang silahkan coba run aplikasi peta anda, jika terjadi kesalahan masih ada cara lain lagi untuk menampilkan peta :) silakan kunjungi https://developers.google.com/maps/documentation/android/start
Inilah tampilan peta yang saya buat.
   
Hello world google maps android
Sekian tutorial kali ini. .
Baca juga tutorial lainnya.
PART 2 - Menampilkan User Location
PART 3 - Menampilkan Marker dari Web Service
:)
GBU



You Might Also Like

32 comments

  1. gan kok eror di (R.id.map) >>>>> map nya erorr kira2 apax ya gan???

    ReplyDelete
    Replies
    1. di xml layout nya udah ada fragment yang id nya map belum gan?
      ane lupa naroh di atas. .
      kyk gini mungkin xml nya



      Delete
  2. iya gan error
    blm ada r.id.map nya

    jadi nya kalau ditambah gmn gan?

    ReplyDelete
  3. kurung buka fragment
    android:id="@+id/map"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    class="com.google.android.gms.maps.SupportMapFragment" slash kurung tutup
    hhe, komen diatas ternyata ga muncul, ada tagnya

    ReplyDelete
  4. Keren ne tutorialnya,...
    ane ijin praktek gan.....

    ReplyDelete
  5. bang tiap ane launc, kok "android library project cannot be launch" klok diilangin centanngnya mau sih tp kagak nampak mapnya

    ReplyDelete
    Replies
    1. aduh saya belum pernah keluar error kayak gitu gan, kalo ga nampak mapnya kemungkinan API key nya salah. .

      Delete
    2. coba itu di library pada [klik kanan project>>propertise>>android>>pada check box (Is Library) uncheck] setelah itu klik 'OK'
      semoga bisa membantu

      Delete
  6. gan cara cek API key nya salah ato g gmn y?????

    ReplyDelete
    Replies
    1. cek di log cat, biasanya ada tulisan yg intinya disuruh ngecek API key nya, . .
      yang paling simple ya kalo aplikasi engga force close, koneksi lancar tapi peta nya engga keluar, berarti API key nya salah. .

      Delete
  7. punyaku kok setiap ada tag fragmentnya error ya tolong mas pnjelasannya??

    ReplyDelete
    Replies
    1. kurang tau juga kalo itu, fragment biasanya udah default.. coba di load ulang eclipsenya.. saya belum pernah kejadian seperti itu soalnya. .

      Delete
    2. programnya jalan tapi saat manggil mapnya itu error force terus saya jalaninya lewat emulator android??

      Delete
    3. emulator nya apa? setau saya kalo ADT bundle emulatornya engga bisa ngeluarin maps, engga ada google play service nya. .biasanya kalo ngoding peta langsung di real device

      Delete
    4. pakek nexus. tapi kok setiap ada tag fragment di xmlnya pasti programnya force terus padahal udah sma dengan tutorialnya. jalani di genymotion gak bisa juga kanapa ya tolong buat pakek bahan skripsiku??

      Delete
    5. android:id="@+id/map"
      android:layout_width="match_parent"
      android:layout_height="match_parent"
      class="com.google.android.gms.maps.SupportMapFragment" slash kurung tutup

      udah ada ini?? yang saya komen di atas, ada kurang r.id.map nya

      Delete
    6. errornya kayak dibawah ini mas:
      03-11 19:25:18.609: E/AndroidRuntime(7694): FATAL EXCEPTION: main
      03-11 19:25:18.609: E/AndroidRuntime(7694): java.lang.RuntimeException: Unable to start activity ComponentInfo{in.wptrafficanalyzer.locationingooglemapv2/in.wptrafficanalyzer.locationingooglemapv2.MainActivity}: android.view.InflateException: Binary XML file line #13: Error inflating class fragment
      03-11 19:25:18.609: E/AndroidRuntime(7694): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2097)
      03-11 19:25:18.609: E/AndroidRuntime(7694): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2122)
      03-11 19:25:18.609: E/AndroidRuntime(7694): at android.app.ActivityThread.access$600(ActivityThread.java:140)
      03-11 19:25:18.609: E/AndroidRuntime(7694): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1228)
      03-11 19:25:18.609: E/AndroidRuntime(7694): at android.os.Handler.dispatchMessage(Handler.java:99)
      03-11 19:25:18.609: E/AndroidRuntime(7694): at android.os.Looper.loop(Looper.java:137)
      03-11 19:25:18.609: E/AndroidRuntime(7694): at android.app.ActivityThread.main(ActivityThread.java:4895)
      03-11 19:25:18.609: E/AndroidRuntime(7694): at java.lang.reflect.Method.invokeNative(Native Method)
      03-11 19:25:18.609: E/AndroidRuntime(7694): at java.lang.reflect.Method.invoke(Method.java:511)
      03-11 19:25:18.609: E/AndroidRuntime(7694): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:994)
      03-11 19:25:18.609: E/AndroidRuntime(7694): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:761)
      03-11 19:25:18.609: E/AndroidRuntime(7694): at dalvik.system.NativeStart.main(Native Method)
      03-11 19:25:18.609: E/AndroidRuntime(7694): Caused by: android.view.InflateException: Binary XML file line #13: Error inflating class fragment
      03-11 19:25:18.609: E/AndroidRuntime(7694): at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:704)
      03-11 19:25:18.609: E/AndroidRuntime(7694): at android.view.LayoutInflater.rInflate(LayoutInflater.java:746)
      03-11 19:25:18.609: E/AndroidRuntime(7694): at android.view.LayoutInflater.inflate(LayoutInflater.java:489)
      03-11 19:25:18.609: E/AndroidRuntime(7694): at android.view.LayoutInflater.inflate(LayoutInflater.java:396)
      03-11 19:25:18.609: E/AndroidRuntime(7694): at android.view.LayoutInflater.inflate(LayoutInflater.java:352)
      03-11 19:25:18.609: E/AndroidRuntime(7694): at com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:306)
      03-11 19:25:18.609: E/AndroidRuntime(7694): at android.app.Activity.setContentView(Activity.java:1912)
      03-11 19:25:18.609: E/AndroidRuntime(7694): at in.wptrafficanalyzer.locationingooglemapv2.MainActivity.onCreate(MainActivity.java:28)
      03-11 19:25:18.609: E/AndroidRuntime(7694): at android.app.Activity.performCreate(Activity.java:5163)
      03-11 19:25:18.609: E/AndroidRuntime(7694): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1094)
      03-11 19:25:18.609: E/AndroidRuntime(7694): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2061)
      03-11 19:25:18.609: E/AndroidRuntime(7694): ... 11 more
      03-11 19:25:18.609: E/AndroidRuntime(7694): Caused by: java.lang.ClassCastException: com.google.android.gms.maps.MapFragment cannot be cast to android.support.v4.app.Fragment
      03-11 19:25:18.609: E/AndroidRuntime(7694): at android.support.v4.app.Fragment.instantiate(Fragment.java:394)
      03-11 19:25:18.609: E/AndroidRuntime(7694): at android.support.v4.app.Fragment.instantiate(Fragment.java:369)
      03-11 19:25:18.609: E/AndroidRuntime(7694): at android.support.v4.app.FragmentActivity.onCreateView(FragmentActivity.java:272)
      03-11 19:25:18.609: E/AndroidRuntime(7694): at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:676)
      03-11 19:25:18.609: E/AndroidRuntime(7694): ... 21 more

      kira2 apanya yang slah ya...??

      Delete
    7. saya juga kurang tau gan kalo log cat yang kayak itu. .
      google play service library nya udah di include??terus API key nya?
      mungkin buat dari awal lagi gan.. kalo masi bingung bisa langsung download source code nya dari google maps v2 langsung

      Delete
  8. Mohon Bantuannya... kenapa pas di run selalu muncul unfortunately, has stoped....dan aplikasinya langsung tertutup..., bagaimana ya?

    ReplyDelete
    Replies
    1. pesan error nya apa gan?

      Delete
    2. sama ane juga gitu, .

      Delete
    3. udah ada xml yang isinya map fragment nya belum? kalo belum lihat komen saya sebelumnya, udah saya kasi contoh. .

      Delete
  9. thank you .. work

    ReplyDelete
  10. gan itu mMap apaan gan kok yang saya error disitunya

    ReplyDelete
  11. coba di lihat bagian xml nya sudah ada mMap nya belum.. bagian fragmen map nya . .

    ReplyDelete
  12. gan errornya malah Caused by: java.lang.ClassNotFoundException: com.google.android.gms.maps.SupportMapFragment
    padahal classnya udah ada

    ReplyDelete
  13. numpang tanya, yang bagian folder libproject/google_play_service_lib kok gak ada ya ?

    makasih

    ReplyDelete
  14. android:value="@integer/google_play_services_version" /> ini dapet darimana mas? punya saya silang manifest nya,, @integer/google_play_services_version

    ReplyDelete