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 :

Supprimer une application de la liste multitache une fois fermée


Sujet :

Android

  1. #1
    Membre très actif
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    427
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 427
    Par défaut Supprimer une application de la liste multitache une fois fermée
    Bonjour,

    je ferme mon application avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Activity.finish();
    System.exit(0);
    mais mon application apparaît toujours dans le gestionnaire de tâche sous Android 4.1 une fois fermée.
    Peut-on la faire disparaître de la liste des applications de ce gestionnaire ?
    merci

  2. #2
    Membre émérite
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    757
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 757
    Par défaut
    Tu peux utiliser ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    android.os.Process.killProcess(android.os.Process.myPid());
    Mais ce n'est pas dans la philosophie d'Android de "tuer" les applications. Le système gère cela très bien de base

  3. #3
    Expert confirmé

    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Février 2007
    Messages
    4 253
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2007
    Messages : 4 253
    Billets dans le blog
    3
    Par défaut
    Il y a deux choses: la "liste des process" et la "liste de tâches" (et aussi la "liste des tâches recentes")

    Si l'application reste dans la liste des tâches, c'est qu'il y a un truc qui n'a pas été fermé... (Activity, Service, Thread,...).

    Tuer la tâche à la main "System.exit(0)" revient à dire: Ok, je sais que j'ai encore des trucs, mais là, je veux vraiment que tu quitte l'application. Bref "J'ai la flemme de gérer ma stack d'activité".
    Tuer le process à la main par "killProcess" veut dire "j'ai encore plein de trucs alloués, mais j'ai pas envie de tout libérer proprement, vas-y tue moi le process".

  4. #4
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Février 2011
    Messages
    59
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 59
    Par défaut no history et back button
    C'est peut-être un peu bricolage mais je trouve que la balise android:noHistory="true" dans le Manifest pour les activités concernées est facile à mettre en œuvre. Par contre il te faudra overrider le back button si tu veux revenir sur certaines activités (public void onBackPressed ())...

  5. #5
    Membre très actif
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    427
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 427
    Par défaut
    je ferme mon appli avec :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Activity.finish();
    System.exit(0);
    j'ai un comportement différent si je relance mon appli via le bouton "recent" ou via l'icone.

    via le bouton "recent", elle garde certaines infos en mémoire de l'ouverture précédente ???

  6. #6
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Février 2011
    Messages
    59
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 59
    Par défaut quelles infos
    Pourrais-tu être plus précis sur le type d'infos. Proviennent-elles d'une ou de plusieurs activités? Comme la ram est plus grande sur les phone ou tablettes d'aujourd'hui android garde en cache des infos sur les activités récentes, cache qui est libéré en fonction des besoins.
    Mais comme dit nicroman : "J'ai la flemme de gérer ma stack d'activité"
    Le stack d'activity est une logique android qui conditionne la navigation et dont on doit tenir compte quand on met en place la logique de l'appli.
    http://javamind-fr.blogspot.fr/2012/...ivites-5x.html

  7. #7
    Membre très actif
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    427
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 427
    Par défaut
    je m'explique
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    <application>
                     <activity>
                         <intent-filter>
                               <action android:name="android.intent.action.MAIN"/>
                               <category android:name="android.intent.category.LAUNCHER"/>
                         </intent-filter>
                         <intent-filter>
                               <action android:name="android.intent.action.VIEW"/>
                               <category android:name="android.intent.category.BROWSABLE"/>
                               <category android:name="android.intent.category.DEFAULT"/>
                               <data android:scheme="my_scheme"/>
                         </intent-filter>
                     </activity>
                  </application>
    quand je ferme mon application avec ma custom URL my_scheme://arg1=val1 et que je la relance avec le bouton "recent", il se comporte comme si je l'avais lancer avec ma custom URL je récupère ma variable arg1

  8. #8
    Membre très actif
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    427
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 427
    Par défaut
    en rajoutant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <activity android:launchMode="singleTop">
    ça a l'air de fonctionner

  9. #9
    Expert confirmé

    Avatar de Feanorin
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    4 589
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 4 589
    Par défaut
    Bonjour,

    Si vous avez la solution à votre problème n'oublier pas de taggé votre sujet en Résolu grâce au bouton en bas de la page .


    Après juste un rappel
    <activity android:launchMode="singleTop">

    Cela permet de gérer les MultiInstance
    "standard" : Comportement par défaut , MultiInstance accpeté
    "singletop" : MultiInstance accepté sinon rappelle l'instance créee
    "singleTask" : Pas de MultiInstance, garde les appels de la stack.
    "singleInstance" : Pas de MultiInstance, la seule menbre de sa tâche.

    Il est conseillé d'utiliser singleTop, mais après a toi de voir en fonction de tes besoins .

    http://developer.android.com/guide/t...ent.html#lmode


    Après il existe d'autre manière de procéder avec les intent flags
    http://developer.android.com/guide/c...ack-stack.html

    Par exemple :
    Citation Envoyé par FLAG_ACTIVITY_CLEAR_TOP If the activity being started is already running in the current task, then instead of launching a new instance of that activity, all of the other activities on top of it are destroyed and this intent is delivered to the resumed instance of the activity (now on top), through onNewIntent()). There is no value for the launchMode attribute that produces this behavior. FLAG_ACTIVITY_CLEAR_TOP is most often used in conjunction with FLAG_ACTIVITY_NEW_TASK. When used together, these flags are a way of locating an existing activity in another task and putting it in a position where it can respond to the intent. Note: If the launch mode of the designated activity is "standard", it too is removed from the stack and a new instance is launched in its place to handle the incoming intent. That's because a new instance is always created for a new intent when the launch mode is "standard".
    FLAG_ACTIVITY_CLEAR_TOP If the activity being started is already running in the current task, then instead of launching a new instance of that activity, all of the other activities on top of it are destroyed and this intent is delivered to the resumed instance of the activity (now on top), through onNewIntent()). There is no value for the launchMode attribute that produces this behavior. FLAG_ACTIVITY_CLEAR_TOP is most often used in conjunction with FLAG_ACTIVITY_NEW_TASK. When used together, these flags are a way of locating an existing activity in another task and putting it in a position where it can respond to the intent. Note: If the launch mode of the designated activity is "standard", it too is removed from the stack and a new instance is launched in its place to handle the incoming intent. That's because a new instance is always created for a new intent when the launch mode is "standard".

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

Discussions similaires

  1. [Débutant] supprimer une ligne de ma base dans une application web MVC 2
    Par hamzovic dans le forum ASP.NET MVC
    Réponses: 1
    Dernier message: 15/04/2012, 05h16
  2. Réponses: 3
    Dernier message: 07/04/2012, 14h09
  3. Supprimer TOUTES les barres d'outils d'une application
    Par djefff75 dans le forum Access
    Réponses: 5
    Dernier message: 26/02/2006, 15h03
  4. [application tache de fond] lancer une application
    Par jean-jacques varvenne dans le forum Général Python
    Réponses: 5
    Dernier message: 25/03/2005, 12h13
  5. comment cacher une application de la liste des tâches ?
    Par Laurent Dardenne dans le forum Windows
    Réponses: 2
    Dernier message: 22/12/2004, 18h12

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