44 votes

Android: Quand utiliser Service vs Singleton?

Je suis assez nouveau dans le développement Android.

Quand est-ce une bonne idée de créer un service Android au lieu d'utiliser une simple classe Singleton?

Prenons, par exemple, les flux d’informations de la couche de données téléchargeant d’Internet.

L'utilisation d'un service semble trop difficile dans certains cas, mais il est parfois nécessaire d'accéder à un Context . Je ne suis donc pas sûr de savoir comment concevoir l'application.

42voto

hackbod Points 55292

Si c'est bon pour votre processus d'être tué (avec le singleton) immédiatement après que l'utilisateur quitte ses activités, puis d'utiliser un singleton. Si vous en avez besoin pour continuer à fonctionner pendant une certaine durée après cela, utiliser un service. Si vous souhaitez continuer à fonctionner une fois que l'utilisateur quitte, mais peut vivre avec elle, non pas parce que l'utilisateur est maintenant à quelque chose d'autre où la mémoire est la plus nécessaire, puis d'utiliser un singleton.

La décision entre ces deux seulement s'agit du cycle de vie de votre app. À cette fin, c'est tout un service n'-demander à la plate-forme pour modifier la gestion de votre processus. Si vous avez besoin d'un contexte à un singleton, il suffit d'utiliser le Contexte.getcontexteapplication() pour récupérer le contexte global de votre processus.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X