Context (Application or Activity)について
・Application or Activity
なぜContextを渡すのかについては、アプリの状態を受け渡すため〜みたいな認識で良いとして・・・
ContextにはActivity と Applicationって2つのContextがある。
ActivityのContextを取得するには、(Activityを継承してるクラスで)thisを呼ぶ。
ApplicationのContextを取得するには、getApplicationContext()を呼ぶ。
2つのContextの違いは
要するに、 Application Contextはアプリケーションに関連していて、アプリケーションのライフサイクルに関わらず同じContextオブジェクトとなっていること。
それに反して、Activity ContextはActivityに関連していて、Activityが破棄される時(画面が回転するなどといったときに簡単に破棄される)、Contextオブジェクトも同様に何度でも破棄されて何度でも作られる。ということだろうか。
では、どっちを使えば良いのか?ということだが…
http://achch362.blog112.fc2.com/blog-entry-6.htmlを参考にしたところ。
情報として持っている物は、変わらないみたいですね。
好きなほうを使っても、取得できるものは変わらないから、これはこれですっきり?