問題タブ [wakelock]
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.
android - 画面がオフになったときに電話が振動することを許可する
画面がタイムアウトしてオフになった後、プログラムで電話を振動させる方法を探しています。私は多くの研究を行ってきましたが、うまくいくものを見つけていません。PowerManager クラス、より具体的には WakeLock メカニズムを調べました。多くの投稿の音から、WakeLock クラスの PARTIAL_WAKE_LOCK 変数を使用する必要があります。
PARTIAL_WAKE_LOCK - CPU が実行されていることを保証するウェイク ロック。
ただし、画面がオフになったときに電話を振動させることはできません。SCREEN_DIM_WAKE_LOCK を機能させることができるので、WakeLock を正しく使用していることはわかっています。PARTIAL_WAKE_LOCK は私が探しているものですか?
android - アプリケーションが画面をオンにしたままになっていることを検出する
私は、ステータスバーの通知を介してユーザーと主に通信するAndroidアプリを書いています。ただし、ユーザーが実際に電話を直接操作していない場合は、ユーザーに迷惑をかけないようにしたいと思います。たとえば、ユーザーがナビゲーションアプリを使用している場合や、映画を見ている場合です。これらの種類のアプリのすべて(またはほとんど)に共通しているのは、画面をオンに保つことだと思います。アプリは、WakeLockを使用するか、アクティビティにkeepScreenOnパラメーターを指定することで、画面をオンに保つことができると思います。他の方法があるかもしれません。
通知を表示する前に、別のアプリケーションが画面をオンにしているかどうかを確認して、ユーザーの迷惑にならないようにすることができるかどうかを知りたいと思いました。すべてのオプションをカバーしたいと思います。WakeLockにはisHeld()メソッドがあることがわかりますが、それは他のメソッドを検出しますか?
ありがとうございました、
android - Android GPS トラッキングと WakeLock
Android フォンでバックグラウンド GPS 追跡を行う必要があり、現在 2 つのシナリオを計画しています。
- 電話が (車の) 充電器に接続されている場合、頻繁に (1 分ごとに) GPS 位置情報を取得します。
- 電話が充電器に接続されていない場合は、バッテリーの影響に応じて、5 ~ 30 分ごとに 1 回だけ場所をポーリングします。
サービスに追跡を実装する必要があることはわかっており、おそらくサービスを維持するために通知を表示します。ただし、携帯電話がいつでもスリープ モードになり、GPS 追跡が停止する可能性があると私は推測しています。
これらのシナリオでは、電話がスリープ状態にならず、電力をあまり消費せずに、継続的なバックグラウンド GPS 追跡を行うための最良の方法は何ですか?
これまでのところ、以下を収集しました。
シナリオ 1 の場合、おそらく WakeLock を取得し、CPU を常に起動しておく必要があります (ただし、画面はスリープする可能性があります)。MyTracks アプリケーションはTrackRecordingServiceでこれを行っているようです。OpenGPSTrackingも同じようです。
シナリオ 2 では、AlarmManager を使用して x 分ごとにチェックをスケジュールできます。私のサービスは、一時的な WakeLock を取得し、単一の GPS 位置を待ってから、WakeLock を停止して解放する必要があります。
これら 2 つの方法 (永続的な WakeLock と AlarmManager) の電力使用量を比較するとどうなるでしょうか? GPS は 30 分ごとに確認するだけで、適切な時間内に正確な位置を受信できますか?
StackOverflow には関連する質問がいくつかありますが、満足のいく答えはありません。いくつかの半有用なもの:
android - 複数のクラス、onCreate の保存されたインスタンスの問題
わかりました、とても簡単な説明。3 つのファイルで構成されるアプリがあります。
Main.java、License.java、App.java
例として。このアプリは、私が尋ねようとしていることを除いて、100% 機能します。このアプリには webview が含まれており、ここで問題が発生します。私が調査したところ、ほとんどすべてが方向の変化を示しています。現時点では横向きを強制しているため、向きに問題はありません。電話がスリープ状態になるという問題があります。
起動すると、webview 内のページをリロードします。そのためのロックを追加できますが、誰かが手動で電話をロックしてからロックを解除した場合、同じ応答になります. または、強制ウェイクがアプリにある場合、手動でロックできますか? 私はそれをテストする必要があると思います。
とにかく、saveinstancestate は webview 内の場所を記憶してリロードすると思いますか? もしそうなら、それはどの oncreates に入りますか?
メインは最初に開いたときに起動され、これがライセンスを呼び出し、それが合格するとアプリケーションが開きます
android - contentobserver によるスリープ サービス
ContentObserver (C) をホストするサービス (S) を作成しました。C は、一部のデータを追跡し、データベースに加えられた変更をログに記録します (D)。
S には、時間間隔で D の内容をファイルにダンプするタイマーもあります。
私は自分の電話でサービスを実行していますが、しばらくの間 (数時間程度) は問題ないようです。その後、突然、データに加えられた変更の記録を停止し、ファイルへのダンプを停止します。データを変更して (C で onChange を引き起こします)、電話をブラウジングしてデバイスを起動させようとしましたが、何も起こりませんでした。サービスはまだ非アクティブです。S はまだ実行中で、ラップトップに接続してもログにエラーは表示されません。
私の推測では、サービスはスリープ状態です (CPU スライスを取得していません)。ウェイクロックについて少し読んだことがありますが、電話を常に強制的に起動させたくありません。(). 別の方法は、T 分ごとに C の作業を実行する繰り返しアラームを作成することです (ポーリング)。ユーザーは更新の間にデータを変更 (特に削除) できるため、ContentObservers のアイデアがより気に入っています。ContentObserver を使用すると、時間間隔のスナップショットだけでなく、すべての変更を取得できます。
定期的にサービスを起動する方法についてのアイデアはありますか?
よろしくフレデリック
android - 電源ボタンを無効にする方法は?
Androidの電源ボタンの機能を無効にすることはできますか? 電源ボタンを「無効」にしたい。私の計画は、このボタンの機能をオーバーライドして何もしないようにすることです ( {}; ) 私の主なアイデアは、画面のオフを無効にすることです。
誰かが電源ボタンを押しても何も起こらないようにしたい。
これどうやってするの ?
android - Android:画面がオフになった後もカメラLEDをオンにしておく
私はAndroidコーディングを始めたばかりなので、質問を投稿するのをためらっていましたが、今は抵抗できないところにいます。
カメラをオンにするサービスがあります-LEDonCreate:
WakeLockが取得したことがわかります。私は、FULL_WAKE_LOCKでテストしましたが、スクリーンタイムアウトを考慮してオフになりませんでした。しかし、画面をオンにする必要がないので、完全なウェイクロックを使用したくありません。
私の電話用のCyanogenmod(HTC Legend)は、私がやりたいことを実行できるトーチアプリをもたらします。そのソースコードはここにあります:
https
://github.com/CyanogenMod/android_packages_apps_Torch/tree/gingerbread/src/net/cactii/flash2
これがヒントである場合、そのアプリでライトが少しの間オフになることに気づきました誰か、明らかに私のためではありません;(
誰かが私のコードを変更して私が望むことをすることは期待していませんが、誰かが私を正しい方向に向けることができれば幸いです!
挨拶
SJ
android - WakeLock が予定どおりに機能していないようです
アプリが通知を送信するときに画面をオンにしようとしています。現在、acquire
点滅WakeLock
は非常に速く、ほとんど目立たない程度です。私が知る限り、フラグは正しく設定されています。AQUIRE_CAUSES_WAKEUP
画面をオンにしON_AFTER_RELEASE
て(ユーザーアクティビティタイマーを突く)離すとオンのままにします-そうしないと、すぐにオフになることを理解しています...誰か洞察を得ましたか?
android - AndroidはウェイクロックなしでいつCPUを停止しますか?
私はアンドロイドがウェイクロックを使用してCPUを実行したり画面をオンにしたりしていることを知っています。画面のウェイク ロックにより、ユーザーが一定時間操作を行わなかった後、ユーザー アクティブ タイマーが画面をオフにできないことは明らかです。
しかし、CPUウェイクロックがいつ有効になるのか疑問に思っています。
1.新しいスレッドを作成し、wake lock なしでバックグラウンドで CPU を使い続けた場合、画面をオフにしても停止しません。止まるか、いつ止まるか。
2.Timer.schedule() でスケジュールされたスレッドはどうですか?
3. socket.read() でブロックされているサービスで長いソケット接続を保持している場合、別の質問につながります。ソケットがリモートからデータを受信したときにサービスがウェイクアップされるようにするには、ウェイクロックを取得する必要がありますか?
ありがとう。
android - アプリを前面に出し、ディスプレイをオンにして、AlarmManager からロックを解除しますか?
ディスプレイをオンにし、電話のロックを解除して、設定したアラームがアクティブになったときにアプリを前面に表示したいと考えています。
CountDownTimer のバイブレータは有効になっているのに、ディスプレイがオンにならない...
余談ですが、「ポジティブ」なアラーム音を鳴らしたいです。どうすればいいですか?