Seperti yang dijelaskan di halaman meminta izin akses lokasi dan praktik terbaik privasi, aplikasi sebaiknya hanya meminta jenis izin akses lokasi yang benar-benar diperlukan oleh fitur yang digunakan pengguna, dan mengungkapkan hal ini dengan benar kepada pengguna. Sebagian besar kasus penggunaan hanya memerlukan lokasi saat pengguna berinteraksi dengan aplikasi. Jika aplikasi Anda memerlukan lokasi latar belakang, seperti saat menerapkan pembatasan wilayah, pastikan bahwa akses tersebut benar-benar diperlukan oleh fungsi inti aplikasi, menawarkan manfaat yang jelas bagi pengguna, dan dilakukan dengan cara yang jelas.
Catatan: Google Play Store telah memperbarui kebijakannya terkait lokasi perangkat, pembatasan akses lokasi latar belakang ke aplikasi yang memerlukannya untuk fungsi utamanya, dan memenuhi persyaratan kebijakan terkait. Menggunakan praktik terbaik ini tidak menjamin Google Play menyetujui penggunaan lokasi aplikasi Anda di latar belakang.
Pelajari perubahan kebijakan lebih lanjut terkait lokasi perangkat.
Checklist akses lokasi latar belakang
Gunakan checklist berikut untuk mengidentifikasi kemungkinan logika akses lokasi di latar belakang:
Dalam manifes aplikasi, lihat izin
ACCESS_COARSE_LOCATION
dan izinACCESS_FINE_LOCATION
. Pastikan aplikasi Anda membutuhkan izin akses lokasi ini.- Jika aplikasi Anda menargetkan Android 10 (API level 29) atau yang lebih baru, lihat juga izin
ACCESS_BACKGROUND_LOCATION
. Pastikan aplikasi Anda memiliki fitur yang membutuhkannya.
- Jika aplikasi Anda menargetkan Android 10 (API level 29) atau yang lebih baru, lihat juga izin
Cari penggunaan API akses lokasi dalam kode Anda, seperti Fused Location Provider API, Geofencing API, atau LocationManager API, seperti konsep berikut:
- Layanan latar belakang
- Objek
JobIntentService
- Tugas
WorkManager
atauJobScheduler
- Operasi
AlarmManager
- Intent tertunda yang dipanggil dari widget aplikasi
Jika aplikasi Anda menggunakan SDK atau library yang mengakses lokasi, akses ini akan dikaitkan dengan aplikasi Anda. Untuk menentukan apakah SDK atau library memerlukan akses lokasi, baca dokumentasi library.
Mengevaluasi akses lokasi latar belakang
Jika ternyata aplikasi Anda mengakses lokasi di latar belakang, pertimbangkan untuk melakukan tindakan berikut:
- Evaluasi apakah akses lokasi latar belakang benar-benar diperlukan oleh fungsi inti aplikasi.
Jika tidak memerlukan akses lokasi di latar belakang, hapus akses.
Jika aplikasi Anda menargetkan Android 10 (API level 29) atau yang lebih baru, hapus izin
ACCESS_BACKGROUND_LOCATION
dari manifes aplikasi Anda. Jika izin ini dihapus, akses lokasi sepanjang waktu tidak dapat digunakan untuk aplikasi di perangkat yang menjalankan Android 10.Pastikan pengguna mengetahui bahwa aplikasi Anda mengakses lokasi di latar belakang. Hal ini sangat penting untuk kasus yang tidak jelas bagi pengguna.
Jika memungkinkan, faktorkan ulang logika akses lokasi sehingga Anda hanya meminta lokasi saat aktivitas aplikasi dapat dilihat oleh pengguna.
Pembaruan terbatas pada lokasi latar belakang
Jika akses lokasi latar belakang sangat penting untuk aplikasi Anda, perlu diingat bahwa Android mempertahankan masa pakai baterai perangkat dengan menetapkan batas lokasi latar belakang di perangkat yang menjalankan Android 8.0 (API level 26) dan yang lebih baru. Pada versi Android ini, jika aplikasi Anda berjalan di latar belakang, aplikasi hanya dapat menerima pembaruan lokasi beberapa kali setiap jam. Pelajari batas lokasi latar belakang lebih lanjut.
Referensi lainnya
Untuk mempelajari penggunaan lokasi latar belakang lebih lanjut, lihat materi berikut:
Video
Cara menemukan kemungkinan penggunaan lokasi latar belakang
Contoh
Contoh untuk menunjukkan praktik terbaik dalam mengakses lokasi saat aplikasi berada di latar belakang.