Understanding the quality and evolution of Android app build systems

被引:2
|
作者
Liu, Pei [1 ]
Li, Li [1 ]
Liu, Kui [2 ]
McIntosh, Shane [3 ]
Grundy, John [4 ]
机构
[1] Beihang Univ, Sch Software, Beijing, Peoples R China
[2] Huawei, Huawei Software Engn Applicat Technol Lab, Hangzhou, Peoples R China
[3] Univ Waterloo, David R Cheriton Sch Comp Sci, Waterloo, ON, Canada
[4] Monash Univ, Fac Informat Technol, Clayton, Vic, Australia
基金
澳大利亚研究理事会;
关键词
Android; Apache ANT; Apache Maven; build systems; Gradle; open source; CONTINUOUS INTEGRATION;
D O I
10.1002/smr.2602
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Build systems are used to transform static source code into executable software. They play a crucial role in modern software development and maintenance. As such, much research effort has been invested in understanding the quality and evolution of build systems, including Apache ANT, Apache Maven, and Make-based ones. However, the quality and evolution of build systems for mobile apps, such as on the Android platform, have not as yet been investigated in detail. Mobile app development, and the Android development context in particular, impose unique constrains, such as different device conditions and capabilities. It presents unique challenges, such as frequently upgraded Android frameworks, which those who implement and maintain build systems must tackle. In this paper, we present an exploratory empirical study of the build systems of 5222 Android projects to better understand their quality and evolution. We (a) study the build technology choices that Android developers make (Gradle being recommended and the most popular choice), (b) explore the sustainability of the official Gradle build system (parts of build files are updated more frequent that others and the update of the special Gradle plugin would induce unrecommended configurations), and (c) analyze the quality of Gradle scripts for Android apps-more than a half of the open-source Android apps cannot be successfully built due to five common root causes.
引用
收藏
页数:20
相关论文
共 50 条
  • [41] AspectDroid: Android App Analysis System
    Ali-Gombe, Aisha
    Ahmed, Irfan
    Richard, Golden G., III
    Roussev, Vassil
    CODASPY'16: PROCEEDINGS OF THE SIXTH ACM CONFERENCE ON DATA AND APPLICATION SECURITY AND PRIVACY, 2016, : 145 - 147
  • [42] AutoDebloater: Automated Android App Debloating
    Liu, Jiakun
    Hu, Xing
    Thung, Ferdian
    Maoz, Shahar
    Toch, Eran
    Gao, Debin
    Lo, David
    2023 38TH IEEE/ACM INTERNATIONAL CONFERENCE ON AUTOMATED SOFTWARE ENGINEERING, ASE, 2023, : 2090 - 2093
  • [43] Android慕课APP设计
    陈小燕
    信息与电脑(理论版), 2015, (04) : 29 - 30
  • [44] Android Permissions Management at App Installing
    Biswas, Sujit
    Wang Haipeng
    Rashid, Javed
    INTERNATIONAL JOURNAL OF SECURITY AND ITS APPLICATIONS, 2016, 10 (03): : 223 - 232
  • [45] Characterizing Android App Signing Issues
    Wang, Haoyu
    Liu, Hongxuan
    Xiao, Xusheng
    Meng, Guozhu
    Guo, Yao
    34TH IEEE/ACM INTERNATIONAL CONFERENCE ON AUTOMATED SOFTWARE ENGINEERING (ASE 2019), 2019, : 280 - 292
  • [46] 基于Android的学术APP
    刘清秀
    电子技术与软件工程, 2019, (23) : 50 - 51
  • [47] Android APP保护及破解
    张跃骞
    中国教育网络, 2016, (Z1) : 44 - 46
  • [48] ABHAYA: AN ANDROID APP FOR THE SAFETY OF WOMEN
    Yarrabothu, Ravi Sekhar
    Thota, Bramarambika
    2015 ANNUAL IEEE INDIA CONFERENCE (INDICON), 2015,
  • [49] Scaling Arbitrary Android App Analyses
    Pauck, Felix
    PROCEEDINGS OF THE 37TH IEEE/ACM INTERNATIONAL CONFERENCE ON AUTOMATED SOFTWARE ENGINEERING, ASE 2022, 2022,
  • [50] Review of Radiology Signs App for Android
    Andy Wai Kan Yeung
    Journal of Digital Imaging, 2016, 29 : 523 - 525