当前位置: X-MOL 学术IEEE Trans. Softw. Eng. › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
Understanding and Detecting Fragmentation-Induced Compatibility Issues for Android Apps
IEEE Transactions on Software Engineering ( IF 6.5 ) Pub Date : 2020-11-01 , DOI: 10.1109/tse.2018.2876439
Lili Wei , Yepang Liu , Shing-Chi Cheung , Huaxun Huang , Xuan Lu , Xuanzhe Liu

Android ecosystem is heavily fragmented. The numerous combinations of different device models and operating system versions make it impossible for Android app developers to exhaustively test their apps, and thus various compatibility issues arise. Unfortunately, little is known on the characteristics of such fragmentation-induced compatibility issues. No mature tools exist to help developers quickly diagnose and fix these issues. To bridge the gap, we conducted an empirical study on 220 real-world compatibility issues collected from five popular open-source Android apps. We further interviewed Android practitioners and conducted an online survey to gain insights from real practices. Via the studies, we characterized compatibility issues, investigated common practices to handle compatibility issues, and disclosed that these issues exhibit common patterns. With these findings, we propose a technique, FicFinder, to automatically detect compatibility issues in Android apps. FicFinder performs static code analysis based on a model that captures Android APIs as well as their associated context by which compatibility issues can be triggered. FicFinder reports actionable debugging information to developers when it detects potential issues. We evaluated FicFinder with 53 large-scale open-source Android apps. The results show that FicFinder can precisely detect compatibility issues in these apps and uncover previously-unknown issues.

中文翻译:

了解和检测由碎片引起的 Android 应用程序兼容性问题

Android 生态系统非常分散。不同设备型号和操作系统版本的众多组合使得Android应用程序开发人员无法详尽地测试他们的应用程序,从而产生各种兼容性问题。不幸的是,人们对这种由碎片引起的兼容性问题的特征知之甚少。没有成熟的工具可以帮助开发人员快速诊断和修复这些问题。为了弥补差距,我们对从五个流行的开源 Android 应用程序中收集的 220 个现实世界兼容性问题进行了实证研究。我们进一步采访了Android从业者并进行了在线调查,以从实际实践中获得见解。通过研究,我们描述了兼容性问题,调查了处理兼容性问题的常见做法,并透露这些问题表现出共同的模式。根据这些发现,我们提出了一种技术 FicFinder,可以自动检测 Android 应用程序中的兼容性问题。FicFinder 基于一个模型执行静态代码分析,该模型捕获 Android API 及其相关上下文,通过这些上下文可以触发兼容性问题。FicFinder 在检测到潜在问题时向开发人员报告可操作的调试信息。我们使用 53 个大型开源 Android 应用程序对 FicFinder 进行了评估。结果表明,FicFinder 可以精确检测这些应用程序中的兼容性问题,并发现以前未知的问题。FicFinder 基于一个模型执行静态代码分析,该模型捕获 Android API 及其相关上下文,通过这些上下文可以触发兼容性问题。FicFinder 在检测到潜在问题时向开发人员报告可操作的调试信息。我们使用 53 个大型开源 Android 应用程序对 FicFinder 进行了评估。结果表明,FicFinder 可以精确检测这些应用程序中的兼容性问题,并发现以前未知的问题。FicFinder 基于一个模型执行静态代码分析,该模型捕获 Android API 及其相关上下文,通过这些上下文可以触发兼容性问题。FicFinder 在检测到潜在问题时向开发人员报告可操作的调试信息。我们使用 53 个大型开源 Android 应用程序对 FicFinder 进行了评估。结果表明,FicFinder 可以精确检测这些应用程序中的兼容性问题,并发现以前未知的问题。
更新日期:2020-11-01
down
wechat
bug