Czy aktywność i kontekst są takie same, czy też istnieją różnice?
Kiedy metoda powinna przekazać działanie, a kiedy Context?
Czy aktywność i kontekst są takie same, czy też istnieją różnice?
Kiedy metoda powinna przekazać działanie, a kiedy Context?
Odpowiedzi:
O ile rozumiem:
kontekst jest obiektem podstawowym. Tak więc każda aktywność taka sama jak aplikacja pochodzi z kontekstu. Oznacza to, że każde działanie i każde Application
JEST Context
;
Z developer.android.com
działalności
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
Kontekst aplikacji trwa tak długo, jak długo aplikacja działa, podczas gdy kontekst działania umiera wraz z działaniem (nie jest ważny po onDestroy
tym działaniu).
Więc jeśli potrzebujesz kontekstu między działaniami (tj. W singletonie), lepiej będzie, jeśli użyjesz kontekstu aplikacji.
Zwykle w metodach Android Framework, w których oczekiwany jest kontekst, nie ma znaczenia, który z nich zostanie przekazany. Ale zawsze bądź świadomy MemoryLeaks, jeśli zachowujesz długotrwałe odniesienia do kontekstu