论文标题

检测Android应用中的连接问题

Detecting Connectivity Issues in Android Apps

论文作者

Mazuera-Rozo, Alejandro, Escobar-Velásquez, Camilo, Espitia-Acero, Juan, Linares-Vásquez, Mario, Bavota, Gabriele

论文摘要

Android是世界上最受欢迎的移动操作系统,在超过70%的移动设备上运行。这意味着Android应用程序的巨大且竞争激烈的市场。在这样的市场中取得成功远非微不足道,而且还需要,除了解决众多受众的问题或需要的问题之外,还需要开发高质量的应用程序。正如文献中最近显示的那样,连通性问题(例如,零/不可靠的互联网连接的不当行为)可能会导致错误和/或崩溃,从而对应用程序的用户体验产生负面影响。尽管这些问题已经在文献中进行了研究,但没有能够自动检测并将其报告给开发人员的技术。我们提出柯南,这是一种能够检测静态的16种影响Android应用程序的连接问题。我们评估了柯南在一组44个开源应用程序中精确识别这些问题的能力,观察到平均精度为80%。然后,我们通过(i)对使用商业Android应用程序工作的六位从业者进行访谈,研究了这些问题与开发人员的相关性,以及(ii)为27个开源应用程序提交84个问题报告。我们的结果表明,在特定情况下,从业人员将一些确定的连接问题视为相关,其中连通性被认为是一流的功能。

Android is the most popular mobile operating system in the world, running on more than 70% of mobile devices. This implies a gigantic and very competitive market for Android apps. Being successful in such a market is far from trivial and requires, besides the tackling of a problem or need felt by a vast audience, the development of high-quality apps. As recently showed in the literature, connectivity issues (e.g., mishandling of zero/unreliable Internet connection) can result in bugs and/or crashes, negatively affecting the app's user experience. While these issues have been studied in the literature, there are no techniques able to automatically detect and report them to developers. We present CONAN, a tool able to detect statically 16 types of connectivity issues affecting Android apps. We assessed the ability of CONAN to precisely identify these issues in a set of 44 open source apps, observing an average precision of 80%. Then, we studied the relevance of these issues for developers by (i) conducting interviews with six practitioners working with commercial Android apps, and (ii) submitting 84 issue reports for 27 open source apps. Our results show that several of the identified connectivity issues are considered as relevant by practitioners in specific contexts, in which connectivity is considered a first-class feature.

扫码加入交流群

加入微信交流群

微信交流群二维码

扫码加入学术交流群,获取更多资源