2010-02-17 4 views

Répondre

11

Salut, est-il possible de laisser un fil en arrière-plan lorsque je ferme l'application dans Android?

Cela se produira par défaut. Cela ne veut pas dire que c'est une bonne idée.

j'ai lu sur un service, mais il est la mise en œuvre trop que je besoin.

Plus probablement, c'est précisément ce dont vous avez besoin.

Si vous démarrez un thread dans un Activity, puis ne parvenez pas à arrêter ce thread, il s'exécutera indéfiniment, jusqu'à ce qu'Android termine le processus, car vous n'avez aucun moyen de l'arrêter. La seule sorte d'exception acceptable est si votre thread s'arrête lui-même, et vous devez alors faire très attention à ce qu'il finisse proprement. D'autre part, vous pouvez prendre des dispositions pour arrêter un Service en cours d'exécution à chaque fois que vous avez besoin, de toute Activity, et que Service pouvez prendre des dispositions pour arrêter le fil, de sorte que vous ne fuit pas le fil indéfiniment. Je vous encourage fortement à implémenter un service qui gère le thread.

+1

Je pense qu'il voulait probablement dire qu'un service est beaucoup plus complexe à mettre en œuvre (et il l'est). Je suis d'accord que c'est probablement le bon outil pour le travail. –

+1

Alors que la création d'un service est plus complexe que de démarrer un thread, j'ai été surpris de voir à quel point il était facile. http://www.brighthub.com/mobile/google-android/articles/34861.aspx fournit une bonne introduction – dparnas

+0

merci à tous. Je vais essayer de mettre en place un service au lieu d'un thread – xger86x

3

Une autre raison d'utiliser un service est que la plate-forme donnera la priorité du processus pour ne pas être tué alors qu'il est en arrière-plan.

+0

c'est que j'ai besoin .. donc j'utilise un service. Merci – xger86x

Questions connexes