OutOfMemoryError para bitmap (Vista de list)

He leído mucho acerca de la falta de memory en Android debido a Bitmap y tomé varios pasos para prevenirlo, pero sigue tocando interminablemente. Aquí está mi código:

CÓDIGO:

in = httpConn.getInputStream(); BitmapFactory.Options options = new BitmapFactory.Options(); options.inPurgeable=true; options.inJustDecodeBounds = true; options.inSampleSize = 1; options.inJustDecodeBounds = false; image = BitmapFactory.decodeStream(in, null, options); 

Puedo cargar alnetworkingedor de 15 imágenes que tienen una dimensión de 640 * 640. Después de eso, me arroja un OutOfMemoryError en el log cat. También implementé una biblioteca externa (desde GitHub ) para la funcionalidad "PullToRefresh" . Entonces, obviamente, eso implica una vista de list personalizada. ¿Hay alguna forma de evitar este problema de memory?

NOTA: Ya he leído esto . También implementé esos methods, pero aún no se sostiene.

¿Puedo usar Fragmentos con Vista de Lista para evitar este problema de memory? O, ¿me estoy perdiendo algo? Cualquier ayuda sería muy apreciada. Gracias por adelantado.

Simplemente cambie las options.inSampleSize = 1; a options.inSampleSize = 4;

Y también

 bitmap.reCycle(); 

Bueno, ahora el time de carga de imágenes desde Internet tiene muchas soluciones. También puede utilizar esta biblioteca "Android-Query" https://code.google.com/p/android-query/wiki/ImageLoading . Le dará toda la actividad requerida. Asegúrese de lo que quiere hacer? y lea la página wiki de la biblioteca. y resuelve la restricción de carga de la image.

Este es mi código:

 @Override public View getView(int position, View convertView, ViewGroup parent) { View v = convertView; if (v == null) { LayoutInflater vi = (LayoutInflater)getSystemService(Context.LAYOUT_INFLATER_SERVICE); v = vi.inflate(R.layout.row, null); } ImageView imageview = (ImageView) v.findViewById(R.id.icon); AQuery aq = new AQuery(convertView); String imageUrl = "http://www.vikispot.com/z/images/vikispot/android-w.png"; aq.id(imageview).progress(this).image(imageUrl, true, true, 0, 0, new BitmapAjaxCallback(){ @Override public void callback(String url, ImageView iv, Bitmap bm, AjaxStatus status){ iv.setImageBitmap(bm); } }); } return v; }