Developpez.com - Rubrique Android

Le Club des Développeurs et IT Pro

Tutoriel sur les fuites de mémoire sous Android,

Par Feanorin

Le 2015-06-21 13:35:01, par Feanorin, Expert éminent
Bonjour,

Vous trouverez ici Tutoriel sur les fuites de mémoire sous Android.

Il est important au sein d'une application de toujours vérifier que nous n'avons pas de fuites mémoire générées. Pour cela nous avons quelques outils sous Android.
N'hésitez pas à réagir.

Bonne lecture.

Merci.
  Discussion forum
3 commentaires
  • Paul TOTH
    Expert éminent sénior
    bonjour,

    je trouve qu'il manque une chose dans ce tuto : des exemples concrets de fuite de mémoire qu'on rencontre souvent sur des projets qui n'y font pas gaffe, et la bonne façon de faire pour les éviter.

    le seul exemple donné montre qu'un static sur une image provoque une fuite, mais alors, ne faut-il pas utiliser de static (et dans ce cas peut-on éviter de la recharger à chaque fois ?) ou faut-il compléter le code pour éviter la fuite ?
  • Feanorin
    Expert éminent
    Tout dépends pour l'utilisation du static là le problème est dans l'exemple que je te donne en fait le problème provient réellement que en utilisant ta static du garde le callback de l'ancienne TextView. Mais si tu n'utilise pas de static mais une variable simple tu auras le même problème si tu change le drawable par une autre variable, ton ancienne variable elle aura toujours le callback tant qu'elle ne sera pas nettoyé.

    Je n'ai pas voulu montrer des exemples car entre Java et C++ je trouve que les exemples ne sont pas clairs sous JAVA pour le exemples simples car cela dépends souvent des bibliothèques que l'on utilise, qui elles peuvent avoir des fuites mémoires. ( Le GC est quand même effectif). A part pour les Threads où là c'est vrai que cela soit Java ou C++ c'est le même problème.
    Comparer à C++ où là créer des fuites mémoires relève du jeu d'enfant .

    Si tu as des exemples en tête simple je suis preneur j'ai préféré me concentré sur comment trouver une fuites mémoires au lieu d'en montrer mais cela peut être enrichissant aussi.
  • rtt974
    Candidat au Club
    Bonjour a tous,

    le tuto est super bien expliqué est clair, mais je pense qu il faut avoir une bonne connaissance du sujet pour se lancer.

    je possede une polaroid midc410, suite a un problème technique la tablette a rebooté

    et toutes les applications ont disparu.

    Mais le vrais problème c est que mon stockage interne est a 0.00 en espace total et en disponible et aussi a chaque redemarrage de la tablette

    elle ne garde pas en mémoire les applications installé, elle revient au valeur d usine a chaque fois.

    J ai plusieurs fois fais un recovery mais sans succés j ai toujours ce probleme de stockage interne.

    Est ce que mon probleme ne viendrais pas d une fuite de mémoire?

    Cordialement.