アプリケーションコンテキストは、アプリケーションのライフサイクルに関連付けられており、アプリケーションの存続期間を通じて常に同じになります。 Toastを使用している場合は、アプリケーション内のどこからでもトーストでき、ウィンドウにアタッチされていないため、アプリケーションコンテキストまたはアクティビティコンテキスト(どちらも)を使用できます。
アクティビティコンテキストはアクティビティのライフサイクルに関連付けられており、アクティビティのonDestroyが発生すると破棄される可能性があります。
getApplication()
ですが、Applicationオブジェクトを参照するが、ApplicationクラスはContextクラスを拡張しているため、アプリケーションコンテキストを提供するために使用できます。
getApplicationContext()
は、アプリケーションコンテキストを提供します。
getBaseContext()
は、アクティビティコンテキストを提供します。このコンテキストは、それまではアプリケーションがシャットダウン住んでいるので、あなたがその目的のためにあなたがコンテキストを使用している理由
は、それが依存、
getApplicationContext()
が最も好ましい方法です。
getBaseContext()
コンテキストはウィジェットとビューで使用できます。
トーストメッセージやインテント作成時には、すべてgetApplicationContext()
を使用しても同じエフェクトイベントが発生しますが、最も正しいです。 Toastはどのような種類のViewも添付していないので、あらゆる種類のContextを受け入れます。その通知。
ありがとうSahiuMahajanMj – senzacionale