Arka planda konum bilgisi isteğinde bulunma

Bu sayfada aşağıdaki konular ele alınmaktadır:

  • Arka planda konum erişimi nasıl istenir?
  • İsteğin, uygulamanızın hedef SDK sürümüne göre nasıl işleneceği.
  • Kullanıcıların yaklaşık konumla ilgili tercihleri, uygulamanızın arka planda konum bilgisini nasıl alacağını etkiler.
7.şekil Ayarlar sayfasında, arka planda konum erişimi sağlayan Her zaman izin ver adlı bir seçenek bulunur.

İzin iletişim kutusu içerikleri, hedef SDK sürümüne bağlıdır

Uygulamanızdaki bir özellik, Android 10 (API düzeyi 29) çalıştıran bir cihazda arka planda konum izni istediğinde sistem izinleri iletişim kutusunda Her zaman izin ver adlı bir seçenek gösterilir. Kullanıcı bu seçeneği belirlerse uygulamanızdaki özellik arka planda konum erişimi kazanır.

Ancak Android 11 (API düzeyi 30) ve sonraki sürümlerde sistem iletişim kutusunda Her zaman izin ver seçeneği yer almaz. Bunun yerine, kullanıcılar Şekil 7'de gösterildiği gibi bir ayarlar sayfasında arka planda konum özelliğini etkinleştirmelidir.

Arka planda konum izni isterken en iyi uygulamaları izleyerek kullanıcıların bu ayarlar sayfasına gitmesine yardımcı olabilirsiniz. İzin verme süreci, uygulamanızın hedef SDK sürümüne bağlıdır.

Uygulama, Android 11 veya sonraki sürümleri hedeflemelidir.

Uygulamanıza ACCESS_BACKGROUND_LOCATION izni verilmediyse ve shouldShowRequestPermissionRationale() true değerini döndürüyorsa kullanıcılara aşağıdaki bilgileri içeren eğitici bir kullanıcı arayüzü gösterin:

  • Uygulamanızın özelliğinin neden arka planda konum bilgisine erişmesi gerektiğine dair net bir açıklama.
  • Arka plan konumuna izin veren ayar seçeneğinin kullanıcı tarafından görülebilen etiketi (örneğin, Şekil 7'deki Her zaman izin ver). Bu etiketi almak için getBackgroundPermissionOptionLabel() numaralı telefonu arayabilirsiniz. Bu yöntemin döndürdüğü değer, kullanıcının cihazının dil tercihine göre yerelleştirilir.
  • Kullanıcılara izni reddetme seçeneği sunulmalıdır. Kullanıcılar arka planda konum erişimini reddederse uygulamanızı kullanmaya devam edebilmelidir.
Kullanıcılar, bir uygulamanın konum ayarlarını değiştirmek için sistem bildirimine dokunabilir.
Şekil 8. Kullanıcıya bir uygulamaya arka planda konum erişimi izni verdiğini hatırlatan bildirim.

Uygulama, Android 10 veya önceki bir sürümü hedefliyor

Uygulamanızdaki bir özellik arka planda konum erişimi istediğinde kullanıcılara bir sistem iletişim kutusu gösterilir. Bu iletişim kutusunda, ayarlar sayfasında uygulamanızın konum izni seçeneklerine gitme seçeneği bulunur.

Uygulamanız konum izni istemeyle ilgili en iyi uygulamalara uyduğu sürece bu davranışı desteklemek için herhangi bir değişiklik yapmanız gerekmez.

Kullanıcı, arka plandaki konum doğruluğunu etkileyebilir

Kullanıcı yaklaşık konum isterse konum izinleri iletişim kutusundaki kullanıcı tercihleri arka planda konum için de geçerli olur. Başka bir deyişle, kullanıcı uygulamanıza ACCESS_BACKGROUND_LOCATION izni verirse ancak ön planda yalnızca yaklaşık konum erişimi verirse uygulamanız arka planda da yalnızca yaklaşık konum erişimine sahip olur.

Ek kaynaklar

Android'deki konum izinleri hakkında daha fazla bilgi için aşağıdaki materyallere göz atın:

Codelab uygulamaları

Videolar

Örnekler