¿Son la actividad y el contexto lo mismo o hay diferencias?
¿Cuándo debería hacer que un método pase una actividad y cuándo un contexto?
android
android-activity
android-context
Androide
fuente
fuente
Respuestas:
Por lo que tengo entendido: el contexto es el objeto base. Por tanto, todas las actividades iguales a las de las aplicaciones se derivan del contexto. Esto significa que cada Actividad y cada
Application
ES aContext
;De
developer.android.com
actividadjava.lang.Object ↳ android.content.Context ↳ android.content.ContextWrapper ↳ android.view.ContextThemeWrapper ↳ android.app.Activity
Y aplicación
java.lang.Object ↳ android.content.Context ↳ android.content.ContextWrapper ↳ android.app.Application
Un contexto de Aplicación dura, mientras su aplicación esté viva, mientras que el contexto de Actividad muere con su Actividad (no es válido después
onDestroy
de esa Actividad).Entonces, si necesita el contexto en todas las actividades (es decir, en un Singleton), será mejor que use un contexto de aplicación.
Por lo general, en los métodos de Android Framework donde se espera un contexto, no importa cuál pase. Pero tenga en cuenta siempre MemoryLeaks si mantiene referencias a un contexto de larga duración
fuente
Como puede ver en el documento de Android :
La clase Activity se extiende desde "ContextThemeWrapper", y esta de "ContextWrapper", y la de "Context".
Entonces, sí, ¡una actividad extiende el contexto!
fuente