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:
Uyandırma kilidi oluşturmak için
PowerManager.newWakeLock()
simgesine dokunun. Bu işlem birPowerManager.WakeLock
nesnesi oluşturup yapılandırır ancak cihazı uyanık tutmaz.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.