Uyanık kalma kilitlerini ayarlama ve yönetme

Bir cihazın askıya alma durumuna geçmeden önce bazı işleri tamamlamak için cihazı çalıştırmanız gerekiyorsa uyandırma kilitleri adlı PowerManager sistem hizmeti özelliğini kullanabilirsiniz. Uyandırma kilitleri, uygulamanızın cihazın güç durumunu kontrol etmesine olanak tanır.

Uyandırma kilidi ayarlama

Uyandırma kilidi kullanmak için ilk adım, uygulamanızın manifest dosyasına WAKE_LOCK iznini eklemektir:

<uses-permission android:name="android.permission.WAKE_LOCK" />

Uygulamanızda, bazı işlemleri yapmak için hizmet kullanan bir yayın alıcısı varsa doğrudan uyanma kilidi ayarlamak için aşağıdaki adımları uygulayın:

Kotlin

val wakeLock: PowerManager.WakeLock =
        (getSystemService(Context.POWER_SERVICE) as PowerManager).run {
            newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "MyApp::MyWakelockTag").apply {
                acquire()
            }
        }

Java

PowerManager powerManager = (PowerManager) getSystemService(POWER_SERVICE);
WakeLock wakeLock = powerManager.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK,
        "MyApp::MyWakelockTag");
wakeLock.acquire();

Uyanık kalma kilidini bırakma

Uyandırma kilidini kaldırmak için wakelock.release() tuşuna basın. Bu işlem, hak talebinizi CPU'ya iletir. Pilin tükenmesini önlemek için uygulamanız bu özelliği kullanmayı sona erdirir erdirmez uyanma kilidini kaldırmak önemlidir.

Ayrıca bkz.