WLCleaner: Reducing Energy Waste Caused by WakeLock Bugs at Runtime

Xigui Wang,Xianfeng Li,Wen
DOI: https://doi.org/10.1109/dasc.2014.83
2014-01-01
Abstract:Energy consumption is a first-order concern for battery-driven smartphones. To maximize battery life, Android employs an aggressive Power Management policy. The WakeLock mechanism is the key feature of Android Power Management, which allows application developers to explicitly prevent the critical resources including CPU, screen and keyboard from entering sleep state using WakeLock API. If abused, the application can drain the battery at a fast rate even when the application is not running. Unfortunately, the current programming environment of Android does not offer a reliable facility to identify Wakelock bugs in programs. To solve this problem, we have implemented a novel tool called WLCleaner that can detect WakeLock bugs and automatically handle it at runtime to minimize the power waste for users. We evaluate WLCleaner with real-world applications running on two Android smartphones, and the results show that when WakeLock bugs are removed by WLCleaner, the energy consumption at screen-off time is reduced by half.
What problem does this paper attempt to address?