Reciclaje de bitmaps

Estoy trabajando en un proyecto que implica operaciones en mapas de bits. Porque no quiero tener OutofMemoryError estoy tratando de reciclar cada uno de los mapas de bits no utilizados. Desafortunadamente, he reciclado demasiado y he intentado usar un error de mapa de bits reciclado.

Estoy usando:

Bitmap.createBitmap(bmp, x,y,w,h, matrix, false); Bitmap.createScaledBitmap(bmp, w, h,true); 

¿Debo reciclar bmp después de este método o es reciclado por ellos? Me gusta:

 Bitmap newBitmap = Bitmap.createBitmap(bmp, x,y,w,h, matrix, false); bmp.recycle(); 

¿Puedo después de que imageView.setImageBitmap () recicle uno que anteriormente se usó aquí? P.ej

 myImageView.setImageBitmap(myBitmap); myImageView.setImageBitmap(newBitmap); myBitmap.recycle(); 

Gracias por ayudar.

Sólo debe reciclar un mapa de bits cuando ya no lo necesite. Sin embargo, necesitas un mapa de bits cuando quieras mostrarlo . Si no desea mostrarlo, puede reciclar un mapa de bits.

Usted sólo recicla mapas de bits una vez que haya terminado con ellos y está seguro de que nunca tendrá que utilizar los datos en ellos de nuevo. No es un método mágico que puedes usar en cualquier lugar que te guste para darte más memoria al tratar con mapas de bits.

Cuando quiero escalar el mapa de bits entonces uso la misma referencia:

 Bitmap bmp = Bitmap.createBitmap(bmp, x,y,w,h, matrix, false); 

Cuando el primer objeto de mapa de bits pierde su referencia "bmp" se quita por GC (recolector de basura) por lo que no es necesario recyle nada. En cuanto a la vista de la imagen que sólo hace referencia a su fuente a "newBitmap" no crea su propia.

  • Cómo corregir este error: java.lang.OutOfMemoryError
  • ¿Cómo elegir el tamaño de imagen óptimo para no exceder el presupuesto de VM?
  • ¿El aumento de tamaño de jittable se correlaciona con la pérdida de memoria en android?
  • Android procesamiento de imágenes de alta resolución
  • Android: Fuera de error de memoria
  • Evitar excepciones de memoria en la aplicación de filtros a imágenes (Android)
  • Android Context Memory Leak ListView debido a AudioManager
  • ¿Cuál es la cantidad máxima de RAM que una aplicación puede usar?
  • Prueba de memoria de Android
  • Cómo implementar el almacenamiento en caché ListView en Android
  • LeakCanary detecta pérdida de memoria de Android WebView
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.