プログラミング勉強日記
2020年12月9日
Androidアプリを作るにあたって理解しとくべきアクティビティのライフサイクルについて簡単にまとめる。
基本的なライフサイクル
以下の図は、基本的なActivityのライフサイクルを示して、ライフサイクルが変化するタイミングで呼び出されるActivityのメソッドを示している。
参考文献:Activity Lifecycle
ライフサイクルは直接アプリが制御していない。メモリがいっぱい過ぎる時、システムが勝手にアプリを止めることができる。アクティビティのライフサイクルにおけるステージ間を移動するために、Activity クラスには onCreate()、onStart()、onResume()、onPause()、onStop()、onDestroy() の 6 つのコールバックのコアセットがある。アクティビティが新しい状態になると、これらの各コールバックが呼び出されるようになっている。
onCreate()とは
onCreate()は、Activityがある間はずっと必要な処理の初期化を行う。Activityのライフサイクルのすべての期間の中で1回のみ実行する必要がある基本的なアプリの起動を実行する。
onStart()とは
onStart()はActivityが表示される前に呼び出されるライフサイクルイベントである。アプリが操作可能な状態にする準備を行うと、onStart()の呼び出しによってActivityがユーザに表示される。
onResume()とは
Activityが再開状態になるときにonResume()コールバックを呼び出す。ユーザはそこで操作を行うことができるので、実行状態とも呼ばれる。
onPause()とは
ユーザがActivityを離れることを最初に示すために、システムはonPause()を呼び出す。Activityがフォアグラウンドにいないことを示す。
onStop()とは
ユーザに表示されなくなったActivityは停止状態になって、onStop()を呼び出す。onStop()はActivityが非表示になったら呼び出されるライフサイクルイベントである。
onDestroy()とは
Activityが破棄される前にonDestroy()を呼び出す。アクティビティが終了するか、デバイスの向きの変更やマルチウィンドウモードといった構成の変更に伴ってActivityが一時的に破棄される状態のときに呼び出される。
参考文献
アクティビティのライフサイクルについて
知らずに作って大丈夫?Androidの基本的なライフサイクルイベント31選 (2/4)