Rutin pil tasarrufu

Android 10, rutine göre adlı bir pil tasarrufu programı seçeneği sunar. Bu seçenek, OEM tarafından seçilen bir uygulamanın daha akıllı pil tasarrufu planlaması için sisteme sinyaller sağlar. Bu seçenek yapılandırma gerektirir ve uygulanması isteğe bağlıdır.

Cihaz yapılandırması

Sağlayıcı teknik özellikleri

Ayarlar kullanıcı arayüzüne, cihazın doğru bir şekilde yapılandırıldığını bildirmek için config_batterySaverScheduleProvider değerini geçersiz kılmak için config yer paylaşımı Uygulamanızın paket adı.

Örneğin, com.google.android.apps.turbo uygulama paketinin rutine göre ayarını kontrol ederseniz şu yapılandırma değerini ayarlarsınız:

<string name="config_batterySaverScheduleProvider" translatable="false">
com.google.android.apps.turbo</string>

Telefonda artık rutine göre seçeneği gösterilir. Doğrulamak için bir resim yükleyin ve Ayarlar > Pil > Pilli Tasarruf > Pil Tasarrufu Programı'na gidin. Rutine göre seçeneği görünecektir.

Varsayılan indirim eşiği

Yeni config_dynamicPowerSavingsDefaultDisableThreshold alanı, rutine dayalı planlayıcı tarafından etkinleştirildiyse sistemin pil tasarrufunu kapatacağı pil düzeyini belirtir. Sistem varsayılanı %80'dir, ancak değiştir.

Uygulama yapılandırması

İzinler

Uygulamanın, pil tasarrufunu uygulamadan etkinleştirmesi için gereken API'ler korumalıdır. android.permission.POWER_SAVER izniyle. Bu, imza/imtiyazlı bir izindir. Bu nedenle, privapp-whitelist cihazınızda pil tasarrufunu tetikleyebilmesini istediğiniz uygulamaya bu izni verin.

Bir uygulamaya privapp izni verme örneği:

<privapp-permissions package="com.google.android.apps.turbo">
   <permission name="android.permission.POWER_SAVER"/>
</privapp-permissions>

Sistemdeki uygulamanın sürümüne bu izni önceden vermezseniz görüntüsü yoksa uygulama izni alamaz veya API'leri düzgün şekilde çağıramaz. İlgili içeriği oluşturmak için kullanılan sistemimiz, olağan izin hatalarının dışında herhangi bir geri bildirim sağlamaz. Bu nedenle, API'leri çağırıp etkilerini gözlemleyebildiğinizi doğrulayın.

Kurulum

Rutine göre düzgün çalışması için uygulamayı cihazınıza önceden yüklemeniz gerekir. ve gerekli izne sahip sistem görüntüsüdür. Yalnızca tek bir uygulamaya POWER_SAVER verin rutinlere göre API'leri kontrol etmesine izin verebilir. Davranış izin birden fazla uygulama tarafından kullanılmaya çalıştığında ve API'ler ve belirtilmemiş.

Pil tasarrufunu tetikleme

API'ler

Kurulumun şimdiye kadar başarılı olduğu varsayıldığında, yapılandırmada belirtilen OEM uygulaması işlemini tetiklemek için PowerManager'da ilişkili yöntemi pil tasarrufu:

public boolean setDynamicPowerSaveHint(boolean powerSaveHint, int disableThreshold)

Rutine göre pil tasarrufu programı seçeneği etkinse ve uygulama bu yöntemi powerSaveHint için true değeriyle ve ardından pil tasarrufuyla çağırır açılır. UygulamanındisableThreshold sistem, pil yüzdesinin hangi değere ayarlanabileceğini bilir, pil tasarrufunu kapat.

Bu API, yüzdeye dayalı otomatik pil tasarrufu ile aynı şekilde kullanıcı tarafından geçersiz kılınmaya ve pil tasarrufunun ertelenmesine tabidir. Bkz. API belgeleri konulu videomuzu izleyin.

API'lerin başarıyla çağrıldığını doğrulamak için global sorgu ayarlarından şunu doğrulayın: yedekleme ayarının değeri değişti API çağrılarına göre.

Örneğin, kullanıcı rutin pil tasarrufu modunu seçtiyse ve uygulama setDynamicPowerSaveHint(true, 10) çağrılıyorsa genel ayarlarda şu değerleri kullanın:

automatic_power_save_mode: 1
dynamic_power_savings_disable_threshold: 10
dynamic_power_savings_enabled: 1

Ardından setDynamicPowerSaveHint(false, 25) yöntemini çağırırsanız değerler şu şekilde olmalıdır:

automatic_power_save_mode: 1
dynamic_power_savings_disable_threshold: 25
dynamic_power_savings_enabled: 0

Bu değerleri şu adb komutunu kullanarak kontrol edebilirsiniz:

adb shell settings get global <setting-name>

Doğrulama

Bir OEM'nin rutin pil tasarrufu modunu ne zaman tetikleyeceğine karar vermek için hangi davranışı kullanacağını bilmenin bir yolu olmadığından bu özelliğin otomatik olarak doğrulanması mümkün değildir. Bu nedenle OEM'ler, Google tarafından sağlanan tüm bilgi ve standartların ve davranışın beklentileri karşıladığından emin olun. Özellikle, cihazın şu görevleri yerine getirmeniz gerekiyor:

  • Kullanıcı, pil tasarrufu program kullanıcı arayüzündeki yüzdeye göre seçeneğini belirler ve %15'i seçer. Pil tasarrufu YALNIZCA %15 pil düzeyine ulaşıyor.
  • Kullanıcı, pil tasarrufu program kullanıcı arayüzünde rutine göre seçeneğini belirler. Zaman Uygulama, API'yi true ile çağırır (pil tasarrufu etkinleştirilir). Ayrıca, cihaz belirtilen eşik seviyesidir ve fişe takılı değilken.
  • Kullanıcı, pil tasarrufu program kullanıcı arayüzünde yok seçeneğini belirler. Pil tasarrufu HİÇBİR ZAMAN otomatik olarak gerçekleşmemelidir.
  • Uygulama pil tasarrufunu açar ve kullanıcı pili manuel olarak geçersiz kılarsa (Hızlı Ayarlar, Ayarlar vb. kullanılarak) kapattıktan sonra Kullanıcı cihazı manuel olarak tekrar açana veya girin.