Uyanık kalma kilidi ayarla

Cihazı geçici olarak uyanık tutmak için uyandırma kilidi ayarlayabilirsiniz.

Bağımlılıklar

Uygulamanız, uyanma kilidi ayarlamak için WAKE_LOCK iznine sahip olmalıdır. İzni uygulamanızın manifest dosyasına ekleyin:

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

Uyandırma kilidi oluşturma ve edinme

Uyandırma kilidi almak için aşağıdakileri yapın:

  1. Uyandırma kilidi oluşturmak için PowerManager.newWakeLock() simgesine dokunun. Bu işlem bir PowerManager.WakeLock nesnesi oluşturup yapılandırır ancak cihazı uyanık tutmaz.

  2. Cihazı uyanık tutmak istediğinizde uyanık kalma kilidi nesnesinin acquire() yöntemini çağırın.

Örneğin, uygulamanızda bir iş yapmak için hizmet kullanan bir yayın alıcı varsa uyanma kilidi ayarlamak ve almak için şu kodu kullanabilirsiniz:

Kotlin

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

Java

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

Bu kodla ilgili önemli noktalar

Kod, uyanma kilidi nesnesini oluştururken uyanma kilidi etiketinin bir parçası olarak sınıfın adını kullanır. Uyandırma kilidi etiketinin bir parçası olarak paketinizi, sınıfınızı veya yöntem adınızı eklemenizi öneririz. Bu sayede, bir hata meydana gelirse kaynak kodunuzda uyanma kilidini daha kolay bulabilirsiniz. Daha fazla bilgi için Uyanma kilidini doğru şekilde adlandırma başlıklı makaleyi inceleyin.

Ayrıca bkz.