Screen Wake Lock API を試す

1. このページの目的

Screen Wake Lock API を使って、スマートフォンのディスプレイをスリープさせないようにする。

2. 操作

経過時間: 0 [秒]

Screen Wake Lock status:

説明

3. コード

Stay awake with the Screen Wake Lock API のコードを引用する(コメントを追加した)。本ページもこのコードを利用している。

JavaScript

// WakeLockSentinel object を格納する変数
let wakeLock = null;

// screen wake lock をリクエストするための関数
const requestWakeLock = async () => {
  // ブラウザは Screen Wake Lock を拒否することがあるので、
  // try...catch を使い拒否された場合の処理も記述する
  try {
    wakeLock = await navigator.wakeLock.request('screen');

    // Screen Wake Lock がリリースされたときの処理
    wakeLock.addEventListener('release', () => {
      console.log('Screen Wake Lock was released');
    });
    console.log('Screen Wake Lock is active');

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

// screen wake lock をリクエストする
await requestWakeLock();

// X分後に Screen Wake Lock をリリースする(止める)
window.setTimeout(() => {
  wakeLock.release();
  wakeLock = null;
}, 1000*60*seconds);

詳しくは本ページのソースコードを見てください。

4. メモ

document.addEventListener('visibilitychange', () => {})

5. 参考