How android app developers manage power consumption? an empirical study by mining power management commits

Lingfeng Bao, David Lo, Xin Xia, Xinyu Wang, Cong Tian

Research output: Chapter in Book/Report/Conference proceedingConference PaperResearchpeer-review

13 Citations (Scopus)

Abstract

As Android platform becomes more and more popular, a large amount of Android applications have been developed. When developers design and implement Android applications, power consumption management is an important factor to consider since it affects the usability of the applications. Thus, it is important to help developers adopt proper strategies to manage power consumption. Interestingly, today, there is a large number of Android application repositories made publicly available in sites such as GitHub. These repositories can be mined to help crystalize common power management activities that developers do. These in turn can be used to help other developers to perform similar tasks to improve their own Android applications. In this paper, we present an empirical study of power management commits in Android applications. Our study extends that of Moura et al. who perform an empirical study on energy aware commits; however they do not focus on Android applications and only a few of the commits that they study come from Android applications. Android applications are often different from other applications (e.g., those running on a server) due to the issue of limited battery life and the use of specialized APIs. As subjects of our empirical study, we obtain a list of open source Android applications from F-Droid and crawl their commits from Github. We get 468 power management commits after we filter the commits using a set of keywords and by performing manual analysis. These 468 power management commits are from 154 different Android applications and belong to 15 different application categories. Furthermore, we use open card sort to categorize these power management commits and we obtain 6 groups which correspond to different power management activities. Our study also reveals that for different kinds of Android application (e.g., Games, Connectivity, Navigation, Internet, Phone & SMS, Time, etc.), the dominant power management activities differ. For example, the percentage of power management commits belonging to Power Adaptation activity is larger for Navigation applications than those belonging to other categories.

Original languageEnglish
Title of host publicationProceedings - 13th Working Conference on Mining Software Repositories, MSR 2016
EditorsRomain Robbes, Christian Bird
Place of PublicationNew York NY USA
PublisherAssociation for Computing Machinery (ACM)
Pages37-48
Number of pages12
ISBN (Electronic)9781450341868, 9781509022427
DOIs
Publication statusPublished - 14 May 2016
Externally publishedYes
EventIEEE International Working Conference on Mining Software Repositories 2016 - Austin, United States of America
Duration: 14 May 201615 May 2016
Conference number: 13th
http://2016.msrconf.org/

Conference

ConferenceIEEE International Working Conference on Mining Software Repositories 2016
Abbreviated titleMSR 2016
CountryUnited States of America
CityAustin
Period14/05/1615/05/16
Internet address

Keywords

  • Empirical study
  • Mining software repository
  • Power consumption
  • Power management

Cite this

Bao, L., Lo, D., Xia, X., Wang, X., & Tian, C. (2016). How android app developers manage power consumption? an empirical study by mining power management commits. In R. Robbes, & C. Bird (Eds.), Proceedings - 13th Working Conference on Mining Software Repositories, MSR 2016 (pp. 37-48). Association for Computing Machinery (ACM). https://doi.org/10.1109/MSR.2016.014