Bonjour a tous,
Dans une activité - enfin un fragment en réalité - j'affiche une liste Bitmap dans une listview. Jusqu'ici pas de problème, tout le monde suit.
Cette liste est crée dans le main. Thread de parsing xml et tout le bazar... les Url sont bien récupérées, je convertis donc chaques urls en image bitmap dans ma liste Bitmap et hop, ca fonctionne bien, ca s'affiche et voila c'est tout beau.
C'etait sans compter le fait que je testais l'application avec un galaxy S3, forcement en testant sur un vieux htc wildfire, j'ai remarqué que les images ne s'affichent plus, a part la premiere, et une ou deux images au milieu. Je debug a coup de Log et hop :
me retourne nul. -> uniquement avec des telephones pas tres puissant.
Code : Sélectionner tout - Visualiser dans une fenêtre à part bitmap = BitmapFactory.decodeStream(is);
Voila le code qui s'occupe de la conversion url a bitmap : (Il pourra donc servir aux autres qui recherche justement une méthode dans ce style)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 public Bitmap downloadImageJacket(String fileURL) { Bitmap bitmap = null; URL myFileURL = null; BitmapFactory.Options options = new BitmapFactory.Options(); options.inJustDecodeBounds = true; try { myFileURL = new URL(fileURL); HttpURLConnection conn = (HttpURLConnection)myFileURL.openConnection(); conn.setDoInput(true); conn.connect(); InputStream is = conn.getInputStream(); bitmap = BitmapFactory.decodeStream(is); // bitmap = null au bout de la 2eme image de la liste, dans le cas de telephone non puissant ... conn.disconnect(); } catch (IOException e) { } return bitmap; }
Voila, si vous avez tout saisi, j'ai besoin de votre aide.
Merci !
Partager