問題タブ [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.
android-wake-lock - ウェイクロックでの Android の問題?
Hai ブロードキャスト レシーバーを使用してアプリケーションを開発しました。アプリケーションを常に起動する必要があるため、wakelock を使用しました。
問題
1.いつも目が覚めると、バッテリーが消耗しています。
2.もし私がカルw1.acquier()
なら、w1を解放する必要があります(ie w1.release)
android - Android:フォアグラウンドサービスとwakeLock
私はAndroidに比較的慣れていないので、私が尋ねていることは明白に思えるかもしれません(ただし、同じようなタイトルの質問をすべて読み、広範囲に検索しました)。加速度計を長期間継続的に監視する必要があります。2つのアプローチが提案されています。
1)加速度計が監視されている間ずっと保持される部分的なウェイクロックを取得します。と
2)フォアグラウンドサービスで加速度計を監視します。
最初のアプローチは、多くのバッテリー寿命を使用しているように見えます。2番目のアプローチでは、サービスが強制終了されることはめったにありませんが、「まれに」が何を意味するのかわかりません。どのアプローチを使用する必要がありますか?また、検討すべき代替案はありますか?
android - 短期間のサービスの実行中にデバイスを起動したままにするためのオプション
ユーザーに運動計画を案内するアプリケーションを開発しています。これは、オーディオ キューを使用して、運動中のさまざまなポイントでいつ歩くか、走るかなどをユーザーに知らせるランニング トレーナーです。
アプリの実行中に電話がロックされ、誰かのポケットに入れられる可能性が非常に高いので、可聴合図が来ないようにする方法を検討しています. 現時点では、ローカル サービスでハンドラーを使用して次のキューをスケジュールすることをテストしています。一部のデバイスでは予想よりもうまく機能していますが、他のデバイスでは、電話がロックされるとサービスが停止するようです。
さまざまなオプションが開かれていることを知っています-電話でウェイクロックを維持し、アラームをスケジュールし、(おそらく?これについてはわかりません)サービスの優先度を変更します。
では、人々はどのようなアプローチが最善だと思いますか? これは「通常の」サービスではないことに注意してください。通常は週に 3 回、最大で 30 分実行されます。多くのユーザーは実行中に音楽を再生します。とにかく眠りにくい。したがって、バッテリーを消耗するウェイクロックに関する通常の警告は、この場合にはあまり当てはまらないのではないかと考えています。
現在、最低限の API レベル 8 をターゲットにしています。
java - ソケット接続にはAndroidアプリロックが必要ですか?
私のアプリは、コーディングしたサービスを介してサーバーとのソケット接続を維持しますが、電話がスリープ状態になると (画面がオフになってから数分後)、スリープ状態の電話から通常の応答を取得できません。通常、サービスがネットワーク イベントを受信すると、サウンドが再生されます。
私の質問は、アプリを機能させるために wake_lock が必要かどうかです。もしそうなら、この wake_lock はどのコンポーネントに役立ちますか? 音とソケットの接続が気になります。部分的な wake_lock だけでこれを行うことはできますか?
ソケット接続に関しては、wifi で行う場合、追加の wifi ロックが必要ですか? ソケット接続はたまに小さなトランザクションで構成されているだけなので、(ユーザーが wifi を有効にした場合でも) wifi の下にないソケット接続を使用できる方法はありますか? または、ソケット接続は 3g/4g でのみ便利に行われますか、それとも wifi から 3g/4g に正常に縮退できますか?
ありがとう!
android - AndroidWAKE_LOCKの許可権
pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, C2DM);
C2DMサービスの実装でウェイクロックを使用し、AndroidManifestで権限を使用しています<uses-permission android:name="android.permission.WAKE_LOCK" />
。私は興味がありました、ウェイクロックは実際にどのような権利を持っていますか?アプリケーションのonPause()とonStop()でリリースされていないことは知っていますが、新しいメッセージが表示されたときに画面をオンにすることができます。しかし、他に何がありますか?どのくらいのバッテリーを使用しますか?デバイスの電源がオフになっている場合、c2dmメッセージはデバイスをウェイクアップしません。デバイスの電源がオフになると、ウェイクロックが解除されますか?前もって感謝します。
android - Android - WakeLock は必要ですか?
SMS が送信された後に「SMS_SENT」インテントをリッスンする BroadcastReceiver があります。私の知る限り、SMSManager は実際に SMS を送信できるようにウェイクロックを提供します (これを証明するものはありませんが、常識的に考えれば、これが事実であることがわかります)。
ただし、私の BroadcastReceiver は、独自のウェイクロックを使用する WakefulIntentService を呼び出すので、問題ありません。しかし、受信機自体はどうですか?WakefulIntentService が呼び出されることを保証できるように、新しいウェイクロックを作成する必要がありますか? それとも、AlarmManager の受信機でできるように、これを安全に無視できますか?
ありがとう
android - Android で画面ロック (電源) ボタンを無効にする
アプリケーションが電源ボタンを実行しているときに(押すと画面がロックされ、画面が黒くなります)、無効にする必要があります。ユーザーが画面をロックできないようにします。
Samsung Galaxy S phone の Default Camera App でこのことに気付きました。それが私が同じことをしようとしているのと同じ理由です。カメラ関連のアプリもあります。
usb - ウェイクロックは USB ケーブルが接続されている場合にのみ機能します
私はかなり奇妙な問題を抱えています。最近、次のコードを使用してアプリケーションでウェイクロックを使用しようとしました:
ウェイクロックは完璧に機能します。ボタンを押してから 5 秒後に (そして私の電話をロックしてから)、画面がオンになります。ただし、このテストは、USB ケーブルを使用してデバッグのために携帯電話をラップトップに接続している間に行われました。
奇妙な部分が来ます。電話を USB ケーブルに接続していない場合、ウェイクロックは単に画面をオンにしません。私が使用しているデバイスは、HTC の欲望です。私は実際に同じことをした別のHTCの欲求でそれをテストしました. 次に、HTC Desire HD で試してみました。そして、何を推測しますか:それは再び完全に機能しました!私はこれについて本当に混乱しており、問題が単に私の電話タイプの欠陥なのか、それともコードで何か間違ったことをしているのか疑問に思っています. 私にできることはありますか?私のアプリを購入した後に、誤動作している電話タイプの潜在的な顧客が同じ問題に遭遇した場合、非常に厄介です.
壁のプラグにケーブルを接続して電話を充電しながら、アプリケーションも試したことに注意してください。これは、電話がまったく接続されていないのと同じ問題につながります。どちらの HTC Desires も同じ Android バージョン (2.2.2) を実行します。
android - 私のアプリケーションが停止する理由を見つける、Android
サービスを開始および停止するためのボタンが1つある小さなデータ収集アプリがあります。
次に、サービスは新しいスレッドを開始します。放送があるたびに電圧変化に関するデータを収集します。
データは一時的にArrayListに格納され、10秒ごとにarrayListに格納されているすべてのデータがデータベースにダンプされます。
アプリは10〜20分間正常に実行されていますが、20分後にアプリは自動的に停止します。サービスがまだ実行されている場合もあれば、サービスが強制終了されている場合もあります。
ここで何が問題になるのか教えていただけますか。この問題に関連すると思われることは次のとおりです。
1.>データベースを10秒ごとに開いたり閉じたりしています。アプリ全体が終了したときにのみデータベースを閉じるように設計を変更する必要があります。
2.>私もウェイクロックを取りましたが、それは何の違いもありませんでした。私のサービスにもウェイクロックを取る必要がありますか?
3.>そして最後に、アプリが停止したためにエラーを知るにはどうすればよいですか(USBに接続して、バッテリーを消耗モードにしたいことを知ることができません)
更新:
logcatエラーは次のとおりです。
対応するスレッドコードは次のとおりです。
android - /proc/wakelocks の列は何を意味していますか?
cat /proc/wakelocks の後、次のような結果が得られます。しかし、列の数とはどういう意味ですか?
- 名前 - これは簡単です。
- count - 何個のロックが見つかったか?
- expire_count - わかりません。これは何ですか?
- wake_count - 上記と同じ。これは何ですか?
- active_since - 上記と同じ。これは何ですか?
- total_time - 上記と同じ。総時間は?
- sleep_time - 上記と同じ。これは何ですか?
- max_time - 上記と同じ。これは何ですか?
- last_change - 上記と同じ。これは何ですか?