Detecting Resource Utilization Bugs Induced by Variant Lifecycles in Android
Fri 22 Jul 2022 17:00 - 17:20 at ISSTA 2 - Session 3-12: Android C
The lifecycle models of Android components such as Activities and Fragments predefine the possible orders in which the components’ callback methods will be invoked during app executions. Correspondingly, resource utilization operations performed by Android components must comply with all possible lifecycles to ensure safe utilization of the resources in all circumstances, which, however, can be challenging to achieve. In response to the challenge, various techniques have been developed to detect resource utilization bugs that manifest themselves when components go through \emph{common} lifecycles, but the fact that Android components may execute their callback methods in uncommon orders, leading to variant component lifecycles, has largely been overlooked by the existing techniques.
In this paper, we first identify three variant lifecycles for Android Activities and Fragments and then develop a technique called VALA to automatically detect bugs in Android apps that are induced by the variant lifecycles and may cause resource utilization errors like resource leaks and data losses. In an experimental evaluation conducted on 35 Android apps, a supporting tool for the VALA technique automatically detected 8 resource utilization bugs. All the 8 bugs were manually confirmed to be real defects and 7 of them were reported for the first time.
Fri 22 JulDisplayed time zone: Seoul change
03:00 - 03:40 | Session 1-14: Android ATechnical Papers at ISSTA 2 Chair(s): Christoph Csallner University of Texas at Arlington | ||
03:00 20mTalk | Detecting Resource Utilization Bugs Induced by Variant Lifecycles in Android Technical Papers Yifei Lu Nanjing University, Minxue Pan Nanjing University, Yu Pei Hong Kong Polytechnic University, Xuandong Li Nanjing University DOI | ||
03:20 20mTalk | NCScope: Hardware-Assisted Analyzer for Native Code in Android AppsACM SIGSOFT Distinguished Paper Technical Papers Hao Zhou The Hong Kong Polytechnic University, Shuohan Wu The Hong Kong Polytechnic University, Xiapu Luo Hong Kong Polytechnic University, Ting Wang Pennsylvania State University, Yajin Zhou Zhejiang University, Chao Zhang Tsinghua University, Haipeng Cai Washington State University, USA DOI |
16:40 - 17:40 | |||
16:40 20mTalk | Automatically Detecting API-induced Compatibility Issues in Android Apps: A Comparative Analysis (Replicability Study) Technical Papers Pei Liu Monash University, Yanjie Zhao Monash University, Haipeng Cai Washington State University, USA, Mattia Fazzini University of Minnesota, John Grundy Monash University, Li Li Monash University DOI | ||
17:00 20mTalk | Detecting Resource Utilization Bugs Induced by Variant Lifecycles in Android Technical Papers Yifei Lu Nanjing University, Minxue Pan Nanjing University, Yu Pei Hong Kong Polytechnic University, Xuandong Li Nanjing University DOI | ||
17:20 20mTalk | NCScope: Hardware-Assisted Analyzer for Native Code in Android AppsACM SIGSOFT Distinguished Paper Technical Papers Hao Zhou The Hong Kong Polytechnic University, Shuohan Wu The Hong Kong Polytechnic University, Xiapu Luo Hong Kong Polytechnic University, Ting Wang Pennsylvania State University, Yajin Zhou Zhejiang University, Chao Zhang Tsinghua University, Haipeng Cai Washington State University, USA DOI |