問題タブ [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.
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() が存在しないのには理由があります。これにより、ユーザーのバッテリー寿命が短くなります。本当に必要な場合にのみ、この回避策を使用してください。それ。"
以前のアラームがオフになったときに、新しいアラームを手動で設定するにはどうすればよいですか? お願いします、誰か助けてくれませんか?
android - バッテリー最適化のホワイトリストが Doze によるアプリの延期を妨げない
私のアプリは 15 分ごとに GPS 位置データをサーバーに送信します。この機能は、アプリの中心的な目的です。
ただし、電話機の電源を切って使用していないときは、GPS のログは徐々に減少します。GPS レコード間の時間は、しばらくの間 15 分で、その後 1 時間、2 時間、4 時間、6 時間になり、電話を移動するか電源を入れると 15 分に戻ります。
これは、Android 6 で導入された Doze モードによるものと思われます。アプリを Battery Optimizations ホワイトリストに追加しましたが、違いはありませんでした。
- この場合、ホワイトリストが役に立たないのはなぜですか?
代わりに何をすべきですか?Wakelockを一定間隔で遅延させて Doze を防ぐことはできますか?
/li>