Насколько я понимаю:
Контекст - Базовый объект. Таким образом, каждое действие , такое же как и приложение , происходит из контекста. Это означает, что каждое действие и каждое Application
является Context
;
С developer.android.com
Активность
java.lang.Object
↳ android.content.Context
↳ android.content.ContextWrapper
↳ android.view.ContextThemeWrapper
↳ android.app.Activity
А Применение
java.lang.Object
↳ android.content.Context
↳ android.content.ContextWrapper
↳ android.app.Application
Контекст приложения сохраняется до тех пор, пока ваше приложение живо, а контекст действия умирает вместе с вашим действием (он недействителен после onDestroy
этого действия).
Так что, если вам нужен контекст для разных видов деятельности (т. Е. В синглтоне), вам будет лучше использовать контекст приложения.
Обычно в методах Android Framework, где ожидается контекст, не имеет значения, какой из них вы передаете. Но всегда помните о MemoryLeaks , если вы сохраняете долгоживущие ссылки на контекст