Large-Scale Analysis of Framework-Specific Exceptions in Android Apps

by   Lingling Fan, et al.

Mobile apps have become ubiquitous. For app developers, it is a key priority to ensure their apps' correctness and reliability. However, many apps still su er from occasional to frequent crashes, weakening their competitive edge. Large-scale, deep analyses of the characteristics of real-world app crashes can provide useful insights to guide developers, or help improve testing and analysis tools. However, such studies do not exist -- this paper fills this gap. Over a four-month long effort, we have collected 16,245 unique exception traces from 2,486 open-source Android apps, and observed that framework-specific exceptions account for the majority of these crashes. We then extensively investigated the 8,243 framework- specific exceptions (which took six person-months): (1) identifying their characteristics (e.g., manifestation locations, common fault categories), (2) evaluating their manifestation via state-of-the-art bug detection techniques, and (3) reviewing their fixes. Besides the insights they provide, these findings motivate and enable follow-up research on mobile apps, such as bug detection, fault localization and patch generation. In addition, to demonstrate the utility of our findings, we have optimized Stoat, a dynamic testing tool, and implemented ExLocator, an exception localization tool, for Android apps. Stoat is able to quickly uncover three previously-unknown, confirmed/fixed crashes in Gmail and Google+; ExLocator is capable of precisely locating the root causes of identified exceptions in real-world apps. Our substantial dataset is made publicly available to share with and bene t the community.


page 1

page 2

page 3

page 4


DroidLeaks: Benchmarking Resource Leak Bugs for Android Applications

Resource leak bugs in Android apps are pervasive and can cause serious p...

Efficiently Manifesting Asynchronous Programming Errors in Android Apps

Android, the #1 mobile app framework, enforces the single-GUI-thread mod...

Detecting and Diagnosing Energy Issues for Mobile Applications

Energy efficiency is an important criterion to judge the quality of mobi...

Towards Practical Evaluation of Android ICC Resolution Techniques

Inter-component communication (ICC) is a key mechanism in mobile apps, w...

What do all these Buttons do? Statically Mining Android User Interfaces at Scale

We introduce FRONTMATTER: a tool to automatically mine both user interfa...

BenchPress: Analyzing Android App Vulnerability Benchmark Suites

In recent years, various efforts have designed and developed benchmark s...

Empirically Assessing Opportunities for Prefetching and Caching in Mobile Apps

Network latency in mobile software has a large impact on user experience...

Please sign up or login with your details

Forgot password? Click here to reset