IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Android Discussion :

Thread, Service, AsyncTask, Handler?


Sujet :

Android

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    60
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 60
    Par défaut Thread, Service, AsyncTask, Handler?
    Bonjour,

    J'aimerais effectuer une tâche de longue durée (1-2 minutes) qui fournit au fur et à mesure des résultats à une Activity mais j'aimerais que si on quitte cette Activity (par exemple, si une autre Activity passe devant) avant que la tâche ne finisse, cette tâche ne s'arrête que lorsqu'elle aura fini. Pourriez-vous m'indiquer laquelle des méthodes énoncées dans le titre me permet de faire ceci?

    J'ai déjà lu la documentation, mais ça ne m'a pas aidé pour ma question.
    Merci d'avance pour vos réponses

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    60
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 60
    Par défaut
    J'utilise une AsyncTask pour télécharger et mettre à jour un document XML pendant que l'on utilise l'applcation. Je la lance dès le démarrage de mon application.

    Tu peux recevoir les résultats en utilisant publishProgress et onUpdateProgress.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    60
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 60
    Par défaut
    Merci pour ta réponse.

    Donc si j'ai bien compris, l'asyncTask n'est pas liée à l'état de l'activity qui la lance? Et y-a-t'-il un risque qu'en cas de manque de mémoire, la tâche puisse être stoppée?

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    60
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 60
    Par défaut
    L'activity qui lance mon AsyncTask ne subit pas de finish() mais même en sortant de l'application via le bouton home, la mise à jour continue.

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    60
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 60
    Par défaut
    Ok merci, je pense que je vais donc opter pour cette solution.

    J'aurais une autre question :
    j'ai vu qu'on ne pouvait pas exécuter deux fois un AsyncTask (comme pour les threads donc), peut-on (comme pour les threads) continuer à questionner un AsyncTask même s'il a fini sa tâche?

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    60
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 60
    Par défaut
    Qu'entends-tu par questionner ?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 5
    Dernier message: 12/02/2016, 12h01
  2. Thread, AsyncTask et Handler
    Par Feanorin dans le forum Android
    Réponses: 1
    Dernier message: 23/12/2014, 14h45
  3. Thread ou AsyncTask ?
    Par Drlord dans le forum Android
    Réponses: 8
    Dernier message: 15/03/2012, 09h35
  4. Thread, service local, remote?
    Par valkeke dans le forum Android
    Réponses: 2
    Dernier message: 22/03/2011, 21h43

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo