Anda di halaman 1dari 18

Tutorial Android Sharing Knowledge Web and Mobile Technology

http://agusharyanto.net/wordpress/?p=496

Share Aplikasi Android Place Finder

Tutorial Android Menampilkan Lokasi GPS pada Google Map

Tutorial Aplikasi Android LBS Rumah Makan Padang


Jumpa lagi dengan Agus Haryanto dalam seri tutorial Android. Location Based Service (LBS), Nampak terdengar hebat namanya ditelinga apa lagi kalau kita bisa membuat aplikasi yang memanfaatkan Location Based Service. Dari pembaca blog ini mungkin ada yang merasa kagum dengan kemampuan FourSquare yang dapat mengetahui kita checkin digedung apa, mall apa atau restoran apa. Atau dengan aplikasi toresto, aplikasi local android buatan anak bangsa yang mampu memberikan kita infrormasi restoran atau rumah makan yang dekat dengan posisi kita. kita Anda pernah melihat status teman anda di facebook Check In @Plaza Semanggi Anda pernah coba aplikasi yang menunjukkan posisi kita sekaligus tempat-tempat yang dekat dengan

Semua itu bisa dibilang termasuk golongan Location Based Service (LBS)

Saya juga bertanya-tanya kok bisa yah aplikasi mereka memberikan informasi seperti itu ? Untuk menjawab pertanyaan itu saya coba buatkan gambar konsep aplikasi LBS

Dari gambar diatas antara kita dengan lokasi-lokasi disekitar kita terdapat jarak, ada yang 200m atau 210m atau 100m dan lainnya. Jadi sudah jelaskan yang dijadikan parameter untuk aplikasi LBS adalah jarak dari posisi kita berada ke lokasi-lokasi di sekitar kita. Tapi kenapa kok mereka bisa tahu yah nama lokasinya dengan benar, itu karena mereka mempunyai bank data yang menyimpan koordinat lokasi berserta namanya. Jadi untuk membuat sebuah aplikasi LBS minimal harus mempunyai kemampuan untuk 1. Dapat mengetahui koordinat posisi kita 2. Punya bank data atau dapat mengakses bank data yang menyimpna data koordinat lokasi dan informasi

1 of 18

5/23/2012 11:57 AM

Tutorial Android Sharing Knowledge Web and Mobile Technology

http://agusharyanto.net/wordpress/?p=496

mengenai lokasi tersebut 3. Dapat Menghitung jarak antara posisi kita dengan sebuah lokasi. 4. Dapat Menampilkannya menjadi informasi yang bisa dibaca user contohnya kedalam Map (Google Map) Jadi secara singkat Algoritma Aplikasi LBS adalah 1. Dapatkan koordinat posisi kita melalu GPS 2. Tetapkan Lokasi-lokasi yang ingin kitampilkan difilter berdasarkan jarak 3. Gambar Posisi kita dan Lokasi-lokasi terdekat dalam map Oke langsung saja kita praktekan, Pada Training Bootcamp IndosatM2 sabtu kemarin kami membuat aplikasi LBS Rumah makan padang disekitar ku. Berikut Langkah-langkahnya 1. Buat Projectnya, ikuti inputan seperti dibawah ini.

2. setelah project tercreate maka secara otomatis android membentuk 3 file yaitu : main.xml string.xml TunjukLokasiBeraksi.java

2 of 18

5/23/2012 11:57 AM

Tutorial Android Sharing Knowledge Web and Mobile Technology

http://agusharyanto.net/wordpress/?p=496

3. Agar Kita dapat melihat posisi kita pada map maka kita harus menandakan dengan dengan gambar atau icon, dalam dunia google map ini disebut marker. Untuk itu kita perlu meletakkan file gambar untuk marker (marker.png) di directory res/drawable dan kita juga file gambar untuk bangunan disekitar kita

4. Edit main.xml lalu isikan kode berikut 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 <?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="@+id/mapView" android:layout_width="fill_parent" android:layout_height="fill_parent" android:enabled="true" android:clickable="true" android:apiKey="Key Google Map" /> </RelativeLayout>

Disini untuk menampilkan MAPnya kita menggunakan tag com.google.android.maps.MapView, sedangkan untuk Layoutnya adalah Relative Layout Untuk android:apiKey, isi dengan key Google Map yang telah kita buat dari tutorial sebelumnya 5. Untuk dapat melakukan menampilan Map Google Map dan Menangkap GPS dari satelit kita perlu menambahkan <uses-library> com.google.android.maps dan <uses-permission> INTERNET, ACCESS_FINE_LOCATION, ACCESS_COARSE_LOCATION nya melalui file AndroidManifest.xml , buka file AndroidManifest.xml lalu ketikkan seperti kode berikut : 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.agus.map.lok" android:versionCode="1" android:versionName="1.0"> <uses-sdk android:minSdkVersion="7" /> <application android:icon="@drawable/icon" android:label="@string/app_name"> <uses-library android:name="com.google.android.maps" /> <activity android:name=".TunjukLokasiBeraksi" 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-permission android:name="android.permission.INTERNET"></uses-permission> <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"> </uses-permission> <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION">

3 of 18

5/23/2012 11:57 AM

Tutorial Android Sharing Knowledge Web and Mobile Technology

http://agusharyanto.net/wordpress/?p=496

</uses-permission> 22 23 </manifest>

6. Sekarang Mari kita buat class Lokasi.java sebagai template object untuk menyimpan data lokasi bangunan, pada project ini adalah rumah makan padang 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 package com.agus.map.lok; public class Lokasi { public double lat = 0; public double lng = 0; public int category = 0; public String lokname = ""; public Lokasi(double plat, double plng, int pcategory, String sname) { this.lat = plat; this.lng = plng; this.category = pcategory; this.lokname = sname; } }

7. Buat Class Baru dengan nama MyItemizedOverlay.java funngsi untma class ini adalah untuk marker (icon penunjuk posisi kita pada Map dan lokasi rumah makan padang disekitar kita) 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 package com.agus.map.lok; import java.util.ArrayList; import java.util.List; import import import import import import android.app.AlertDialog; android.content.Context; android.content.DialogInterface; android.content.DialogInterface.OnClickListener; android.graphics.Canvas; android.graphics.drawable.Drawable;

