Memory leak detection in android applications based on code patterns

G. Santhanakrishnan, C. Cargile, A. Olmsted. i-Society 2016

[IEEE]

An application running on an android mobile platform may sometimes crash in the midst of its lifecycle without the user triggering an explicit close action. This is due to memory leaks in the system which are introduced due to insufficient memory handling mechanisms. Memory leaks are not easily identified by testing the application. There are a few tools to identify memory usage over time for an application running on an android device. Most of them track of the heap (Memory allocated for an application) or the references to objects in the activity lifecycle. We propose to identify memory leak vulnerabilities in the application during development and testing by identifying certain usages of code or code patterns in the application. This allows the application developers to correct the error easily because the part of the code which is responsible for the memory leak will be explicitly indicated.