Uno de los más horribles errores de seguridad en Android es la pérdida de memoria. Son malintencionados porque una pieza de código puede bloquearse las aplicaciones o puede crear problemas. Fugas de memoria pueden ocurrir debido a la creación de almacenamiento en montón y no eliminarlo. Es un asunto serio para aplicaciones y es causada por un puntero que no haz devuelto en el bucle.
Errores de memoria pueden dividirse en dos tipos, de memoria y fugas de memoria. Fuera de la memoria intenta asignar más memoria que tiene el montón de la aplicación. La fuga es difícil de encontrar. Puede identificar la fuga en la aplicación al recibir el informe del accidente. Además, los bloqueos de la aplicación pueden ocurrir debido a varios problemas. Por lo tanto, encontrar la fuga es la parte más difícil en el desarrollo. La fuga se produce debido a sosteniendo un objeto durante un largo periodo después de que su propósito ha sido terminado. Generalmente el recolector de basura recoge todos los objetos no utilizados o muertos, que no tiene ningún enlace a ellos. Si los programas tienen los objetos, el recolector de elementos no podrá limpiarlo.
Muchas herramientas están disponibles para las pruebas de las fugas, eclipse memory analyzer, Mat plugin, herramienta traceview del SDK de android y Valgrind. Android SDK ofrece dos maneras importantes para bosquejar el uso de la memoria del rastreador aprox. asignación y volcados de pila son dos maneras principales. Rastreador de asignación es útil para los desarrolladores averiguar el uso de la memoria de la aplicación en un período determinado. Sin embargo, no proporciona el estado global de la pila de la aplicación.
Volcados de pila son la impresionante herramienta para análisis de caché y es como la imagen del montón de app. Cada desarrollador enfrenta un desafío en analizar y entender el uso de RAM en la aplicación y optimizarlo. Después de soltar los objetos no utilizados de la aplicación, la aplicación puede retener más espacios de almacenamiento de información que requiere.
Eclipse Memory analyzer (MAT) es la mejor herramienta para analizar el uso de almacenamiento de información de aplicaciones. Esta herramienta es útil para el seguimiento de fugas de memoria y si ofrece una oportunidad para analizar la aplicación a intervalos regulares. MAT ofrece una instantánea de la memoria durante un determinado período. Recuerda, MAT no da la razón para la creación del objeto o no puede mostrar los objetos que ha recogido el recolector de basura. Sin embargo, puede averiguar la fuga inmediatamente y encontrar la manera de detenerlo.
DDMS herramienta se utiliza para detectar la asignación de almacenamiento de información y esto estará disponible en el directorio del SDK de Android. Esta herramienta también mostrará la salida en la aplicación para Android. Además, muestra la información sobre los objetos, que no son basura recogida y el almacenamiento de datos ocupada por los objetos. Si usted pone un enlace de referencia en el contexto, conducirá a la pérdida de gran cantidad de almacenamiento y se llama como pérdida de memoria relacionada de contexto. Esto puede evitarse de dos maneras. La primera solución para esto es evitar soltar el contexto fuera del límite de la aplicación. El uso del contexto de la aplicación es otra solución, por esto, el contexto retendrá mientras viva la aplicación.