アプリケーションがバックグラウンドに移行してフォアグラウンドに到達したときに、アプリケーションレベルでコールバックが発生しない理由は何でしょうか。Activity
クラスのonPause
とonResume
は、現在の上位のアクティビティでのみ呼び出されます。アプリケーションレベルのスコープを持つバックグラウンドタスクを停止したい場合、アプリがバックグラウンドに移行したときにそれを停止する簡単な方法はありません。これらのイベントコールバックに対する需要は高いです。
Androidにアプリケーションの一時停止と再開時にアプリレベルのコールバックがないのはなぜですか?アプリレベルではない場合、タスク(アクティビティスタック)レベルでAndroidに実装できますか?
本当の問題:
バックグラウンドのTimertaskは、定期的にWebからのデータでUIを更新します。アプリがフォアグラウンドでなくなったら、停止したいと思います。
現在、繰り返しコードをに入れていBaseActivity
ます。これはアクティビティレベルです。タスクは、すべてのアクティビティの一時停止と再開のたびに停止および開始します。アプリがbgに移行するイベント、またはfgに到達するイベントは、これらのイベントの1つに隠されていますが、私にはわかりません。それを行うためのより良い方法があるかどうかを知りたかったのです。つまり、アプリがユーザーに表示されなくなったときを知ることです。