  Energy efficiency is a crucial quality requirement for mobile applications.
However, improving energy efficiency is far from trivial as developers lack the
knowledge and tools to aid in this activity. In this paper we study the impact
of changes to improve energy efficiency on the maintainability of Android
applications. Using a dataset containing 539 energy efficiency-oriented
commits, we measure maintainability -- as computed by the Software Improvement
Group's web-based source code analysis service Better Code Hub (BCH) -- before
and after energy efficiency-related code changes. Results show that in general
improving energy efficiency comes with a significant decrease in
maintainability. This is particularly evident in code changes to accommodate
the Power Save Mode and Wakelock Addition energy patterns. In addition, we
perform manual analysis to assess how real examples of energy-oriented changes
affect maintainability. Our results help mobile app developers to 1) avoid
common maintainability issues when improving the energy efficiency of their
apps; and 2) adopt development processes to build maintainable and
energy-efficient code. We also support researchers by identifying challenges in
mobile app development that still need to be addressed.
