2013 · 94 citations · 12 references
ComputingComputer EngineeringComputer ScienceMobile ComputingMobile SystemsSoftware EngineeringApplication Programming InterfacesBehavioral AnalysisLeak DetectionMobile Application DevelopmentMobile Application VulnerabilitiesMobile Device ArchitectureAndroid Application AnalysisAndroid Application VulnerabilitiesCrash AnalysisEvent-driven ProgrammingPerformance DegradationPerformance Degradation DetectionRelease OperationsResource Leak Detection
Android phones come with a host of hardware components embedded in them, such as Camera, Media Player and Sensor. Most of these components are exclusive resources or resources consuming more memory/energy than general. And they should be explicitly released by developers. Missing release operations of these resources might cause serious problems such as performance degradation or system crash. These kinds of defects are called resource leaks. This paper focuses on resource leak problems in Android apps, and presents our lightweight static analysis tool called Relda, which can automatically analyze an application's resource operations and locate the resource leaks. We propose an automatic method for detecting resource leaks based on a modified Function Call Graph, which handles the features of event-driven mobile programming by analyzing the callbacks defined in Android framework. Our experimental data shows that Relda is effective in detecting resource leaks in real Android apps.
12
Where is the energy spent inside my app?
Abhinav Pathak, Y. Charlie Hu, Ming Zhang · 2012 · 653 citations
What is keeping my phone awake?
Abhinav Pathak, Abhilash Jindal, Yu Hu et al. · 2012 · 255 citations
Maria Jump, Kathryn S. McKinley · ACM SIGPLAN Notices · 2007 · 114 citations