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

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



32 comments

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

Reply

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



Reply

iya gan error
blm ada r.id.map nya

jadi nya kalau ditambah gmn gan?

Reply

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

Reply

udah ane jawab di komen bawah gan

Reply

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

Reply

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

Reply

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

Reply

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

Reply

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. .

Reply

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

Reply

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

Reply

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

Reply

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

Reply

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??

Reply

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

Reply

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...??

Reply

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

Reply

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

Reply

sumpah ..

ane bingung banget..

Reply

pesan error nya apa gan?

Reply

thank you .. work

Reply

gan itu mMap apaan gan kok yang saya error disitunya

Reply

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

Reply

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

Reply

sama ane juga gitu, .

Reply

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

Reply

saya masih error gan, udah ada fragmennya

Reply

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

Reply

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

makasih

Reply

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

Reply

Post a Comment