论文标题

定制的Android框架是否与Android保持同步?

Do Customized Android Frameworks Keep Pace with Android?

论文作者

Liu, Pei, Fazzini, Mattia, Grundy, John, Li, Li

论文摘要

为了满足不同的客户需求,设备供应商和操作系统提供商通常依靠Android OS的开源性质,并提供Android OS的自定义版本。当发布新版本的Android OS时,设备供应商和OS提供商需要将从Android OS的更改合并到其自定义中,以说明其错误修复,安全补丁和新功能。由于自定义OSS的开发人员可能已经更改了Android OS开发人员也修改的代码位置,因此合并任务可以通过冲突来表征,这可能是耗时的,并且可以解决错误的问题。 为了更深入了解Android生态系统的这一关键方面,我们提出了一项经验研究,该研究研究了Android OS的八个开源定制如何将Android OS的变化合并为他们的项目。该研究分析了来自自定义OSS合并的开发人员从Android OS合并的频率,开发人员经历文本合并冲突的频率以及这些冲突的特征。此外,为了分析冲突的影响,该研究还分析了冲突如何影响1,000个应用程序的随机选择样本。 After analyzing 1,148 merge operations, we identified that developers perform these operations for 9.7\% of the released versions of the Android OS, developers will encounter at least one conflict in 41.3\% of the merge operations, 58.1\% of the conflicts required developers to change the customized OSs, and 64.4\% of the apps considered use at least one method affected by a conflict.除了详细说明我们的结果外,本文还讨论了我们发现的含义,并为与Android及其自定义合作的研究人员和从业人员提供了见解。

To satisfy varying customer needs, device vendors and OS providers often rely on the open-source nature of the Android OS and offer customized versions of the Android OS. When a new version of the Android OS is released, device vendors and OS providers need to merge the changes from the Android OS into their customizations to account for its bug fixes, security patches, and new features. Because developers of customized OSs might have made changes to code locations that were also modified by the developers of the Android OS, the merge task can be characterized by conflicts, which can be time-consuming and error-prone to resolve. To provide more insight into this critical aspect of the Android ecosystem, we present an empirical study that investigates how eight open-source customizations of the Android OS merge the changes from the Android OS into their projects. The study analyzes how often the developers from the customized OSs merge changes from the Android OS, how often the developers experience textual merge conflicts, and the characteristics of these conflicts. Furthermore, to analyze the effect of the conflicts, the study also analyzes how the conflicts can affect a randomly selected sample of 1,000 apps. After analyzing 1,148 merge operations, we identified that developers perform these operations for 9.7\% of the released versions of the Android OS, developers will encounter at least one conflict in 41.3\% of the merge operations, 58.1\% of the conflicts required developers to change the customized OSs, and 64.4\% of the apps considered use at least one method affected by a conflict. In addition to detailing our results, the paper also discusses the implications of our findings and provides insights for researchers and practitioners working with Android and its customizations.

扫码加入交流群

加入微信交流群

微信交流群二维码

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