【Android】getApplication()とgetApplicationContext()
545 ワード
意味的および歴史的に問題が残っているため、カスタムアプリケーションおよびmockテストの場合、
Googleは、App内のデータ共有、ステータスキャッシュについて、静的単一クラスを使用してこのような機能を提供することを推奨していますが、ApplicationはApp全体のイベントとライフサイクル監視に注目しています.
参考:getApplication()vs.getApplicationContext()-Stack Overflow
getApplication()
とgetApplicationContext()
が返すアプリケーションオブジェクトは必ずしも同じアプリケーションではない.getApplication()
APIはActivityおよびServiceでのみ提供され、登録されたカスタムアプリケーションバージョンを返すことを保証します.getApplicationContext()
APIは、BroadcastReceiverのようなすべてのContextオブジェクトに使用でき、返されるオブジェクトがカスタムバージョンであることは保証されません.Googleは、App内のデータ共有、ステータスキャッシュについて、静的単一クラスを使用してこのような機能を提供することを推奨していますが、ApplicationはApp全体のイベントとライフサイクル監視に注目しています.
参考:getApplication()vs.getApplicationContext()-Stack Overflow