Android Markers MySQL
Android Markers MySQL
Aplikasi ini menampilkan data Markers dari database MySQL ke Google Map API. Kemudian
apabila dialog pada marker di klik akan menampilkan Toast dari nama tempat Marker tersebut.
Sebelum memulai tutorial ini teman-teman harus membaca posting Android Google Map API
Tutorial sebelum memulai membuat dan mengikuti tutorial ini!
Langkah pertama yaitu membuat database dengan nama wisatademak kemudian membuat
tabel dengan nama wisata dan struktur tabelnya seperti berikut ini :
Column Name Data Type Lenght Primary Key Not null Auto Increment
id int 5 v v v
nama varchar 30
lat double
lng double
Buka build.gradle dan tambahkan Volley library dan Google Map Play Service library
didalamnya.
1 compile 'com.mcxiaoke.volley:library-aar:1.0.0'
2 compile 'com.google.android.gms:play-services:10.2.1'
build.gradle
1
2 dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
3 androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
4 exclude group: 'com.android.support', module: 'support-annotations'
5 })
6 compile 'com.android.support:appcompat-v7:26+'
7 compile 'com.android.support.constraint:constraint-layout:1.0.2'
compile 'com.mcxiaoke.volley:library-aar:1.0.0' /*tambahan*/
8 compile 'com.google.android.gms:play-services:10.2.1' /*tambahan*/
9 testCompile 'junit:junit:4.12'
10 }
11
Agar project terstruktur dan terorganisir, buat paket dengan nama app. Untuk membuat paket
baru , klik kanan pada src=>New=>Peckage dan memberikan nama paket .
Contoh : com.dedykuncoro.googlemapapimysql.
Buat class AppController.java didalam package app dan tambah coding seperti dibawah ini.
Class tunggal yang menginisialisasi class global yang diperlukan. Semua objek yang
berhubungan dengan volley diinisialisasi di sini.
AppController.java
1 package com.dedykuncoro.googlemapapimysql.app;
2
import android.app.Application;
3
import android.text.TextUtils;
4
5 import com.android.volley.DefaultRetryPolicy;
6 import com.android.volley.Request;
7 import com.android.volley.RequestQueue;
8 import com.android.volley.toolbox.Volley;
9
/**
10 * Created by Kuncoro on 15/06/2017.
11 */
12 public class AppController extends Application {
13
14 public static final String TAG = AppController.class.getSimpleName();
15
16 private RequestQueue mRequestQueue;
17
private static AppController mInstance;
18
19 @Override
20 public void onCreate() {
21 super.onCreate();
22 mInstance = this;
}
23
24
public static synchronized AppController getInstance() {
25 return mInstance;
26 }
27
28 public RequestQueue getRequestQueue() {
29 if (mRequestQueue == null) {
mRequestQueue = Volley.newRequestQueue(getApplicationContext());
30 }
31
32
33
34
35
return mRequestQueue;
36 }
37
38 public <T> void addToRequestQueue(Request<T> req, String tag) {
39 req.setTag(TextUtils.isEmpty(tag) ? TAG : tag);
40 req.setRetryPolicy(new DefaultRetryPolicy(0, DefaultRetryPolicy.DEFAULT_MAX
41 DefaultRetryPolicy.DEFAULT_BACKOFF_MULT));
getRequestQueue().add(req);
42 }
43
44 public <T> void addToRequestQueue(Request<T> req) {
45 req.setTag(TAG);
46 req.setRetryPolicy(new DefaultRetryPolicy(0, DefaultRetryPolicy.DEFAULT_MAX
DefaultRetryPolicy.DEFAULT_BACKOFF_MULT));
47
getRequestQueue().add(req);
48 }
49
50 public void cancelPendingRequests(Object tag) {
51 if (mRequestQueue != null) {
52 mRequestQueue.cancelAll(tag);
}
53 }
54
55 }
56
57
58