Fiuhh akhirnya jadi bisa mencoba membuat Aplikasi Peta dengan Google Map V2. Cukup panjang prosesnya. Katanya sih Google Map Android yang versi 1 akan dishutdown tahun ini, artinya semua aplikasi android yang menggunakan Google Map versi sebelumnya Petanya tidak akan muncul bahkan mungkin aplikasinya akan mati tidak bisa dijalankan :( apa iya, kayaknya Google tidak akan berani secepat itu menghentikan layanan, seperti halnya Google Map Web Versi 2 juga sudah lama sejak kemunculan Google Map versi 3 belum juga dihentikan. Kalau Google tetap nekat bisa-bisa ribuan aplikasi di Google Play mati semua hehe.
Pertama-tama buka Android SDK Manager, pastikan anda sudah menginstall Google APIs, kelihatannya yang pasti mendukung Google Map Android V2 adalah Google APIs versi 17. Penulis belum pernah coba versi di bawahnya.
Kemudian pastikan juga sudah menginstall Google Play Services
Kemudian buka Eclipse, buka Window-Preferences-Android-Debug, lihat dahulu lokasi file debug.keystore.
Kemudian buka Command Prompt, kita generate Google API Key dari debug.keystore menggunakan keytool bawaan JDK, caranya ketikkan perintah berikut :
> cd "C:\Program Files\Java\jdk1.7.0_02\bin"\
> keytool.exe -list -v -keystore "C:\Users\PC\.android\debug.keystore" -alias androiddebugkey -storepass android -keypass android
Kemudian copy Key SHA1. Setelah itu kita buka Google API Console di URL https://code.google.com/apis/console, klik Services, aktifkan Google Maps Android API v2
Kemudian klik API Access, klik Android Key, masukkan Key SHA1 yang telah didapatkan diikuti tanda ; dan diikuti nama namespace package, misalnya :
59:56:X8:A0:2C:12:XA:1D:52:0F:3C:XB:41:A6:C7:35:FA:95:1E:E5;com.amijaya.googlemapv2
Klik Create, hasilnya didapatkan Key untuk Project tersebut. Copy API Key-nya.
Kemudian pada Eclipse kita Import dahulu Project Library bawaan SDK Google Play Services, Klik File Import, pilih Android-Existing Android Code Into Workspace :
Kemudian pilih direktori <Android SDK>/extras/google/google_play_services/libproject/google_play_services_lib.
Klik OK, hasilnya akan dimasukkan Project baru bertipe library bernama google_play_services_lib. Project ini akan kita include kan di Project Utama kita.
Kemudian buat Project Utama, klik File-New-Android Project. Jangan lupa memilih Compile With Google APIs.
Setelah Project baru selesai dibuat Klik kanan Project - Properties - Android, klik Add untuk menambahkan Project Library google_play_services_lib :
Kemudian pada activity_main.xml buat tampilan seperti ini :
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity" >
<fragment
android:id="@+id/map"
android:layout_width="match_parent"
android:layout_height="match_parent"
class="com.google.android.gms.maps.SupportMapFragment"
/>
</RelativeLayout>
Kemudian pada MainActivity.java kita ketikkan program berikut :
package com.amijaya.googlemapv2;
import com.google.android.gms.maps.CameraUpdateFactory;
import com.google.android.gms.maps.GoogleMap;
import com.google.android.gms.maps.SupportMapFragment;
import com.google.android.gms.maps.model.BitmapDescriptorFactory;
import com.google.android.gms.maps.model.LatLng;
import com.google.android.gms.maps.model.MarkerOptions;
import android.os.Bundle;
import android.support.v4.app.FragmentActivity;
import android.support.v4.app.FragmentManager;
import android.view.Menu;
//http://cariprogram.blogspot.com
//nuramijaya@gmail.com
public class MainActivity extends FragmentActivity {
final int RQS_GooglePlayServices = 1;
private GoogleMap myMap;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
FragmentManager myFragmentManager = getSupportFragmentManager();
SupportMapFragment mySupportMapFragment = (SupportMapFragment)myFragmentManager.findFragmentById(R.id.map);
myMap = mySupportMapFragment.getMap();
LatLng jogja = new LatLng(-7.782939, 110.367050);
MarkerOptions markerJogja = new MarkerOptions();
markerJogja.position(jogja);
markerJogja.title("Tugu Yogyakarta");
markerJogja.snippet("Tugu Pusat Kota Yogyakarta");
markerJogja.icon(BitmapDescriptorFactory.defaultMarker(BitmapDescriptorFactory.HUE_GREEN));
myMap.setMapType(GoogleMap.MAP_TYPE_NORMAL);
myMap.addMarker(markerJogja);
myMap.getUiSettings().setCompassEnabled(true);
myMap.getUiSettings().setZoomControlsEnabled(true);
myMap.animateCamera(CameraUpdateFactory.newLatLngZoom(jogja, 15));
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.activity_main, menu);
return true;
}
}
Terakhir pada AndroidManifest.xml tambahkan permission, setting dan API Key yang telah didapatkan tadi sehingga seperti ini :
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.amijaya.googlemapv2"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="16" />
<permission
android:name="com.amijaya.googlemapv2.permission.MAPS_RECEIVE"
android:protectionLevel="signature" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-feature android:glEsVersion="0x00020000"
android:required="true" />
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<meta-data android:name="com.google.android.maps.v2.API_KEY" android:value="<GANTI-DGN-ANDROID-API-KEY>" />
<activity
android:name="com.amijaya.googlemapv2.MainActivity"
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>
</manifest>
Hasilnya :
Project selengkapnya silakan didownload disini, di Google Drive, klik File - Download.
Semoga menyenangkan :)
Update Contact :
No Wa/Telepon (puat) : 085267792168
No Wa/Telepon (fajar) : 085369237896
Email : Fajarudinsidik@gmail.com
No Wa/Telepon (puat) : 085267792168
No Wa/Telepon (fajar) : 085369237896
Email: Fajarudinsidik@gmail.com
atau Kirimkan Private messanger melalui email dengan klik tombol order dibawah ini :