2015 IEEE/ACM 37th IEEE International Conference on Software Engineering · 2015 · 92 citations · 31 references
ComputingComputer ScienceComputer SystemsMobile ComputingMobile SystemsOperating SystemsApplication Programming InterfacesContext-aware ComputingControl-flow AnalysisData-flow AnalysisMobile Application DevelopmentStatic Code AnalysisAndroid Application AnalysisContext-sensitive AnalysisInterprocedural Control-flow AnalysisProgram RepresentationReachabilityReachability AnalysisStatic Control-flow AnalysisStatic Models
Android software presents many challenges for static program analysis. In this work we focus on the fundamental problem of static control-flow analysis. Traditional analyses cannot be directly applied to Android because the applications are framework-based and event-driven. We consider user-event-driven components and the related sequences of callbacks from the Android framework to the application code, both for lifecycle callbacks and for event handler callbacks. We propose a program representation that captures such callback sequences. This representation is built using context-sensitive static analysis of callback methods. The analysis performs graph reachability by traversing context-compatible interprocedural control-flow paths and identifying statements that may trigger callbacks, as well as paths that avoid such statements. We also develop a client analysis that builds a static model of the application's GUI. Experimental evaluation shows that this context-sensitive approach leads to substantial precision improvements, while having practical cost.
31
Precise interprocedural dataflow analysis via graph reachability
Thomas Reps, Susan Horwitz, Mooly Sagiv · 1995 · 1.2K citations
Analyzing inter-application communication in Android
Erika Chin, Adrienne Porter Felt, Kate Greenwood et al. · 2011 · 850 citations
Long Lu, Zhichun Li, Zhenyu Wu et al. · 2012 · 597 citations
Using GUI ripping for automated testing of Android applications
Domenico Amalfitano, Anna Rita Fasolino, Porfirio Tramontana et al. · 2012 · 515 citations