問題タブ [android-wake-lock]

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 に答える
452 参照

android - システム全体のウェイクロックと電源接続に応じた解放

私は、デバイスが接続されているとき、つまりドックを介して、画面がウェイクロックを取得する単純なAndroidアプリで作業しようとしています。これにより、どのアプリが接続されていても、ウェイクを抜いたときに画面がオフにならないようになります。ロックが解除されます。

現時点では、必要ないと思っていたため、サービスを実行していません。電源が接続され、電源が切断された場合のブロードキャストインテントを受信します。電源が接続されている場合は、ウェイクロックを正常に取得しているように見えますが、電源が切断されている場合は、ウェイクロックを解放しようとしますが、代わりにnullポインタ例外をスローします。アプリが必ずしも実行されているわけではなく、サービスがないため、変数が保持されないためだと思います。

以下は、ブロードキャストを受信するために使用しているコードです。

以下は、ウェイクロックを取得して解放するコードです。

これが機能する方法はありますか?ウェイクロックが取得されたときに実行されているサービスが必要であり、電源が切断されたら、サービスを解放して停止します。

あなたが提供できるどんな助けにも感謝します。

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

android - フルウェイクロックが有効になっている場合、デバイスがロックされるとウェイクロックは自動的に解放されますか

PowerManager.FULL_WAKE_LOCKを使用して、画面が常にオンになっていることを確認するAndroidプロジェクトに取り組んでいます。

ウェイクロックが取得されている間にユーザーがデバイスをロックするのか、それともウェイクロックが自動的に解放されるのか、それとも自分で処理する必要があるのか​​、疑問に思いました。

グーグル検索をしましたが、何も思いつきませんでした。

ありがとう

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

android - PARTIAL_WAKE_LOCK はメディアプレーヤーを強制終了します

画面がオフになったときに MediaPlayer (ローカル ファイルのみを再生) を停止しないようにウェイクロックを実装しました。バッテリーを消耗させたくないので、PARTIAL_WAKE_LOCK を試してみました。しかし、効果はありません。画面をオフにすると、プレーヤーが殺されます。FULL_WAKE_LOCK は正常に動作しますが、予想どおり画面がオンのままで、バッテリーが消耗します...

私は何を間違っていますか?

ありがとう!L.

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

android - 画面を点滅させるための4.2のAndroidWakelocks

4.2より前のバージョンのAndroidでは、通知がアプリに届いたときに画面をフラッシュするためのコードがありました(ユーザーがフラッシュしたい場合)。私が使用した:

したがって、「aquire」メソッドは画面をオンに切り替え(まだオンになっていない場合)、「release」メソッドは画面を直接オフに戻します。

android 4.2では、ウェイクロックを解除してもスイッチがオフにならないようですが、ディスプレイの画面タイムアウト設定に達した場合のみです(デフォルトは2分と思われます)。

ウェイクロックが解除されたときにスイッチをオフにする方法はありますか?APIで画面のオンとオフを切り替える方法について少し見てきましたが、誰かが何かをしている最中にアプリが画面をオフに切り替えたくないので、使用するかどうかは少しわかりません。ウェイクロックはうまく機能しているようです。助言がありますか?

0 投票する
0 に答える
1135 参照

android - プッシュ通知の受信時にロックを解除します。簡単な方法はありますか?


プッシュ通知に関するandroid-hiveのガイドに従いました。そして、私は自分のアプリを作成し、プッシュを受け取るために必要なものを実装しました。
それはうまく機能し、プッシュとメッセージを取得しますが、プッシュを取得したときに画面が点灯することを除いてすべてです。元の androidhive-code でさえ、ウェイクロックは機能しませんでした。新しいプッシュ通知を受け取ったときに画面を起動させる簡単な方法があるはずですよね?

いつもお世話になっております!

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

android - ウェイクロックをグローバルに取得し、handler.postDelayed() ブロックで定義された setResult() を取得する場合、onActivityResult() は呼び出されません。

画面がオンのときに実行されるコードがいくつかありますが、画面の電源をオフにすると、実行に問題が発生します(Wakelockをグローバルに取得した後でも)。ウェイクロックを取得してアクティビティを呼び出すサービスがあります-次のコードでExecuteScript:

