L'activité et le contexte sont-ils identiques ou y a-t-il des différences?
Quand dois-je faire passer une activité par une méthode et quand un contexte?
Pour autant que je comprends: Context est l'objet de base. Ainsi, chaque activité identique à application dérive du contexte. Cela signifie que chaque activité et chaque Application
IS a Context
;
De developer.Android.com
Activité
Java.lang.Object
↳ Android.content.Context
↳ Android.content.ContextWrapper
↳ Android.view.ContextThemeWrapper
↳ Android.app.Activity
Et Application
Java.lang.Object
↳ Android.content.Context
↳ Android.content.ContextWrapper
↳ Android.app.Application
Un contexte d'application dure tant que votre application est active, tandis que le contexte d'activité meurt avec votre activité (il n'est pas valide après onDestroy
de cette activité).
Donc, si vous avez besoin du contexte entre les activités (c'est-à-dire dans un singleton), vous ferez mieux d'utiliser un contexte d'application.
Habituellement sur Android Méthodes Framework où un contexte est attendu, cela ne fait aucune différence lequel vous passez. Mais soyez toujours conscient de MemoryLeaks si vous gardez une longue vie Références à un contexte
Comme vous pouvez le voir sur le doc Android :
La classe Activity s'étend de "ContextThemeWrapper", et celle-ci de "ContextWrapper", et celle de "Context".
Donc, oui, une activité étend le contexte!