問題タブ [android-doze-and-standby]

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 投票する
0 に答える
431 参照

android - アラームが鳴るたびに setExactAndAllowWhileIdle() で新しいアラームを手動で設定する: Android

これは以前に何度か尋ねられたことは知っていますが、今まで自分に合ったものを見つけることができませんでした. setRepeating() を使用して、アラーム マネージャーを毎分実行するようにスケジュールしています。ただし、これは Android 6.0 の Doze モード以降は機能しなくなりました。setExactAndAllowWhileIdle() も使用してみましたが、setexactRepeating ではないため、繰り返されていないようです。

以下は私のコードです、

ServiceToUpdateWidget を毎分呼び出す必要があります。電話がディープスリープまたは居眠りモードに入った場合でも、それを行う方法はありますか. この目的でタイマーやカウントダウンを使用できますか? 居眠りモードで動作しますか?

以下のような多くのリンクをたどりましたが、

ただし、まだ 1 分ごとにサービスを呼び出すことはできません。

また、alarmManager.setAlarmClock() を使用してみましたが、まだうまくいきません。

次のようなリンクを見つけました: https://www.reddit.com/r/androiddev/comments/40ci7v/how_to_set_the_repeating_alarm_which_will_work/

「アラームが鳴るたびに setExactAndAllowWhileIdle() を使用して新しいアラームを手動で設定する必要があります。ただし、setInexactRepeatingAndAllowWhileIdle() が存在しないのには理由があります。これにより、ユーザーのバッテリー寿命が短くなります。本当に必要な場合にのみ、この回避策を使用してください。それ。"

以前のアラームがオフになったときに、新しいアラームを手動で設定するにはどうすればよいですか? お願いします、誰か助けてくれませんか?

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

android - バッテリー最適化のホワイトリストが Doze によるアプリの延期を妨げない

私のアプリは 15 分ごとに GPS 位置データをサーバーに送信します。この機能は、アプリの中心的な目的です。

ただし、電話機の電源を切って使用していないときは、GPS のログは徐々に減少します。GPS レコード間の時間は、しばらくの間 15 分で、その後 1 時間、2 時間、4 時間、6 時間になり、電話を移動するか電源を入れると 15 分に戻ります。

これは、Android 6 で導入された Doze モードによるものと思われます。アプリを Battery Optimizations ホワイトリストに追加しましたが、違いはありませんでし

  1. この場合、ホワイトリストが役に立たないのはなぜですか?
  2. 代わりに何をすべきですか?Wakelockを一定間隔で遅延させて Doze を防ぐことはできますか?

    /li>