ExecuteScript.java:

そして、私の ScriptActivity (Service を呼び出し、30 秒かかる操作を実行します)。ただし、私の場合、 onActivityResult() は呼び出されません。なぜこれが起こるのか分かりません。私を助けてください。

handler.postDelayed() ブロック内で setResult() を定義しました。私は次のようなコードを持っています:

ScriptActivity.java

更新:バインドされたサービスの使用も機能しませんでした。これに関するアイデアはありますか?

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

android - Android - デバイスの起動とロック解除

アプリケーションの説明: アプリケーションは、特定のクライアント向けの安全プログラムとして意図されています (一般に展開されることはありません)。アプリケーションが一定時間動きを検出しなかった場合、アプリケーションはアラームを鳴らし、バックグラウンドにある場合やデバイスがスリープ状態の場合はフォアグラウンドに移動する必要があります。

問題: デバイスがスリープ状態でロックされている場合、デバイスを起動してロックを解除する必要があります。ここ SO やその他の場所で見つかったさまざまな手法を使用して、デバイスを (部分的に) スリープ解除してロック解除することができましたが、これは、デバイスがコンピューターに物理的に接続されている場合にのみ適切に動作します。デバイスがプラグを抜いたまま放置されていて、ウェイクアンロックをテストしても何も起こりません。デバイスはスリープ状態のままで、アプリケーションは何もしていないようです (アラームなし)。

PowerManager と KeyguardManager の使用に関するこの投稿と、ウィンドウ フラグの使用に関するこの投稿を使用しました。

デバイスをウェイクアップするために現在使用されているコードは次のとおりです。

私が見た/使用した他のSOの質問のコメントと投稿から、PowerManager/KeyguardManagerコードがうまくいくはずだったようです。繰り返しますが、前に述べたように、デバイスが USB 経由で開発マシンに接続されている間は技術的に機能しますが、デバイスが分離されている間はまったく何もしません。

また、これは私たちの最初の Android アプリケーションであるため、私たちがやろうとしていることから完全に外れている可能性があることを十分に認識しています。どんな提案でも大歓迎です。

要するに、上記のコードを考えると、デバイスがプラグインされているかどうかに基づいて動作が大きく異なるのはなぜでしょうか? また、デバイスをウェイクアップしてロックを解除するには、何を変更すればよいのでしょうか? よろしくお願いいたします。

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

android - 画面がオフになった後、どのアプリケーションがモバイルを目覚めさせているかをプログラムで見つける方法はありますか?

画面がオフになった後、どのアプリケーションがモバイルを目覚めさせているかをプログラムで見つける方法はありますか?

ユーザーの統計を作成するために、どのアプリケーションが起動しているかを検出する必要がありますか?

たとえば、2 月 11 日の 13:44 に、アプリ X は 20 分間待機します。等

0 投票する
4 に答える
6226 参照

android - デバイスがスリープ状態になるとサービスがスタンバイになる - Android

環境: Eclipse
言語: Java (Android)

デバイスでアプリケーションをテストするまでは、ちょっとした問題に気付きませんでした。電話がスリープ状態であっても、サービスはバックグラウンドで継続的に実行されていると常に思っていました。そうではないことがわかったので、デバイスをウェイクアップすると、サービスは再び開始されますか? そうでない場合、どうすればサービスを再起動できますか。

30 秒から 1 分間続くサービスを実行するためだけに、電話を 5 分ごとにスリープ解除することはできますか。そして、電話を再びスリープ状態にしますか?

前もって感謝します。

EDIT:私はAndroidプログラミングに非常に慣れていないので、誰かがWakefulIntentServiceの使い方を教えてくれたら本当にありがたいです. ユーザーの GPS 位置情報を頻繁に検索するサービスがありますが、電話がスリープ状態になっても、サービスでユーザーの位置情報を検索したいと考えています。これに WakefulIntentService を使用するにはどうすればよいですか? そして、このシナリオでそれを使用できるでしょうか。

ありがとう。