Draft
This page is not complete.
Secure context
This feature is available only in secure contexts (HTTPS), in some or all supporting browsers.
The request()
method of the WakeLock
interface returns a Promise
that resolves with a WakeLockSentinel
object, which allows control over screen dimming and locking.
Syntax
var wakeLock = navigator.wakeLock.request(type);
Parameters
- type
- Options are as follows:
'screen'
: Requests a screen wake lock. Prevents devices from dimming or locking the screen.
Return value
A Promise
that resolves with a WakeLockSentinel
object.
Exceptions
NotAllowedError
- Thrown when wake lock is not available, which can happen because:
- Document is not allowed to use screen wake lock due to screen-wake-lock policy.
- Document is not fully active.
- Document is hidden.
- User Agent could not acquire platform's wake lock.
Examples
The following asynchronous function requests a WakeLockSentinel
object. The request()
method is wrapped in a try...catch
statement to account for if the browser refuses the request for any reason.
const requestWakeLock = async () => { try { const wakeLock = await navigator.wakeLock.request('screen'); } catch (err) { // the wake lock request fails - usually system related, such low as battery console.log(`${err.name}, ${err.message}`); } } requestWakeLock();
Specifications
Specification | Status | Comment |
---|---|---|
Screen Wake Lock API The definition of 'request()' in that specification. |
Unknown | Initial definition. |
Browser compatibility
The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
request | Chrome Full support 84 | Edge Full support 84 | Firefox No support No | IE No support No | Opera Full support Yes | Safari No support No | WebView Android Full support 84 | Chrome Android Full support 84 | Firefox Android No support No | Opera Android Full support Yes | Safari iOS No support No | Samsung Internet Android Full support Yes |
Legend
- Full support
- Full support
- No support
- No support