- Doze モード (Doze の第 1/第 2 レベル、メンテナンス ウィンドウの開始/終了時) にコールバックはありますか?
- ユーザーの承認に依存しない Doze モードを回避する方法はありますか?
- 以前のバージョン (Android M 以下) では、Android サービスと部分的な wake lock を使用して、アプリケーションがバックグラウンドにある間にデータをダウンロードして処理していました。Android N が居眠りモードになったときにバックグラウンドでデータをダウンロードして処理する方法はありますか?
2 に答える
Doze モード (Doze の第 1/第 2 レベル、メンテナンス ウィンドウの開始/終了時) にコールバックはありますか?
実行中のプロセスがある場合は、ACTION_DEVICE_IDLE_MODE_CHANGED
およびACTION_POWER_SAVE_MODE_CHANGED
ブロードキャストの受信者を登録できます。前者は Doze モードに対応する必要があります。
ユーザーの承認に依存しない Doze モードを回避する方法はありますか?
「回避策 Doze モード」の意味がわかりません。...AndAllowWhileIdle()
のメソッドを使用できますが、AlarmManager
結果はまちまちでした。GCM (または最近では FCM) を使用できます。ドキュメントを参照してください。
以前のバージョン (Android M 以下) では、Android サービスと部分的な wake lock を使用して、アプリケーションがバックグラウンドにある間にデータをダウンロードして処理していました。
Android 6.0 (別名、M) の Doze モードでは、部分的な wake lock を取り消す必要があります。同様に、Android 6.0 の Doze モードでインターネットにアクセスするべきではありません。
Android N が居眠りモードになったときにバックグラウンドでデータをダウンロードして処理する方法はありますか?
完全な Doze モードの場合、Android N は状況を変えないようです。Android N で導入された部分的な Doze モードでは、部分的なウェイク ロックが機能するはずですが、ネットワーク アクセスについては不明です。