Join FlipAndroid.COM Telegram Group: https://t.me/joinchat/F_aqThGkhwcLzmI49vKAiw


Cómo aumentar el tamaño máximo heap del dispositivo virtual de Android?

Me gustaría aumentar el tamaño del montón del mapa del dispositivo virtual de Android con Eclipse. Intenté fijar el tamaño máximo de la pila de la aplicación de VM a 128 en Eclipse AVD Manager, pero no funciona, la línea Runtime.getRuntime().maxMemory()/(1024*1024); Siempre devuelve 48, no importa el tamaño del montón establecido. El tamaño de la RAM del dispositivo se establece en 512. El destino seleccionado es Android 4.1.2 (Nivel API 16). Por otra parte, he establecido android:largeHeap="true" en el archivo de manifiesto.

¿Hay un límite para el tamaño de montón máximo (es 128MiB a mucho?), O hay otro archivo para editar o parámetro para establecer?

  • ¿Cómo comprobar un dispositivo Android es HDPI pantalla o pantalla MDPI?
  • Ancho de notificación de Android
  • Obtener ActionBarSherlock actionBarSize en Android 2.x
  • Android: cómo aumentar el tamaño de montón en tiempo de ejecución?
  • Obtener el tamaño de Bitmap Android
  • Cómo encontrar la "última página" en un paginador de vista. O el número total de puntos de vista. Desarrollo de Android
  • Acción Tamaño del logotipo?
  • ¿Cómo obtener el tamaño del widget de la aplicación?
  • 4 Solutions collect form web for “Cómo aumentar el tamaño máximo heap del dispositivo virtual de Android?”

    Agrega montón grande en archivo de manifiesto

     <application android:icon="@drawable/example" android:label="@string/app_name" android:largeHeap="true"> ...... ...... </application> 

    Para ello, en Eclipse, vaya a "Configuraciones de depuración". Puede encontrarlo en el menú desplegable debajo del icono "depurar". Seleccione "destino" y seleccione un destino de emulador preferido para iniciar. A continuación, en "opciones adicionales de la línea de comandos del emulador", agregue esto:

    -partition-size 128

    A continuación, CIERRE el emulador (y elimine todos los dispositivos) y haga clic en el icono de depuración, que iniciará el emulador preferido que seleccionó. Esto es importante: Eclipse necesita lanzar el depurador, no AVD.

    Tenga en cuenta que el tamaño (128) está en megabytes.

    Echa un vistazo también aquí: http://viralpatel.net/blogs/jvm-java-increase-heap-size-setting-heap-size-jvm-heap/

    O bien: aumente el RAM de AVD y el tamaño de heap de aplicación VM máximo en las opciones de VM: Vaya a Ventana -> Administrador de AVD -> Dispositivos virtuales -> Editar.

    Utilice el código siguiente. Creo que sería de ayuda:

     VMRuntime.getRuntime().setMinimumHeapSize(4 * 1024 * 1024); 

    No puede aumentar el tamaño de montón dinámicamente.

    Puede solicitar utilizar más con android: largeHeap = "true" en el manifiesto, pero es posible que no obtenga más tamaño de montón de lo normal, ya que es sólo una solicitud.

    También, puede utilizar la memoria nativa, por lo que realmente eludir la limitación de tamaño de montón.

    Aquí hay algunos mensajes que he hecho sobre él:

    • Cómo almacenar en caché los mapas de bits en la memoria nativa

    • Operaciones de mapa de bits JNI, para ayudar a evitar MOO cuando se utilizan imágenes grandes

    Y aquí hay una biblioteca que he hecho para ella:

    FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.