Aumentar la memoria asignada a la aplicación

Intento mostrar las imágenes tomadas por la cámara y mostrarlas en la aplicación. Cuando tomo imágenes de baja resolución (digamos 100kB de tamaño), no tengo problemas con el cambio a la visualización de mapas de bits, contra cuando los tomo en alta resolución (1.5MB), la aplicación se bloquea con la excepción

Error java.lang.OutOfMemoryError. 

Que pasa a ser en mi teléfono inteligente (Samsung Galaxy SII, SIII Galaxy) está en todos los estantes. Por ahora resolví manualmente bajando la calidad y el tamaño de las fotos pero, dada la evolución de las cámaras con resolución creciente, es probable que este problema surja con más frecuencia. ¿No hay una solución permanente para aumentar la memoria asignada a mi aplicación para Android sin intervención manual en el dispositivo y en el código?

Las imágenes se almacenan en formato de mapa de bits

  //image creation Uri domuri1 ContentValues cv = new ContentValues(); cv.remove("101"); domuri1 = getContentResolver().insert(Media.EXTERNAL_CONTENT _URI, cv); File domthumb1 = new File(domuri1.toString(), fileName1); //increment photo apparate Intent intent = new Intent("android.media.action.IMAGE_CAPTURE"); intent.putExtra(MediaStore.EXTRA_OUTPUT, domuri1); startActivityForResult(intent, 100); //images save ContentResolver cr = getContentResolver(); bitmap1 = MediaStore.Images.Media.getBitmap(cr, domuri1 ); imageView.setImageBitmap(bitmap1); 

El valor de memoria predeterminado para una aplicación normal es de 16 MB y puedes usar android:largeHeap="true" (que puede aumentar la memoria hasta 64 MB) en tu archivo más manifiesto dentro de la etiqueta applicattion . Puede obtener los valores de memoria asignados por ActivityManager.getMemoryClass () y ActivityManager.getLargeMemoryClass () .

Incluso si usted pide para largeHeap el androide sólo asignará más memoria si en todo su aplicación lo necesita.

  • Mostrar imagen grande de la tarjeta SD en Android
  • Android: libera recursos de memoria de mapa de bits de forma programática
  • Uso de la memoria de imagen de fondo Android
  • Mensaje de registro en Android: / dev / pmem: Unmapping buffer base
  • LeakCanary detecta pérdida de memoria de Android WebView
  • Servicio de asignar un montón de memoria?
  • Necesita ayuda para comprender la pérdida de memoria en mi aplicación de Android
  • Cómo utilizar Leak Canary
  • Cómo controlar el uso de memoria cuando se llama a varios WebView en Android?
  • ¿Cómo encontrar la raíz de fugas de memoria?
  • Fugas de contexto de Android en AsyncTask
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.