import com.google.android.maps.ItemizedOverlay; import com.google.android.maps.MapView; import com.google.android.maps.OverlayItem; public class MyItemizedOverlay extends ItemizedOverlay { private ArrayList<OverlayItem> items = new ArrayList<OverlayItem>(); private Drawable marker; private Context mContext; public MyItemizedOverlay(Drawable defaultMarker) { super(defaultMarker); // items = new ArrayList(); marker = defaultMarker; } public MyItemizedOverlay(Drawable defaultMarker, Context context) { super(boundCenterBottom(defaultMarker)); mContext = context; } @Override protected OverlayItem createItem(int index) { return (OverlayItem) items.get(index); } @Override public int size() { return items.size();

4 of 18

5/23/2012 11:57 AM

Tutorial Android Sharing Knowledge Web and Mobile Technology

http://agusharyanto.net/wordpress/?p=496

42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80

} /* * (non-Javadoc) * * @see * com.google.android.maps.ItemizedOverlay#draw(android.graphics.Canvas, * com.google.android.maps.MapView, boolean) */ @Override public void draw(Canvas canvas, MapView mapView, boolean shadow) { super.draw(canvas, mapView, shadow); // boundCenterBottom(marker); } public void addItem(OverlayItem item) { items.add(item); populate(); } @Override protected boolean onTap(int index) { OverlayItem item = items.get(0); AlertDialog.Builder dialog = new AlertDialog.Builder(mContext); dialog.setTitle(item.getTitle()); dialog.setMessage(item.getSnippet()); dialog.setPositiveButton("Close", new OnClickListener() { @Override public void onClick(DialogInterface arg0, int arg1) { arg0.dismiss(); } }); dialog.show(); return true; } }

8. Sekarang Mari kita edit File TunjukLokasiBeraksi.java 001 002 003 004 005 006 007 008 009 010 011 012 013 014 015 016 017 018 019 020 021 022 023 024 025 026 package com.agus.map.lok; import import import import import import import import import import import import import import java.util.ArrayList; java.util.Iterator; java.util.List; android.content.Context; android.graphics.drawable.Drawable; android.location.Location; android.location.LocationListener; android.location.LocationManager; android.os.Bundle; com.google.android.maps.GeoPoint; com.google.android.maps.MapActivity; com.google.android.maps.MapView; com.google.android.maps.Overlay; com.google.android.maps.OverlayItem;

/** * Aplikasi ini untuk menampilkan lokasi posisi koordinat GPS * kita saat ini Pada MAP dan bangunan disekitarnya * * @author Agus Haryanto */ public class TunjukLokasiBeraksi extends MapActivity { private MapView mapView;

5 of 18

5/23/2012 11:57 AM

Tutorial Android Sharing Knowledge Web and Mobile Technology

http://agusharyanto.net/wordpress/?p=496

027 028 029 030 031 032 033 034 035 036 037 038 039 040 041 042 043 044 045 046 047 048 049 050 051 052 053 054 055 056 057 058 059 060 061 062 063 064 065 066 067 068 069 070 071 072 073 074 075 076 077 078 079 080 081 082 083 084 085 086 087 088 089 090 091 092 093 094

private LocationManager locManager; private LocationListener locListener; private ArrayList<Lokasi> list_lokasi = new ArrayList<Lokasi>(); /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); initLokasi(); initMap(); initLocationManager(); } /** * Initialize the map to the Data Location. */ private void initLokasi() { list_lokasi.add(new Lokasi(-6.29826d, 106.82024d, 1, "RM Padang Sari Mande")); list_lokasi.add(new Lokasi(-6.28326d, 106.82324d, 2, "RM Padang Sederhana")); list_lokasi .add(new Lokasi(-6.29326d, 106.83324d, 3, "RM Padang Garuda")); } /** * Initialize the map to the LinearLayout. */ private void initMap() { mapView = (MapView) findViewById(R.id.mapView); mapView.displayZoomControls(true); mapView.getController().setZoom(15); } /** * Initialize the location manager. */ private void initLocationManager() { locManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE); locListener = new LocationListener() { // method ini akan dijalankan apabila koordinat GPS berubah public void onLocationChanged(Location newLocation) { tampilkanPosisikeMap(newLocation); } public void onProviderDisabled(String arg0) { } public void onProviderEnabled(String arg0) { } public void onStatusChanged(String arg0, int arg1, Bundle arg2) { } }; locManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 1000, locListener); } /** * This method will be called when current position changed is submitted via * the GPS. * * @param newLocation

6 of 18

5/23/2012 11:57 AM

Tutorial Android Sharing Knowledge Web and Mobile Technology

http://agusharyanto.net/wordpress/?p=496

095 096 097 098 099 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162

*/ protected void tampilkanPosisikeMap(Location newLocation) { List<Overlay> overlays = mapView.getOverlays(); // first remove old overlay if (overlays.size() > 0) { for (Iterator iterator = overlays.iterator(); iterator.hasNext();) { iterator.next(); iterator.remove(); } } // transform the location to a geopoint GeoPoint geopoint = new GeoPoint( (int) (newLocation.getLatitude() * 1E6), (int) (newLocation .getLongitude() * 1E6)); GeoPoint myposition = geopoint; Location locationA = new Location("point A"); Location locationB = new Location("point B"); locationA.setLatitude(geopoint.getLatitudeE6() / 1E6); locationA.setLongitude(geopoint.getLongitudeE6() / 1E6); // initialize icon Drawable icon = getResources().getDrawable(R.drawable.marker); icon.setBounds(0, 0, icon.getIntrinsicWidth(), icon .getIntrinsicHeight()); // create my overlay and show it MyItemizedOverlay overlay = new MyItemizedOverlay(icon, this); OverlayItem item = new OverlayItem(geopoint, "My Location", "Lat:" + locationA.getLatitude() + "\nLng:" + locationA.getLongitude()); overlay.addItem(item); mapView.getOverlays().add(overlay); for (int i = 0; i < list_lokasi.size(); i++) { geopoint = new GeoPoint((int) (list_lokasi.get(i).lat * 1E6), (int) (list_lokasi.get(i).lng * 1E6)); locationB.setLatitude(geopoint.getLatitudeE6() / 1E6); locationB.setLongitude(geopoint.getLongitudeE6() / 1E6); double distance = locationA.distanceTo(locationB); if (list_lokasi.get(i).category == 1) { icon = getResources().getDrawable(R.drawable.shop); } else if (list_lokasi.get(i).category == 2) { icon = getResources().getDrawable(R.drawable.building); } else if (list_lokasi.get(i).category == 3) { icon = getResources().getDrawable(R.drawable.store); } icon.setBounds(0, 0, icon.getIntrinsicWidth(), icon .getIntrinsicHeight()); overlay = new MyItemizedOverlay(icon, this); item = new OverlayItem(geopoint, list_lokasi.get(i).lokname, "Lat:" + list_lokasi.get(i).lat + "\nLng:" + list_lokasi.get(i).lng + "\n Jarak:" + distance+"m"); overlay.addItem(item); mapView.getOverlays().add(overlay); } // move to location mapView.getController().animateTo(myposition); // redraw map mapView.postInvalidate(); } @Override protected boolean isRouteDisplayed() {

7 of 18

5/23/2012 11:57 AM

Tutorial Android Sharing Knowledge Web and Mobile Technology

http://agusharyanto.net/wordpress/?p=496

163 164 165

return false; } }

Perhatikan method initLokasi(), pada method ini kita mendaftarkan data lokasi dari rumah makan padang. Disini datanya bukan data benaran hanya contoh saja agar kita bisa membuktikan kerja Aplikasi ini 1 2 3 4 5 6 7 8 9 private void initLokasi() { list_lokasi.add(new Lokasi(-6.29826d, 106.82024d, 1, "RM Padang Sari Mande")); list_lokasi.add(new Lokasi(-6.28326d, 106.82324d, 2, "RM Padang Sederhana")); list_lokasi .add(new Lokasi(-6.29326d, 106.83324d, 3, "RM Padang Garuda")); }

Pada method diatas kita menyimpan datanya ke sebuah ArrayList list_lokasi Kalau ditablekan akan seperti ini Latitude -6.29826 -6.28326 -6.29326 Longitude 106.82024 106.82324 106.83324 Kategori 1 2 3 Nama RM Padang Sari Mande RM Padang Sederhana RM Padang Garuda

Yang penasaran untuk menampilkan marker pada googlemap dengan gambar yang berbeda-beda. Perhatikan code ini 1 2 3 4 5 6 7 if (list_lokasi.get(i).category == 1) { icon = getResources().getDrawable(R.drawable.shop); } else if (list_lokasi.get(i).category == 2) { icon = getResources().getDrawable(R.drawable.building); }else if (list_lokasi.get(i).category == 3) { icon = getResources().getDrawable(R.drawable.store); }

Nah disini bangunan rumah makan padang akan tergambar dimap berdasarkan kategorinya Kategori 1 shop.gif 2 building.gif 3 store,gif Oh ia salah satu syarat aplikasi LBS kan dia harus bisa menghitung jarak. Nah ternyata android googlemap sudah menyediakan fungsi tersebut yaitu dengan menggunakan distanceTo 9. sekarang mari kita jalankan programnya. Bagi yang menggunakan emulator jangan lupa mainkan Latitude dan longitudenya dari Emulator Control (DDMS) set Latitude = -6.298418 Longitude=106.82639 maka akan tampil seperti ini Gambar

8 of 18

5/23/2012 11:57 AM

Tutorial Android Sharing Knowledge Web and Mobile Technology

http://agusharyanto.net/wordpress/?p=496

Yang gambar balon merah adalah lokasi kita sedangkan yang lainnya adalah gambar bangunan disekitar kita coba kita klik/sentuh salah satu bangunan yang paling jauh.

9 of 18

5/23/2012 11:57 AM

Tutorial Android Sharing Knowledge Web and Mobile Technology

http://agusharyanto.net/wordpress/?p=496

Akan muncul informasi Nama, latitude, longitude dan jarak bangunan tersebut dari posisi kita. Disini dapat dilihat bahwa nama bangunan itu adalah RM Padang Sederhana dengan jarak 1708,8 m dari posisi kita. Nah cobalah klik bangunan lainnya untuk mendapatkan informasinya. Pada saat ini lokasi bangunan yang ada disekitar kita belum kita filter jaraknya. Salah satu yang disyaratkan dalam aplikasi LBS adalah filtering jarak. Sekarang mari kita coba buat filtering atau pembatasan lokasi yang muncul adalah lokasi yang jaraknya kirang dari 1000m. Untuk itu tambahkan If (distance <1000){ Dibawah code double distance = locationA.distanceTo(locationB); Dan tambah kan { diatas code mapView.getController().animateTo(myposition); Kemudian mari kita run kembali aplikasinya. Maka sekarang yang terlihat hanya 2 bangunan saja.

10 of 18

5/23/2012 11:57 AM

Tutorial Android Sharing Knowledge Web and Mobile Technology

http://agusharyanto.net/wordpress/?p=496

Wah, tidak menyangkayah kita bisa membuat aplikasi LBS. Alhamdulillah Sekarang kita sudah punya satu senjata lagi untuk buat aplikasi yang keren. Pada aplikasi LBS selain aplikasi, data memegang peranan yang sangat penting, karma kalau tidak ada data adalah hal yang mustahil kita dapat membuat aplikasi LBS. buat para mahasiswa kesempatan nih selain sebagai pengembang kita juga dapat menjadi provider data. Cara yang sederhana adalah dari kumpulkan data bangunan lingkungan sekitar campus dulu. Semoga Bermanfaat Agus Haryanto Sumber : http://developer.android.com http://blogs.itemis.de/frey/2009/04/07/location-based-services-on-android-part-2/

May 13th, 2011 | Tags: agus haryanto, android lbs, gedung, LBS, Location Based Service, makan, padang, rumah, tutorial android | Category: Android

11 of 18

5/23/2012 11:57 AM

Tutorial Android Sharing Knowledge Web and Mobile Technology

http://agusharyanto.net/wordpress/?p=496

96 comments to Tutorial Aplikasi Android LBS Rumah Makan Padang


Older Comments 1 2

zulkifli
November 10th, 2011 at 10:37 am kok petanya punya saya Pak g muncul pdahal saya udah punya key api map dr google dan udah saya Edit main.xml lalu isikan kode berikut: kira2 masalahnya dimna Pak mohon penjelasannya makasih sebelumnya mas

tuhildo
November 27th, 2011 at 6:41 am Thank mas

tuhildo
November 27th, 2011 at 6:42 am thank

fandi
November 30th, 2011 at 11:25 am pak agus mau nnya klo ada 2 mrker d map mrker dr gps yg stu na lgi mrker statis konsep source code na kya LBS pnya pak agus..biar ps tmpil awal cntermap na d mrker yg statis gmna cra na pak agus? terima kasih

kuchiki
December 1st, 2011 at 9:57 am @Zulfikli, aq juga pernah kena error kaya gitu di DDMS nya muncul error Couldnt get connection factory client.. klo kaya gt harus install ulang sdk-nya supaya dapet debug.keystore(c://Program Files/user/.android) baru trus,, lebih baik di back up dlu datanya biar klo install ulangny bermasalah.. tinggal dicopy aja file2 selain debug.keystore-nya smoga membantu..

yudha
December 6th, 2011 at 7:45 am @zulkifli ,bantu sedikit saya sebelmnya juga pernah kya gtu,, ksalahanya emang di key API map nya,, kalo masih nyimpan nomor certifikat fingerprint (MD5):11:D0:e8 yg kaya gtu, bisa coba di bikin lg Api keynya,, masuk ke http://code.google.com/android/maps-api-signup.html bwat bikin lg,, nanti dari kodenya di copy paste aja.. kalo di tulis sendiri bisa bisa salah,,

12 of 18

5/23/2012 11:57 AM

Tutorial Android Sharing Knowledge Web and Mobile Technology

http://agusharyanto.net/wordpress/?p=496

yudha
December 6th, 2011 at 7:48 am @mas Agus Haryanto mas mau nanya nih mas,,, mungkin gak mas dari aplikasi LBS ini kita bisa menggunakan fungsi GPS juga mas?,,

arf
December 6th, 2011 at 7:13 pm mas agus sya mau tanya,, kalau kita pakai zoom gimana supaya gambar yang kita marker ketika kita zoom lokasinya terlihat tidak berubah dari lokasi awal??

Agus Haryanto
December 10th, 2011 at 4:29 am @yudha, Bukannya tutorial LBS ini sudah pakai GPS

Arief
December 10th, 2011 at 9:50 am mas, mau tanya dong. itu di tutorial yg bagian nomer 1 kan kita milih target. disitu tulisannye untuk vendor : google inc dengan API = 8. untuk mendapatkan dari vendor google.inc itu gimana ye? karena di eclipse saya belom ada yg seperti itu. apa itu berpengaruh misalnye saya memilih yg android 2.2 untuk targetnye? (atasnye google.inc) terima kasih

Yusti
December 11th, 2011 at 9:13 am @mas Agus mau tanya nih mas, saya juga punya masalah seperti mas zulkifi yang mapnya tidak muncul padahal saya sudah menyalakan GPS di android saya. apakah ada solusi lain? atau mungkin ada pengaruh sebab API yag digunakan masih versi 2? terima kasih sebelumnya

yudha
December 11th, 2011 at 12:15 pm @mas Agus maksud saya GPS tracking mas., hehehe penunjuk arah kaya di iklan XL,,

aditya
December 13th, 2011 at 5:22 am mas agus knp posisi saya waktu jalankan aplikasinya kok d antartika y mas?? trima kasih

zulkifli
December 13th, 2011 at 6:41 am @kuchiki ,@yudha , Makasih banyak infonya mas. lanjutkan terus mas diskusinya

rin
December 17th, 2011 at 1:33 pm

13 of 18

5/23/2012 11:57 AM

Tutorial Android Sharing Knowledge Web and Mobile Technology

http://agusharyanto.net/wordpress/?p=496

maaf mas mo tanya, method distanceTo ntu dapet hitungan jarakna berdasar hitungan jarak melalui jalan atau hanya hitungan garis langsung (ga lewat jalan, jadi hitung tabrak2 bangunan)?? satu lagi mas, misal nama gambar shop, building dan store saya ganti jadi gambar_1,gambar_2 dan gambar_3. dalam benak saya, biar ga terlalu menyita banyak tempat jadi pake perulangan gt. perkiraan coding yang da di benak saya : //misal dari perkiraan jenis bangunan yang akan di pakai ada 10 jml_ged = 10; for (int z=1; z <=jml_ged; z++){ if (list_lokasi.get(i).category == z) { icon = getResources().getDrawable(R.drawable.gambar_z); } } pengenna sesimple itu. tapi sudah saya coba, ternyata ga mo cze tidak ada nama file gambar_z, padahal yang saya maksud, z itu bernilai seperti pada perulangan. kira2 ada solusi yang bisa menggambarkan maksud dari sepenggal coding di atas?

riyadh
December 20th, 2011 at 6:48 pm @rin *coba berpendapat secara logika* menurut saya, kalo dilihat dari codingnya, getDrawable(R.drawable.gambar_z); itu diambil dari file R.java (*auto-generated file) yg sumbernya berada di folder res\drawable yg berisi FILE GAMBAR gambar_z.jpg <-contoh yg berarti fungsi looping harus "men-generate file gambar", dan sepertinya fungsi tersebut gak bisa diterapkan di situ. @mas Agus mas, mau tanya: kalo mau diterapkan filterisasi melalui check button / radio button atau menu, diterapkannya dimana ya mas? jadi kita bisa menampilkan semua lokasi yg sudah diprogram, semisal kita berada lebih dari 1000m dari lokasi yg diprogram. *berdasarkan kode: If (distance <1000){ mohon petunjuk penerapan pengkodean tombol atau menunya mas. Makasih banyak, mas Agus.

dudy
December 23rd, 2011 at 1:57 pm iya mas, sama kayak riyadh di atas. kalo mau masukin menu atau submenu check button public boolean onCreateOptionsMenu {} buat coding If (distance <1000){}" posisinya ditaro di bagian mana ya mas Agus? saya taro sebelum "public boolean isRouteDisplayed () {}" malah eror mas. solusinya gimana mas? terima kasih

joni
January 11th, 2012 at 11:57 pm @Mas Agus Mas markerny malah muncul dantartika pdhl ud dset demulator control ltd n lngny djabar, solusiny itu gmn y mas ??

dimz
January 13th, 2012 at 3:47 am

14 of 18

5/23/2012 11:57 AM

Tutorial Android Sharing Knowledge Web and Mobile Technology

http://agusharyanto.net/wordpress/?p=496

mau tanya, kenapa kok pas di ubah long sama lat nya di emulator control g ada mapnya yah??padahal kalo buat map g pake gps(long/lat di input di kodingan) selalu jalan mapnya,,,,,

scode
January 16th, 2012 at 11:41 am mas agus, kalo biar realtime/tracking gimana ya??? maksudnya gpsnya follow pergerakan secara realtime kalo ini kan ga realtime, user bergerak kordinatnya tetap, gak refresh.. THX.

ojan
January 20th, 2012 at 12:56 pm Keren Ganthx:D

deni
January 23rd, 2012 at 11:03 am mas sya mau tanya.. gimana caranyaketika kita mendapatkan jarak dai rumah mkan itu terus kita pingin sorting lagi dan kita tampilkan berdasarkan jarak terdeat caranya gimana mas? jadi nampilinnya bukan maps, cuma text biasa

sulai
February 3rd, 2012 at 6:52 am bank,building,shop,marker tidak kelihatanknp ya?

arly
February 10th, 2012 at 4:01 am apakah jarak yang diukur berdasarkan jalan [jalan yang dibangun pemerintah] yang dilalui atau jarak dengan garis lurus antara si pengakses aplikasi dengan objek bang ??

bambang
February 11th, 2012 at 10:30 am Mas, jika kita ingin menambahkan fitur: 1. checkin 2. menampilkan jumlah pengguna di tempat rumah makan di LBS 3. menampilkan review rumah makannya gimana mas? mohon tutorialnya?

chris
February 23rd, 2012 at 1:13 pm @Mas Agus saya coba aplikasi tersebut persis sama kayak source code yang di tulis mas agus tapi setelah dijalankan di emulatornya muncul The Application LBBSSederhana has unexpectedly. Please try again mohon masukanya mas. binggung yg salah pada apanya terimaksih mas.

15 of 18

5/23/2012 11:57 AM

Tutorial Android Sharing Knowledge Web and Mobile Technology

http://agusharyanto.net/wordpress/?p=496

umerto
March 1st, 2012 at 7:47 pm makasihh Pak aguss,, keren. semangat terus

syenni
March 6th, 2012 at 4:00 am mas, saya masih force close pdhl udh pake library kira kira kenapa itu ya?

Vadhiem
March 25th, 2012 at 3:36 am om agus.. udah bisa di running.. muncul mapnya (map luar negeri) nah setelah di tambahkan : Untuk itu tambahkan If (distance <1000){ Dibawah code double distance = locationA.distanceTo(locationB); Dan tambah kan { diatas code mapView.getController().animateTo(myposition); Kemudian mari kita run kembali aplikasinya. Maka sekarang yang terlihat hanya 2 bangunan saja. kemudian saya running.. nb: settingan Latitude dan longitudenya dari Emulator Control (DDMS) set Latitude = -6.298418 Longitude=106.82639 muncul nya seperti ini : http://i.imgur.com/tw3e3.jpg kenapa ya mastah ??

Vadhiem
March 25th, 2012 at 11:40 am wah ternyata pas d coba di hape aplikasinya jalan om.. kesalahan pada emulator yg lemot sepertinya.. hihihi.. Thanks om tutorialnya.. sangat membantu ^^

arief
March 29th, 2012 at 3:44 am pak mau tanya. misalnya saya ingin menampilkan data seperti rumah makan, tetapi bukan saya yang menginputkan. saya mengimport data rumah makan misal dari google map, apakah bisa pak? bisa kasih refrensi untuk saya belajar? karena kalo kaya menginputkan manual, saya ambil contoh kasus memasukan data rumah makan di bandung. misalnya ada rumah makan ABC di daerah XYZ, tapi tidak saya inputkan, berarti tidak efektif dong.

alamsyah
March 30th, 2012 at 9:57 pm mas, bisa gak aplikasi android ini yang mas di instal di hp Nokia E63 gw.. mohon pencerahan nya donk

kay
April 1st, 2012 at 9:04 am

16 of 18

5/23/2012 11:57 AM

Tutorial Android Sharing Knowledge Web and Mobile Technology

http://agusharyanto.net/wordpress/?p=496

mas ko saya gak nampil ya maps nya ?? pdahal aplikasi ny ud jalan dan API key ny jg ud dimasukin itu knp ya ?? mhon pencerahan nya

Oree
April 2nd, 2012 at 1:09 pm @mas Agus sebelumnya saya berterima kasih atas tutorial yang mas share, itu berguna banget buat mahasiswa kayak saya saya mau nanya mas masalah lbs ini.. saat pertama kali run, program berjalan dengan baik tetapi koordinatnya entah dimana, maka dari itu saya set ulang ddms-nya seperti tutor diatas(lad & long), tetapi map-nya malah tidak tampil. yang tampil hanya marker-nya saja. itu masalahnya dimana ya mas? mohon pencerahannya mas agus -regards, oree-

dimz
April 4th, 2012 at 8:43 am buat atas ane. situ pake windows 7 gak??

Oree
April 4th, 2012 at 12:43 pm @dimz iya mas, saya pake windows 7.. emang knp ya mas?

ichsan
April 17th, 2012 at 2:54 pm pak mau naya dong,, kok di saya force close yak T_____T mhn pencerahan yak,, arigatou U.U

dimz
April 19th, 2012 at 2:25 am @Oree : coba situ aplikasinya dicoba di windows XP deh,,,,ane juga gitu kok kalo di windows 7, pas di XP lancar jaya,,,,

Oree
April 23rd, 2012 at 3:20 am dimz: jadi selain di win xp gak bisa mas? supaya bisa gimana ya? :bingung

dimz
April 25th, 2012 at 9:48 am waduh ane g tau supaya bisa gmn, kalo ane sih lepinya dual, ada xp ada win 7 nya,,,,

Arie
April 29th, 2012 at 4:39 am mas agus saya telah mengikuti langkah demi langkah,tepapi pas saya runing, terdapat 1 error d

17 of 18

5/23/2012 11:57 AM

Tutorial Android Sharing Knowledge Web and Mobile Technology

http://agusharyanto.net/wordpress/?p=496

clas MyItemizedOverlay.java lebih tepatnya d line ini : public void onClick(DialogInterface arg0, int arg1) { mohon pencerahannya.. thx sebelumnya

wahyu
May 3rd, 2012 at 5:54 pm punya saya jg error sperti pnya bro arie mas, mohon dijawab mas

hidayat siddiq
May 8th, 2012 at 4:06 am @mas agus : mas aplikasinya sudah jalan, hanya yang muncul cuma MARKER nya saja, MAP nya tidak muncul, itu kenapa ya mas?? mohon pencerahannya mas. bales di sini boleh kirim email juga bisa di hidayatgoodboy@yahoo.com terima kasih

eichiro kun
May 9th, 2012 at 3:23 pm @mas Agus : Mau Tanya kok saya error ya pas di coba d run malah force close?? mohon bantuannya ada tanda seru kuning di file MyItemizedOverlay.java baris public class MyItemizedOverlay extends ItemizedOverlay { dan baris private Drawable marker; dan pada file TunjukLokasiBeraksi.java pada baris for (Iterator iterator = overlays.iterator(); iterator.hasNext();) {

twoh
May 11th, 2012 at 1:44 pm Keren !!

eichiro kun
May 18th, 2012 at 7:04 am hidayat siddiq mau donk share yg km cba, yg q ga mau muncul.

Older Comments

18 of 18

5/23/2012 11:57 AM