ç»é¢èµ·åãã㯠API ã¯ãã¢ããªã±ã¼ã·ã§ã³ã®å®è¡ãç¶ç¶ããå¿ è¦ãããå ´åã«ã端æ«ãç»é¢ãæãããããããã¯ãããããã®ãé²ãæ¹æ³ãæä¾ãã¾ãã
æ¦å¿µã¨ç¨éã»ã¨ãã©ã®ç«¯æ«ã¯ããã¼ãã¦ã§ã¢ã®å¯¿å½ãå»¶ã°ãããã«ãä¸å®æéãçµéããã¨ç»é¢ããªãã«ãããã¨ãæ¢å®ã«ãªã£ã¦ãã¾ããæè¿ã®ç«¯æ«ã¯ãããããªã¼ã®æ¶è²»é»åãç¯ç´ããããã«ãããè¡ã£ã¦ãã¾ããããã¯æçãªæ©è½ã§ãããã¢ããªã±ã¼ã·ã§ã³ã«ãã£ã¦ã¯ã使ããããããããã«ç»é¢ãèµ·åããã¾ã¾ã®ç¶æ ã«ããå¿ è¦ããããã®ãããã¾ãã
ç»é¢èµ·åãã㯠API ã¯ãç»é¢ã®æ¶ç¯ãæè»¢ãããã¯ã鲿¢ãã¾ãã以åã¯é»åãæµªè²»ããå¯è½æ§ãããæ¹æ³ã§ããå®ç¾ã§ããªããã®ã§ããããã·ã³ãã«ãªãã©ãããã©ã¼ã ãã¼ã¹ã®è§£æ±ºçãåããã¨ãã§ããããã«ãªãã¾ãããç»é¢èµ·åããã¯ãåå¾ã§ããã®ã¯ã表示ããã¦ããï¼ã¢ã¯ãã£ããªï¼ææ¸ã®ã¿ã§ãã
ç»é¢ã表示ããã¾ã¾ã«ããç¨éã¯ããããããã¾ããé»åæ¸ç±ã®é²è¦§ãå°å³ããã²ã¼ã·ã§ã³ãã¬ã·ãã®ç¢ºèªãè´è¡ã¸ã®ãã¬ã¼ã³ãã¼ã·ã§ã³ã QR/ãã¼ã³ã¼ãã®ã¹ãã£ã³ãï¼ç»é¢ã表示ãç¶ããããã®ãã使ãï¼è§¦è¦å ¥åã§ã¯ãªãé³å£°ãã¸ã§ã¹ãã£ã¼ã³ã³ããã¼ã«ã使ç¨ããã¢ããªã±ã¼ã·ã§ã³ãªã©ã§ãã
WakeLockSentinel
ãªãã¸ã§ã¯ããåå¾ããã«ã¯ã navigator.wakeLock.request()
ãå¼ã³åºãã¾ããããã¯ãã©ãããã©ã¼ã ã許å¯ãã¦ããã°è§£æ±ºãã Promise
ãã¼ã¹ã®ã¡ã½ããã§ãããªã¯ã¨ã¹ããæå¦ãããçç±ã¯ããã¤ãããã¾ããä¾ãã°ãã·ã¹ãã è¨å®ï¼çé»åã¢ã¼ããããããªã¼æ®éãå°ãªãå ´åãªã©ï¼ãææ¸ãã¢ã¯ãã£ãã§ãªããã¾ãã¯è¡¨ç¤ºããã¦ããªããªã©ã§ãã
åºç¤ã¨ãªãã·ã¹ãã ã®èµ·åããã¯ã«ã¯ãè¦å¼µã (sentinel) ãå²ãå½ã¦ããã¾ããããã¯ãããããªã¼ã®æ®éãå°ãªããªã£ãããææ¸ãã¢ã¯ãã£ãã§ãªããªã£ãããã¾ãã¯è¡¨ç¤ºãããªããªã£ããããå ´åãªã©ã«ãã·ã¹ãã ã«ãã£ã¦è§£æ¾ããã¾ããã¾ãã WakeLockSentinel.release()
ã¡ã½ããã使ç¨ãã¦æåã§è§£é¤ãããã¨ãã§ãã¾ããè¦å¼µããªãã¸ã§ã¯ãã¸ã®åç
§ãä¿åãã¦ããã¨ãå¾ã§è§£æ¾ãå¶å¾¡ããããå¿
è¦ã«å¿ãã¦ããã¯ãååå¾ãããã¨ãã§ãã¾ãã
ç»é¢èµ·åãã㯠API ã使ç¨ãã¦ç»é¢ã表示ããã¾ã¾ã«ããã®ã¯ãã¦ã¼ã¶ããªãã£ãåä¸ãããç®çã§è¡ãã¹ãã§ããã¤ã³ã¿ã¼ãã§ã¤ã¹ä¸ã§ç»é¢ããã¯ãæå¹ã«ãªã£ã¦ãããã©ããã表示ããããã¾ãã¯ã¦ã¼ã¶ã¼ãæããªããããç¡å¹ã«ããæ¹æ³ã表示ãããããã®ã¯ããèãã§ãã
ç»é¢èµ·åãã㯠API ã®ã¤ã³ã¿ã¼ãã§ã¤ã¹WakeLock
WakeLock
ã¤ã³ã¿ã¼ãã§ã¤ã¹ã¯ãã¢ããªã±ã¼ã·ã§ã³ãå®è¡ãç¶ããå¿
è¦ãããã¨ãã«ç»é¢ãæããªãã®ãé²ãã ããããã¯ããããããã®ã鲿¢ãã¾ãã
WakeLockSentinel
åºç¤ã¨ãªããã©ãããã©ã¼ã ã®èµ·åããã¯ã¸ã®ãã³ãã«ãæä¾ããåç
§ããã¦ããå ´åã¯ãæåã§è§£æ¾ããã³ååå¾ãããã¨ãã§ãã¾ãããã®ãªãã¸ã§ã¯ãã®ã¤ã³ã¹ã¿ã³ã¹ãåå¾ããã«ã¯ã WakeLock.request
ãå¼ã³åºãã¦ãã ããã
Navigator.wakelock
WakeLock
ãªãã¸ã§ã¯ãã®ã¤ã³ã¹ã¿ã³ã¹ãè¿ãã¾ããããããä»ã®ãã¹ã¦ã®æ©è½ã«ã¢ã¯ã»ã¹ã§ãã¾ãã
ãã®ã³ã¼ãã¯ãèµ·åããã¯ã«å¯¾å¿ãã¦ãããã©ããããã§ãã¯ããããã«å¿ã㦠UI ãæ´æ°ãã¾ãã
if ("wakeLock" in navigator) {
isSupported = true;
statusElem.textContent = "èµ·åãã㯠API ã«å¯¾å¿ãã¦ãã¾ãã";
} else {
wakeButton.disabled = true;
statusElem.textContent = "ãã®ãã©ã¦ã¶ã¼ã¯èµ·åããã¯ã«å¯¾å¿ãã¦ãã¾ããã";
}
èµ·åããã¯ã®è¦æ±
次ã®ä¾ã¯ã WakeLockSentinel
ãªãã¸ã§ã¯ããè¦æ±ããæ¹æ³ã示ãã¦ãã¾ããWakeLock.request
ã¡ã½ãã㯠Promise
ãã¼ã¹ãªã®ã§ãéåæé¢æ°ã使ãã UI ãæ´æ°ãã¦èµ·åããã¯ãæå¹ã§ãããã¨ãåæ ããããã¨ãã§ãã¾ãã
// èµ·åããã¯ã®åç
§ã使
let wakeLock = null;
// éåæé¢æ°ã使ãã¦èµ·åããã¯ããªã¯ã¨ã¹ã
try {
wakeLock = await navigator.wakeLock.request("screen");
statusElem.textContent = "èµ·åããã¯ãæå¹ã§ãã";
} catch (err) {
// èµ·åããã¯ã®ãªã¯ã¨ã¹ãã«å¤±æããµã¤ãã¯ããããªã¼ãªã©ã®ã·ã¹ãã é¢é£
statusElem.textContent = `${err.name}, ${err.message}`;
}
èµ·åããã¯ã®è§£æ¾
以ä¸ã®ä¾ã¯ã以ååå¾ããèµ·åããã¯ãéæ¾ããæ¹æ³ã示ãã¦ãã¾ãã
wakeLock.release().then(() => {
wakeLock = null;
});
èµ·åããã¯è§£æ¾ã®è¡¨ç¤º
ãã®ä¾ã§ã¯ãä½ããã®æ¹æ³ã§èµ·åããã¯ãè§£æ¾ãããå ´åï¼ã¢ã¯ãã£ãã¦ã£ã³ãã¦ãã¿ãããç§»åããå ´åãªã©ï¼ã« UI ãæ´æ°ãã¾ãã
wakeLock.addEventListener("release", () => {
// èµ·åããã¯ãè§£æ¾
statusElem.textContent = "èµ·åããã¯ãè§£æ¾ããã¾ãã";
});
èµ·åããã¯ã®ååå¾
以ä¸ã®ã³ã¼ãã¯ãææ¸ã®å¯è¦æ§ãå¤åããèµ·åããã¯ãè§£é¤ãããå ´åã«ãèµ·åããã¯ãååå¾ãããã®ã§ãã
document.addEventListener("visibilitychange", async () => {
if (wakeLock !== null && document.visibilityState === "visible") {
wakeLock = await navigator.wakeLock.request("screen");
}
});
ãã¹ã¦ãã¾ã¨ãã
GitHub ã«ããå®å ¨ãªã³ã¼ãã¯ãã¡ãã«ããã¾ãããã¢ã§ã¯ããã¿ã³ã§èµ·åããã¯ã®åå¾ã¨è§£é¤ãè¡ãã UI ãæ´æ°ãã¦ãã¾ããã¾ããä½ããã®çç±ã§èµ·åããã¯ãèªåçã«è§£é¤ãããå ´åã UI ãæ´æ°ããã¾ãããã§ãã¯ããã¯ã¹ããããããããªã³ã«ããã¨ãææ¸ã®è¡¨ç¤ºç¶æ ãå¤åãã¦åã³è¡¨ç¤ºãããããã«ãªã£ãå ´åã«ãèµ·åããã¯ãèªåçã«ååå¾ãããã¨ãã§ãã¾ãã
ããã©ã¼ãã³ã¹ã®èæ ®äºéç»é¢èµ·åãã㯠API ã¸ã®ã¢ã¯ã»ã¹ã¯ãæ©è½ããªã·ã¼ã® screen-wake-lock
ãã£ã¬ã¯ãã£ãã«ãã£ã¦å¶å¾¡ããã¦ãã¾ããä½¿ç¨æ¹æ³ã®ãªãã¡ã¬ã³ã¹ã¯æ©è½ããªã·ã¼ã®ä½¿ç¨ãåç
§ãã¦ãã ããã
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4