このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docs コミュニティーについてもっと知り、仲間になるにはこちらから。

View in English Always switch to English

WakeLock.request()

Baseline 2025
Newly available

Since March 2025, this feature works across the latest devices and browser versions. This feature might not work in older devices or browsers.

安全なコンテキスト用: この機能は一部またはすべての対応しているブラウザーにおいて、安全なコンテキスト (HTTPS) でのみ利用できます。

request()WakeLock インターフェイスのメソッドで、画面を暗くしたりロックしたりすることを制御することができる WakeLockSentinel で解決するプロミス (Promise) を返します。

構文

js
var wakeLock = navigator.wakeLock.request(type);

引数

type

オプションは次の通りです。

  • 'screen': 画面の起動ロックを要求します。端末の画面が暗くなったりロックされたりすることを防ぎます。

返値

WakeLockSentinel オブジェクトで解決する Promise を返します。

例外

NotAllowedError

起動ロックが利用できないときに発生します。原因は以下のようなものです。

  • 文書が screen-wake-lock ポリシーにより、画面起動ロックを使用することができない。
  • 文書が完全にアクティブではない。
  • 文書が非表示になっている。
  • ユーザーエージェントがプラットフォームの起動ロックを取得できない。

以下の非同期関数は、 WakeLockSentinel オブジェクトを要求します。 request() メソッドはブラウザーが何らかの理由でリクエストを拒否した場合を想定して、 try...catch 文で囲まれています。

js
const requestWakeLock = async () => {
  try {
    const wakeLock = await navigator.wakeLock.request("screen");
  } catch (err) {
    // 起動ロックの要求に失敗 - 通常は、バッテリー低下などシステムに起因する。

    console.log(`${err.name}, ${err.message}`);
  }
};

requestWakeLock();

仕様書

Specification
Screen Wake Lock API
# the-request-method

ブラウザーの互換性

関連情報