WakeLock
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Secure context: This feature is available only in secure contexts (HTTPS), in some or all supporting browsers.
The WakeLock
interface of the Screen Wake Lock API can be used to request a lock that prevents device screens from dimming or locking when an application needs to keep running.
This interface, and hence the system wake lock, is exposed through the Navigator.wakeLock
property.
Instance methods
request()
-
Returns a
Promise
that fulfills with aWakeLockSentinel
object if the screen wake lock is granted.
Examples
The following code awaits
the request for a WakeLockSentinel
object, and continues if the request is granted.
The WakeLock.request()
method is wrapped in a try...catch
statement to catch cases when the promise might be rejected rejected, such as due to low device power.
try {
const wakeLock = await navigator.wakeLock.request("screen");
} catch (err) {
// the wake lock request fails - usually system related, such being low on battery
console.log(`${err.name}, ${err.message}`);
}
Note that the screen wake lock may be revoked by the device after it has been granted.
The returned WakeLockSentinel
can be used to check the status of the lock, and/or to manually cancel a held screen wake lock.
Specifications
Specification |
---|
Screen Wake Lock API # the-wakelock-interface |
Browser compatibility
BCD tables only load in the browser