モバイルウェブアプリ用のシンプルなJavaScriptベースのタイマーを作成しました。例として:
var a = 0;
setInterval(function() {
console.log('a', a);
a++;
}, 1000);
これは、モバイルSafariとAndroidブラウザの両方で問題なく動作します。毎秒コンソールにログを記録し、それに応じて値をインクリメントします。(さて、Androidブラウザはconsole.logをサポートしていませんが、サポートしていると仮定しましょう。)
問題:画面がタイムアウトした場合(つまり、ユーザーがページの操作を停止した場合)、setInterval関数は一時停止します。ユーザーが画面を再びオンにすると再開します。実行を続けるにはタイマーが必要なので、これはうまくいきません。
質問:画面がタイムアウトしたときにsetInterval関数が一時停止しないようにする方法はありますか?そうでない場合、画面がタイムアウトするのを防ぐことはできますか?他の選択肢はありますか?
前もって感謝します!