SOに関するこのトピックについては、すでに多くのことを読んでいます。もちろん、デバイスがスリープ状態のときに着信を受け入れる必要があるSIPクライアントを作成しようとしています。私が最初に試したのは、onCreate
メソッドでこれらのフラグを使用することでした:
Window window = this.getWindow();
window.addFlags(WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED);
window.addFlags(WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON);
window.addFlags(WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD);
window.addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
また、私のデバイス (電話のモデルが異なり、API レベルも異なる) は、USB ケーブルで PCに接続されているか、充電中の場合にのみ起動しました。電話のプラグを抜いた場合、フラグの影響はありませんでした。それから、ある男がすでにSOで同様の質問をしていることがわかりました:Android - デバイスのウェイクアップとロック解除誰も彼に返信せず、しばらくして彼は自分の質問に対する答えを見つけて投稿しました。その答えは、PowerManagerクラスを使用することでした。彼の答えは私を大いに助けてくれましたが、PowerManager のドキュメントには「デバイスのバッテリー寿命は、この API の使用によって大きく影響を受ける」と書かれています。
. 身をもって感じました。アプリケーションがバッテリーのエネルギーを使いすぎました。アプリと WhatsApp を比較したところ、バッテリー エネルギーの使用量に大きな違いが見られました。
それで、デバイスがスリープ状態になっているときにデバイスを起動する他の方法はありますか、または
このプロセスがWhatsApp、Skype、および着信を受信してバッテリー寿命を節約する他のアプリでどのように機能するかを知っている人はいますか?