2011-03-14 4 views
1

Je dispose actuellement d'un thread qui génère et sort la commande suivante d'une file d'attente et l'exécute ou y dort un peu et réessaie. Cependant, je ne veux pas qu'il s'exécute s'il n'y a plus de commandes dans la file d'attente et qu'il n'y a plus d'activités en vie dans l'application.Problème de durée de vie du service

Ma question est la suivante: Quelle voie devrais-je examiner et quels itinéraires pourraient être empruntés par d'autres personnes?

  1. Remanier le service pour traiter uniquement les commandes qu'ils viennent, et non d'un thread
  2. ayant une troisième condition dans mon fil (si! ActivityCount = 0 fil d'arrêt)

Ou, est-ce que je me trompe et android peut terminer automatiquement mon thread s'il n'y a plus d'activités liées?

Répondre

1

Il est un moyen de créer un service qui est arrêté « automagiquement »: voir la page Bound Services dans le Guide Dev:

Un service lié vit généralement que alors qu'il sert une autre application composants et ne pas exécuté dans le fond indéfiniment.

+0

haha, merci. Je vais regarder cet article, je l'ai manqué. Je lie mon activité mais le point est que je veux que l'application finisse io aux serveurs même si un utilisateur passe à d'autres applications. –