Studying Eventual Connectivity Issues in Android Apps
arXiv:2110.08908 · doi:10.1007/s10664-021-10020-6
Abstract
Mobile apps have become indispensable for daily life, not only for individuals but also for companies/organizations that offer their services digitally. Inherited by the mobility of devices, there are no limitations regarding the locations or conditions in which apps are being used. For example, apps can be used where no internet connection is available. Therefore, offline-first is a highly desired quality of mobile apps. Accordingly, inappropriate handling of connectivity issues and miss-implementation of good practices lead to bugs and crashes occurrences that reduce the confidence of users on the apps' quality. In this paper, we present the first study on Eventual Connectivity (ECn) issues exhibited by Android apps, by manually inspecting 971 scenarios related to 50 open-source apps. We found 304 instances of ECn issues (6 issues per app, on average) that we organized in a taxonomy of 10 categories. We found that the majority of ECn issues are related to the use of messages not providing correct information to the user about the connectivity status and to the improper use of external libraries/apps to which the check of the connectivity status is delegated. Based on our findings, we distill a list of lessons learned for both practitioners and researchers, indicating directions for future work.
arXiv comment41 pages, accepted to EMSE journal
References in corpus (6)
- ReCon: Revealing and Controlling PII Leaks in Mobile Network Traffic
- Automatically Discovering, Reporting and Reproducing Android Application Crashes
- CrashScope: A Practical Tool for Automated Testing of Android Applications
- Classifying and Qualifying GUI Defects
- Characterizing the transition to Kotlin of Android apps: a study on F-Droid, Play Store and GitHub
- Web APIs in Android through the Lens of Security