Cara Update Lokasi di Background Android

Update lokasi di background menggunakan service foreground android

Halo semuanya, pada postingan ini saya akan membagikan tutorial sederhana untuk kalian yang baru belajar membuat aplikasi android menggunakan android studio. Tutorial kali ini kita akan membuat sebuah aplikasi yang dapat memperbarui lokasi smartphone android kita ketika berpindah tempat walaupun aplikasinya berjalan di background.

Project GetLocationBackground

  • Seperti biasa, hal pertama yang harus kita lakukan tentu membuat project baru di android studio. Pada tutorial ini saya memberikan nama projeknya “GetLocationBackground”.
  • Pastikan anda memilih API 23 sebagai minimum SDK, karena kode pada tutorial ini hanya akan berjalan normal jika menggunakan API 23 atau diatasnya.

Menambahkan dependencies di build.gradle (:app)

  • Import library Google Play services

Menambahkan permission di Manifest

  • Agar aplikasi dapat mengakses lokasi maka kita perlu menambahkan permission di Manifest seperti berikut

Membuat Class Service

  • Pada tutorial ini saya memberikan nama class “LocationService”

Menambahkan requestLocationUpdates() di class service

  • Function dibawah ini digunakan untuk mendapatkan lokasi perangkat secara berkala. Penjelasan selengkapnya silakan klik requestLocationUpdates()

Membuat notification chanel

  • Pada android 8.0 (API 26) atau di atasnya, semua notifikasi harus ditetapkan ke sebuah chanel

Menambahkan Service di Manifest

  • Dengan mengikuti tutorial di atas sebenarnya anda sudah dapat memperbarui lokasi di background, tetapi pada perangkat tertentu seperti Oppo dan Vivo cara di atas tidak berfungsi. Sehingga perlu membuat broadcast receiver untuk merestart service.

Membuat Broadcast Receiver

  • Pada tutorial ini saya memberikan nama class “RestartBackgroundService”

Restart Service di Broadcast Receiver

Menambahkan Broadcast Receiver di Manifest

Screenshot

Kode lengkapnya silakan lihat di sini

Terima kasih

You May Also Like

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *