Commit e61ed899 authored by Skye Yu's avatar Skye Yu Committed by Skye Yu

use wake lock


(cherry picked from commit 8a9552fa)
parent 1476ca6c
...@@ -704,7 +704,8 @@ Jensen.prototype.getFile = async function (filename, length, ondata, onprogress) ...@@ -704,7 +704,8 @@ Jensen.prototype.getFile = async function (filename, length, ondata, onprogress)
let fname = []; let fname = [];
for (let i = 0; i < filename.length; i++) fname.push(filename.charCodeAt(i)); for (let i = 0; i < filename.length; i++) fname.push(filename.charCodeAt(i));
function visibilitychange() { let wakeLock = null;
async function visibilitychange() {
let audio = document.getElementById('test_audio'); let audio = document.getElementById('test_audio');
if (!audio) { if (!audio) {
audio = document.createElement('audio'); audio = document.createElement('audio');
...@@ -719,15 +720,25 @@ Jensen.prototype.getFile = async function (filename, length, ondata, onprogress) ...@@ -719,15 +720,25 @@ Jensen.prototype.getFile = async function (filename, length, ondata, onprogress)
if (document.visibilityState === 'hidden') { if (document.visibilityState === 'hidden') {
console.log('Page is hidden'); console.log('Page is hidden');
audio.play(); audio.play();
if ('wakeLock' in navigator) {
try {
wakeLock = await navigator.wakeLock.request('screen');
console.log('Wake lock activated');
} catch (err) {
console.error('Failed to acquire wake lock:', err);
}
}
} else { } else {
audio.pause(); audio.pause();
console.log('Page is visible'); console.log('Page is visible');
wakeLock && wakeLock.release();
} }
} }
function removeAudio() { function removeAudio() {
const audio = document.getElementById('test_audio'); const audio = document.getElementById('test_audio');
audio && audio.pause() && audio.remove(); audio && audio.pause() && audio.remove();
wakeLock && wakeLock.release();
} }
visibilitychange(); visibilitychange();
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment