問題タブ [sleep-mode]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
686 参照

android - API 17 のスリープ モード (バッチ アラーム) での Android Alarmmanager の問題

デバイスがスリープモードにあるときにアラームを起動するという矛盾にこの問題があり (十分に文書化された問題)、それが私を夢中にさせています。

頻繁なリマインダー用のアプリでは、アラームマネージャーを使用して、前のリマインダーが発生したときに次のリマインダーの時間を設定します。ほとんどの場合、アプリは正常に動作しますが、ASUS TF300t (API 17) のスリープ モードでは、アラームが異常になります。

アラームを登録するためのコード:

そして私の WakefulBroadcastReceiver クラス:

}

私が最初に観察しているのは、アラームのバッチ処理です。これは、想定されたときにアラームが起動されず、次のアラームが 2 番目のアラームと一緒に予定されているときに起動される場合です。

他に、スリープモードでアラームが時間通りに起動しない場合、電源ボタンでデバイスを起動した直後にアラームがオフになります。

API 19 および 23 (居眠りモード) でのアラーム動作の変更を認識しています。setExact() を使用して、エミュレートされた仮想デバイスで観察された新しい API の不正確な問題を解決しました。

このTF300tタブレットとGalaxy S3電話の2つの物理Androidデバイスがあります。S3 ではこの問題はめったに発生しませんが、TF300t の問題の一貫性により、基本的に私のアプリは役に立たなくなります。

だから私の質問は、私が説明した問題がすべての API の多くのデバイスに存在するか (まったく異なる解決策を探す必要があるか)、それともデバイスまたは API 固有のものであり、例外として扱うことができるかということです。

0 投票する
3 に答える
455 参照

driver - アイドル時間の測定に使用されるタイマーをリセットするための、非推奨の UpdateSystemActivity() の置き換え。

非推奨の UpdateSystemActivity() は、「アクティビティが発生し、アイドル時間を測定するために使用されるタイマーをこの呼び出しの時間に更新する必要があることを Power Manager に通知する」ことによって機能します。

ドキュメントでは IOPMAssertionCreateWithName(...) の使用を推奨していますが、このメソッドはアイドル時間のタイマーをリセットしません。IOPMAssertionRelease(...) が呼び出されるまで、マシンが永久にスリープするのを防ぎます。IOPMAssertionCreateWithName(...) の使用は、現在のコードベースには適していません。

アイドル時間を測定するためにタイマーをリセットする非推奨の方法はありますか?

ありがとう!

0 投票する
2 に答える
125 参照

javascript - コンピュータがスリープ状態になった場合、JavaScript Audio() メソッドはサウンドを再生しますか?

Audio() メソッドを使用して 1 時間に 1 回サウンド ファイルを再生する JavaScript 関数を Web サイトが実行している場合、クライアント コンピューターは最終的にスリープ状態になります。コンピューターがスリープ状態になっても、Audio() メソッドはクライアントのスピーカーからサウンドを再生しますか? お時間とご協力ありがとうございました。

0 投票する
2 に答える
3811 参照

ios - イオンは、アプリが実行されているときにのみ電話がスリープ状態になるのを防ぎます

Insomniaプラグインは、呼び出されるwindow.plugins.insomnia.keepAwake()までデバイスをスリープ状態に保つことを約束します。window.plugins.insomnia.allowSleepAgain()

ただし、一部のアプリでは、アプリがアクティブな間だけデバイスが起動していることが理にかなっています。ユーザーがアプリを一時停止し、バックグラウンドで実行していたことを忘れた場合は、バッテリー レベルを下げるのではなく、スリープを許可することをお勧めします。

通常、アプリの一時停止時に必要なアクションは、pauseイベントを通じて処理されます。

しかし、Cordova docsによると、iOS の Pause ハンドラーは、Insomnia プラグインを含むネイティブなものを呼び出すことはできません。

必要な機能を実現する方法は?

0 投票する
1 に答える
2299 参照

windows - プログラムで PC をスリープ モードにする

古い問題、おそらく (?) 古い Windows バージョンでは解決されましたが、Windows 10 では解決されませんでした!

古い議論で提案された解決策 (... パラメーター 0、1、0 (またはスリープ) を持つ SetSuspendState、事前の休止状態の有無にかかわらず ...) Windows 10 システムでは機能しません。少なくともすべてではありません。開始されたモードはほとんど休止状態であり、スリープではありません。

私が見つけたもの: 古い Windows バージョンでは、レジストリに次のようなものがありました: [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\sleep\command] @="rundll32.exe powrprof.dll,SetSuspendStateスリープ」 これは明らかにスリープ コマンドです。少なくとも私の Windows 10 PC では、そのようなエントリはありません!

新しい答えを持っている人はいますか?

================== 編集:この私の OP の後、これは Windows 10 の問題ではなく、Surface で使用される電源オプションに関連する Surface 3 の問題であることがわかりましたスリープモードとして 3:

Surface 3 で使用されるスリープ モードは、「モダン スタンバイ」=「S0 低電力アイドル」=「接続されたネットワーク スタンバイ」のようです。(通常の S3 スリープ モードではありません!!!)

SetSuspendStateを使用するコマンドは、Surface 3 でスリープ モードを開始することがまったくできないようです。

私の質問に対する新しい言い回し: 私が持ちたいのは、「電源ボタン アクション = スリープ」に設定されている Surface 3 の電源ボタン、または外付けのスリープ ボタンと同じことを行うコマンドだけです。 Surface 3 が「スリープ ボタン アクション = スリープ」に設定されている場合の (USB) キーボード。