Membuat Peta Tempat Menggunakan Google Maps Android V2 API (Part 2 - deteksi lokasi user)
2:04 AMDeteksi Lokasi User
Ketika kita melihat Location Based Application yang ada pada smartphone, pasti ada satu fitur yang selalu disediakan. Fitur apakah itu?? :)
Fitur yang selalu disediakan dalam Location Based Application adalah fitur get my location, atau mendeteksi lokasi user saat ini.
Untuk menambahkan fitur get my location pada aplikasi kita, kita edit sedikit kode yang sudah kita buat pada tutorial sebelumnya, baca PART 1 jika anda belum membacanya. . :)
Berikut kode pada MainActivity.java
Setelah kita ubah kode kita menjadi seperti yang diatas, mari kita jalankan aplikasi yang telah kita buat, jangan lupa untuk menyalakan GPS dan Internet Connection. . :)
Daannn, voila. . akan muncul hasilnya seperti dibawah ini.
Jika kita lihat lagi code pada MainActivity.java maka kita melihat beberapa method seperti onResume, onCreate dan onPause, saya akan coba jelaskan apa fungsi beberapa method diatas.
Pertama-tama kita pahami dulu apa itu activity. . Activity adalah komponen yang memungkinkan interaksi antara user dengan aplikasi kita, atau mudahnya activity adalah tempat kita meletakkan elemen-elemen user interface.
Android sendiri menggunakan sistem callback dalam Activity lifecycle nya, Callback sendiri adalah suatu fungsi yang diterapkan pada event tertentu.
onCreate() adalah method yang dipanggil ketika activity dibuat, dalam aplikasi kita saat ini kita memanggil layout activity_main untuk ditampilkan pada layar, dan setelah itu memanggil method initialize() untuk menampilkan peta di dalam aplikasi.
onPause() adalah method yang dipanggil ketika activity dalam keadaan paused. Misalnya kita sedang membuka aplikasi kita, tiba-tiba ada popup SMS masuk, nah ketika kita selesai membalas sms dan masuk kembali ke aplikasi kita tidak perlu meload ulang lagi bukan??Intinya method ini biasa dipanggil ketika Activity kita masih ada tetapi kehilangan fokus. Dalam aplikasi kita ketika onPause() dipanggil maka aplikasi kita berhenti untuk mereturn lokasi terkini.
onResume() adalah method yang dipanggil ketika activity kita mendapatkan fokus sehingga user dapat berinteraksi lagi dengan aplikasi kita.
Semoga bermanfaat, baca juga tutorial lainnya
GBU ^_^
17 comments
kok ketika mapnya di geser kembali ke tempat posisi kita yaa ?
ReplyDeletebagian:
DeletemMap.animateCamera(CameraUpdateFactory.newCameraPosition(cameraPosition));
ilangin aja, atau dikasi kondisi kalo pas start aja animasinya mas. .
dia berfungsi buat animate camera setiap lokasi user berubah. .
Terimakasih mas , sudah bisa
Deletesangat membantu sekali
Yang bagian animate camera diilangin aja. . Kalo engga dikasi boolean yang buat animate ke posisi waktu pertama kali di load. .Lagi lewat hp susah kasi contohnya
ReplyDeleteSebelumnya tutorial mas sangat bermanfaat, terimakasih mas. boleh kasih penjelasan lebih detail yang ini mas contohnya :D
Deletemisalkan saya punya variabel boolean init=true;
Deletebiar animate camera nya engga jalan terus, atau balik ke posisi awal terus kita kasih statement if
if(init=true)
{
animate camera;
init=false;
}
ketika statement if terpenuhi atau jalan, secara otomatis boolean init jadi false dan animate camera tentu aja engga jalan karena statement if nya engga terpenuhi..
statement if ditaruh di mana gan?
DeleteMas, aku kasih boolean trs katanya void tidak cocok untuk parsing ke boolean. itu gimana ya mas? kayanya saya belum paham :|
ReplyDeleteboolean nya buat apa?
Deletesaya kasi boolean biasanya cuma buat cek kondisi. .
kalo boolean ga bisa pake aja int, kasi value 0 buat false, 1 buat true. .
:D
saya kurang paham juga sama pertanyaannya. .
thanks again! bro
ReplyDeletesiiiip
Deletekalau mau mengambil koordinat posisi pengguna berada gimana ya mas? :)
ReplyDeletekoordinat posisi disimpan di variabel lokasi..
Deletebaris 90..
makasih mas..
ReplyDeletemau tes dulu lah..
Mas mau tannya kalau dibuat jadi navigation bisa ga? trus kalau setiap user ketemu belokan ada pemberitahuan dari mapsnya bisa ga "kaya belok kiri atau kanan"?
ReplyDeleteKalau ditambah tempat tujuan, kita yang menentukan tempat tujuan tersebut (koordinat tempat tujuan disimpat didatabase) itu gimana ya?
ReplyDeletekenapa saya error ya di getSupportFragmentManager()
ReplyDelete