Arka planda konum bilgisi ve pil ömrü hakkında

Arka planda konum kullanımı, pil ömrünü önemli ölçüde etkileyebilir. Android, arka planda konum toplama ile ilgili sınırlamaları destekler. Bu da geliştiricilerin uygulamalarını daha iyi pil verimliliği için optimize etmelerini sağlar. Bu optimizasyonlar, çalıştırdıkları Android sürümünden bağımsız olarak tüm cihazlar için faydalıdır.

Arka Planda Konum Sınırları ile:

  • Arka planda konum toplama işlemi sınırlanır, konum hesaplanır ve saatte yalnızca birkaç kez gönderilir.
  • Kablosuz ağ taramaları daha muhafazakardır ve cihaz aynı statik erişim noktasına bağlı kaldığında konum güncellemeleri hesaplanmaz.
  • Coğrafi sınırlama yanıt vermesi on saniyeden yaklaşık iki dakikaya çıkar. Bu değişiklik, pil performansını iyileştirir. Bazı cihazlarda bu artış 10 kata kadar çıkabilir.

Gerekli bilgi düzeyi

Bu dokümanda, aşağıdaki API'lerle ilgili bilgi sahibi olduğunuz varsayılmaktadır:

Pilin hızlı tükenmesini anlama

Konum bilgisi toplama ve pil tüketimi aşağıdaki şekilde ilişkilidir:

  • Doğruluk: Konum verilerinin hassasiyeti. Genel olarak, doğruluk ne kadar yüksek olursa pil tüketimi de o kadar yüksek olur.
  • Sıklık: Konumun ne sıklıkta hesaplandığı. Konum ne kadar sık hesaplanırsa o kadar fazla pil kullanılır.
  • Gecikme: Konum verilerinin ne kadar hızlı iletildiğini belirtir. Daha az gecikme için genellikle daha fazla pil gerekir.

Doğruluk

setPriority() yöntemini kullanarak konum doğruluğunu belirtebilir ve bağımsız değişken olarak aşağıdaki değerlerden birini iletebilirsiniz:

  • PRIORITY_HIGH_ACCURACY, mümkün olan en doğru konumu sağlar. Bu konum, gerektiği kadar giriş kullanılarak hesaplanır (GPS, kablosuz bağlantı ve hücresel bağlantıyı etkinleştirir ve çeşitli sensörleri kullanır) ve önemli ölçüde pil tüketimine neden olabilir.
  • PRIORITY_BALANCED_POWER_ACCURACY, güç için optimizasyon yaparken doğru konum bilgisi sağlar. GPS'i çok nadiren kullanır. Genellikle cihaz konumunu hesaplamak için kablosuz ve hücresel bilgilerin bir kombinasyonunu kullanır.
  • PRIORITY_LOW_POWER, büyük ölçüde baz istasyonlarına dayanır ve GPS ile kablosuz girişlerden kaçınır. Böylece, minimum pil tüketimi ile kaba (şehir düzeyinde) doğruluk sağlar.
  • PRIORITY_NO_POWER, konumu önceden hesaplanmış olan konumları diğer uygulamalardan pasif olarak alır.

Çoğu uygulamanın konum ihtiyaçlarını karşılamak için dengeli güç veya düşük güç seçeneklerini kullanın. Ön planda çalışan ve anlık konum güncellemeleri gerektiren uygulamalar (ör. harita uygulaması) için yüksek doğruluk rezervasyonu yapın.

Sıklık

Konum sıklığını iki yöntemle belirtebilirsiniz:

  • Uygulamanızın konumunu hesaplama aralığını belirtmek için setinterval() yöntemini kullanın.
  • Diğer uygulamaların konumlarını alma aralığını belirtmek için setFastestInterval() yöntemini kullanın.

setInterval() kullanılırken mümkün olan en büyük değeri iletin. Bu durum özellikle genellikle pili tüketen arka planda konum toplama için geçerlidir. Ön plan kullanım alanları için birkaç saniyelik aralıklar ayırın.

Android 8.0 (API seviyesi 26) sürümünde kullanıma sunulan arka plan konum sınırlamaları bu stratejileri zorunlu kılar ancak uygulamanız, Android 7.0 (API seviyesi 24) ve önceki sürümleri çalıştıran cihazlarda da bu stratejileri zorunlu kılmaya çalışmalıdır.

Yanıt gecikti

Gecikmeyi setMaxWaitTime() yöntemini kullanarak belirtebilirsiniz. Genellikle setInterval() yönteminde belirtilen aralıktan birkaç kat daha büyük bir değer gönderirsiniz. Bu ayar, konumun teslimini geciktirir ve birden fazla konum güncellemesi toplu olarak gönderilebilir. Bu iki değişiklik, pil tüketimini en aza indirmeye yardımcı olur.

Uygulamanızın hemen konum güncellemesine ihtiyacı yoksa setMaxWaitTime() yöntemine mümkün olan en büyük değeri iletmeniz gerekir. Böylece gecikmeyi daha fazla veri ve pil verimliliğiyle takas etmiş olursunuz.

Uygulamalar, coğrafi çitleri kullanırken güç tasarrufu sağlamak için setNotificationResponsiveness() yöntemine büyük bir değer iletmelidir. Beş dakika veya daha uzun bir değer önerilir.

Daha fazla bilgi

Daha fazla bilgi için aşağıdaki dokümanlara bakın:

  • Öneriler: Bu kılavuzda, uygulamanızın pil ömrü üzerindeki etkisini iyileştirmek için kullanabileceğiniz bazı önerilen işlemler açıklanmaktadır.
  • Kullanım alanları: Bu kılavuzda, konum hizmetlerini kullanabileceğiniz ve bu durumlarda pil ömrünü nasıl optimize edebileceğinizle ilgili çeşitli yaygın kullanım alanları sunulmaktadır.