EnergyDx: Diagnosing Energy Anomaly in Mobile Apps by Identifying the Manifestation Point - Li, Li; Wang, Xiaorui; Qin, Feng (Proceedings of the International Conference on Distributed Computing Systems, 2020)
Abnormal battery drain (ABD) can negatively impact the user experience of smartphone apps, by consuming an unnecessarily high amount of energy and causing short battery lifetime. Unfortunately, user reports on ABD are usually too vague for app developers to precisely know how and when the ABD manifests. Therefore, it is important to have a diagnostic tool that can help app developers identify the ABD manifestation point for root cause analysis.In this paper, we propose EnergyDx, an automated diagnosis framework that assists developers in pinpointing the functions that either directly lead to or commonly coincide with the manifestation of ABD. EnergyDx features a novel 5-step analysis algorithm to distinguish the real ABD manifestation point from the power transition points caused by normal phone usage. We have prototyped EnergyDx in Android and evaluated it with 40 different real-world apps for diagnosing ABD cases caused by various types of issues. Our results show that EnergyDx reduces, on average, 93% of the amount of code that the developers would need to search for the root causes of ABD.