Anda dapat menyetel wake lock untuk membuat perangkat tetap aktif untuk sementara.
Dependensi
Aplikasi Anda harus memiliki izin WAKE_LOCK
untuk menyetel kunci layar aktif.
Tambahkan izin ke manifes aplikasi Anda:
<uses-permission android:name="android.permission.WAKE_LOCK" />
Membuat dan mendapatkan kunci layar aktif
Untuk mendapatkan kunci layar aktif, lakukan hal berikut:
Panggil
PowerManager.newWakeLock()
untuk membuat kunci layar saat aktif. Tindakan ini akan membuat dan mengonfigurasi objekPowerManager.WakeLock
, tetapi tidak sebenarnya membuat perangkat tetap aktif.Jika Anda ingin perangkat tetap aktif, panggil metode
acquire()
objek wake lock.
Misalnya, jika aplikasi Anda menyertakan penerima siaran yang menggunakan layanan untuk melakukan beberapa pekerjaan, Anda dapat menggunakan kode ini untuk menetapkan dan mendapatkan fitur penguncian layar saat aktif:
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();
Poin penting tentang kode ini
Saat membuat objek wake lock, kode akan menggunakan nama class sebagai bagian dari tag wake lock. Sebaiknya sertakan nama paket, class, atau metode sebagai bagian dari tag wake lock. Dengan demikian, jika terjadi error, akan lebih mudah untuk menemukan kunci layar aktif dalam kode sumber Anda. Untuk informasi selengkapnya, lihat Memberi nama penguncian layar saat aktif dengan benar.