Pil Geçmişi aracı, bir cihazın pil tüketimiyle ilgili bilgi sağlar oluşacaktır. Sistem genelinde bir düzeyde, bu araç güçle ilgili olayları HTML temsilinde günlüğe kaydetme. Araç, uygulamaya özgü düzeyde pili fazla tüketen uygulamaları tanımlamanıza yardımcı olabilecek çeşitli veriler sağlar gösterir.
Bu dokümanda, Pil Geçmişi'ni kullanarak nasıl şarj edebileceğinizi öğrenmek için düzenli olarak kontrol edebilirsiniz. Belgede ilk olarak Pil Geçmişi'nin bildirdiği sistem genelindeki verileri okuyabilir. Sonra da o sırada Pil Geçmişi'ni kullanarak kendi sorununuzu teşhis edip sorun ve uygulamanızın pil tüketimiyle ilgili davranışı. Son olarak da riskleri ve riskleri ele almak için bu senaryoları inceleyebilirsiniz.
Sistem genelinde görünümü kullan
Pil Geçmişi aracı, çeşitli uygulamaları sistem genelinde görselleştirme olanağı sunar. ve sistem davranışları ile pil tüketimi arasındaki korelasyon oluşacaktır. Şekil 1'de gösterilen bu görünüm, değişiklikleri teşhis edip belirlemenize ilgili başka sorunlar da oluşturabilirsiniz.
![Pil Geçmişi'nin, gücü etkileyen sistem genelindeki etkinlikleri göstermesi
tüketim.](https://developer.android.com/static/topic/performance/images/generic-timeline.png?authuser=9&hl=tr)
Bu şekilde özellikle siyah, yatay, aşağı doğru trend ve y ekseninde ölçülen Pil Seviyesini temsil eden bir çizgi görürsünüz. Örneğin, Pil Seviyesi satırının başında, yani yaklaşık 06:50'de görselleştirmede pil seviyesi nispeten keskin bir düşüş gösterilir.
Şekil 2'de ekranın bu bölümünün yakından görünümü gösterilmektedir.
![Yaklaşık 06:50 ile 07:20 arasında Pil Geçmişi zaman çizelgesinin yakından görünümü.](https://developer.android.com/static/topic/performance/images/s-generic-closeup.png?authuser=9&hl=tr)
Pil Seviyesi çizgisinin en başında, pil hızlı bir şekilde azaldıkça üç şey gösteriliyor: CPU çalışıyor, bir uygulama ve ekran açık demektir. Bu şekilde, Battery Historian size yardımcı olur. pil tüketimi yüksekken hangi etkinliklerin olduğunu anlayabilirsiniz. Şunları yapabilirsiniz: Ardından bu davranışları uygulamanızda hedefleyin ve optimizasyonlar yapabilirsiniz.
Sistem genelinde görselleştirme, başka ipuçları da sağlayabilir. Örneğin, mobil radyonun sıklıkla kapanıp açıldığını gösteriyor. bu davranışı sürekli olarak optimize etmek için akıllı planlama API'leri JobScheduler veya Firebase Job Dispatcher.
Sonraki bölümde, belirli bir sorunla ilişkili davranış ve olayların .
Uygulamaya özel verileri görüntüleme
Sistem genelinde görünümün sağladığı makro düzeyindeki verilere ek olarak, Pil Tarihçi, her bir bölge için farklı veri tabloları ve bazı görselleştirmeler de sunar cihazınızda çalışan uygulamalarıdır. Tablo biçimindeki veriler şunları içerir:
- Uygulamanın cihazdaki tahmini güç kullanımı.
- Ağ bilgileri.
- Uyanık kalma kilitleri.
- Hizmetler'e dokunun.
- İşlem bilgileri.
Tablolar, uygulamanızla ilgili verilerin iki boyutunu sağlar. Öncelikle, web sitenizin uygulamanızın güç kullanımının diğer uygulamalara göre sıralamasıdır. Bunu yapmak için Tablolar bölümündeki Cihaz Güç Tahminleri tablosuna bakın. Bu örnekte, kurgusal bir içeriği incelemek için uygulamasıdır.
![Hangi uygulamaların en fazla güç tükettiğini araştırma.](https://developer.android.com/static/topic/performance/images/app-rankings.png?authuser=9&hl=tr)
Şekil 3'teki tablo, Pug Power'ın dünya genelinde en büyük dokuzuncu tüketici konumunda Bu cihazın pil gücü. İşletim sistemi. Bu veriler, bu uygulamanın daha ayrıntılı bir şekilde incelenmesi gerektiğini gösteriyor.
Belirli bir uygulamanın verilerini aramak için paket adını Uygulama Seçimi'nin altındaki iki açılır menüyü, görselleştirmeye çok yardımcı olur.
![Verileri görüntülenecek belirli bir uygulamayı girme.](https://developer.android.com/static/topic/performance/images/dropdown.png?authuser=9&hl=tr)
Belirli bir uygulamayı seçtiğinizde aşağıdaki veri görselleştirme kategorileri, sistem genelindeki veriler yerine uygulamaya özel verileri görüntüleyecek şekilde değiştirin:
- SyncManager.
- Ön plan süreci.
- Kullanıcı Alanı Uyandırma Kilidi.
- En popüler uygulama.
- JobScheduler.
- Etkinlik Yöneticisi Proc.
SyncManager ve JobScheduler görselleştirmeleri zamanla Uygulamanızın senkronizasyon yapması ve işleri gerekenden daha sık yürütmesi. İçinde Böylece, uygulamanızın davranışını optimize etme fırsatını hızla ortaya çıkarabilirler kullanmanızı öneririz.
Ayrıca uygulamaya özel görselleştirme verileri, Kullanıcı Alanı Uyandırma Kilidi. Bu bilgileri hata raporuna eklemek için hata raporuna terminal pencerenizde şu komutu girin:
$ adb shell dumpsys batterystats --enable full-wake-history
Şekil 5 ve 6'da Pug Power verileri gösterilmiştir: Şekil 5'te özgüdür ve Şekil 6'da bunlara karşılık gelen tablo verileri gösterilmektedir.
![Kurgusal Pug Power için verilerin görselleştirilmesi.](https://developer.android.com/static/topic/performance/images/pug-visualization.png?authuser=9&hl=tr)
![Kurgusal Pug Power uygulaması için tablo verileri.](https://developer.android.com/static/topic/performance/images/pugspecificdata.png?authuser=9&hl=tr)
Görselleştirmeye baktığımızda hemen göze çarpan bir şey ortaya çıkmıyor. İlgili içeriği oluşturmak için kullanılan JobScheduler satırı, uygulamada planlanmış iş olmadığını gösterir. SyncManager satırı uygulamanın hiçbir senkronizasyon yapmadığını gösterir.
Ancak tablo biçimindeki verilerin Uyanıklık Kilitleri segmenti incelendiğinde, Pug Power, toplamı bir saatten uzun olan uyanık kalma kilitleri ediniyor. Alışılmadık ve maliyetli bu davranışı, uygulamanın güç tüketiminin yüksek düzeyini açıklayabilir. Bu parça bilgileri toplaması, geliştiricinin optimizasyonun muhtemel olduğu bir alanı hedeflemesine yardımcı olur. size yardım etmeye hazırdır. Bu durumda uygulama neden bu kadar çok uyanık kalma kilidi süresi ediniyor, Geliştirici bu davranışı nasıl düzeltebilir?
Pil Geçmişi'nin yardımcı olabileceği diğer durumlar
Pil Geçmişi'nin teşhis etmenize yardımcı olabileceği başka fırsatlara göz atacağız. Örneğin, Pil Geçmişi'ni size uygulamanızın şu özellikleri taşıdığını bildirir:
- Uyandırma alarmlarının çok sık tetiklenmesi (her 10 saniyede veya daha az).
- Sürekli GPS kilidi tutuluyor.
- İşleri en fazla 30 saniyede bir planlayın.
- Planlama her 30 saniyede bir veya daha kısa bir sürede senkronize edilir.
- Hücresel radyoyu beklediğinizden daha sık kullanıyorsunuz.