Jika Anda perlu menjaga perangkat tetap berjalan untuk menyelesaikan beberapa pekerjaan sebelum
perangkat beralih ke status penangguhan, Anda dapat menggunakan fitur layanan
sistem PowerManager
yang disebut penguncian layar saat aktif. Fitur penguncian layar saat aktif memungkinkan aplikasi mengontrol
status daya perangkat.
Menetapkan penguncian layar saat aktif
Untuk menggunakan fitur penguncian layar saat aktif, langkah pertama adalah menambahkan
izin WAKE_LOCK
ke
file manifes aplikasi Anda:
<uses-permission android:name="android.permission.WAKE_LOCK" />
Jika aplikasi Anda menyertakan penerima siaran yang menggunakan layanan untuk melakukan beberapa pekerjaan, berikut cara menyetel fitur penguncian layar saat aktif secara langsung:
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();
Melepaskan penguncian layar saat aktif
Untuk melepaskan penguncian layar saat aktif, panggil wakelock.release()
. Tindakan ini akan melepaskan
klaim Anda terhadap CPU. Penting untuk melepaskan fitur penguncian layar saat aktif segera setelah aplikasi selesai
menggunakannya agar baterai tidak habis.