[Tips and Tricks] Windows Phone. Aumentar la cantidad de memoria a utilizar por nuestras Apps.

Uso de memoria en Windows Phone 8

Con la maduración del mercado con respecto a Windows Phone, contamos con una variedad de dispositivos con distintas características. Una de las características que de forma comun varía entre diferentes dispositivos es la memoria RAM. Contamos con dispositivos con 512MB, 1GB o 2GB de RAM. Para llegar a la mayor cantidad de usuarios posibles tenemos que adaptar nuestra aplicación para que funcione correctamente bajo cualquier circunstancia.

Límites de memoria

Los límites de uso de memoria son los siguientes:

Límites de memoria

Límites de memoria

El límite de memoria viene marcado por la memoria total del dispositivo. Contamos con tres categorías, teléfonos con memoria baja con 512MB como por ejemplo el Nokia Lumia 520, teléfonos con 1GB como por ejemplo el Nokia Lumia 925 y teléfonos con 2GB como el Nokia Lumia 1520.

En aplicaciones utilizando XAML los límites son 150MB en dispositivos de baja memoria, 300MB en dispositivos de 1GB y 2GB.

Sin embargo, si nuestra aplicación lo requiere podría llegar a aumentar el límite de consumo de memoria en 30MB en dispositivos de baja memoria, 80MB en dispositivos de 1GB y en 270MB en dispositivos de 2GB (por ahora el Nokia Lumia 1520, pensando en el uso de recursos de alta definición con pantallas de gran tamaño).

Aumentar la cantidad disponible

Por lo tanto, si nuestra aplicación requiere un mayor consumo de memoria podemos aumentar los límites. Bien, pero… ¿como?

Lo podemos hacer con facilidad modificando el archivo de manifiesto. Podemos definir una Capability que indique que nuestra aplicación requiere un mayor consumo de memoria.

Bastará con añadir:

<App>
     <FunctionalCapabilities>
          <FunctionalCapability Name="ID_FUNCCAP_EXTEND_MEM"/>
     </FunctionalCapabilities>
</App>

La entrada anterior permite establecer los límites en 180MB en dispositivos de baja memoria, 380MB en dispositivos de 1GB y 570MB en dispositivos de 2G.

Si por la naturaleza de nuestra aplicación es inviable su funcionamiento en dispositivos de baja memoria, podemos añadir otra Capability en el archivo de manifiesto para evitar que se pueda instalar en estos dispositivos (no aparecería en la Store la aplicación bajo un dispositivo de estas características). Debemos añadir:

<App>
     <Requirements>
          <Requirements Name="ID_REQ_MEMORY_300"/>
     </Requirements>
</App>

Más información

Deja un comentario