Demystifying Diehard Android Apps
Hao Zhou, Haoyu Wang, Yajin Zhou, Xiapu Luo, Yutian Tang, Lei Xue, Ting WangProceedings of the 35th IEEE/ACM International Conference on Automated Software Engineering (ASE 2020)
Smartphone vendors are using multiple methods to kill processes
of Android apps to reduce the battery consumption. This motivates
developers to find ways to extend the liveness time of their apps,
hence the name diehard apps in this paper. Although there are blogs
and articles illustrating methods to achieve this purpose, there is
no systematic research about them. What’s more important, little
is known about the prevalence of diehard apps in the wild.
In this paper, we take a first step to systematically investigate
diehard apps by answering the following research questions. First,
why and how can they circumvent the resource-saving mechanisms
of Android? Second, how prevalent are they in the wild? In particular, we conduct a semi-automated analysis to illustrate insights why
existing methods to kill app processes could be evaded, and then
systematically present 12 diehard methods. After that, we develop
a system named DiehardDetector to detect diehard apps in a large
scale. The experimental result of applying DiehardDetector to more
than 80k Android apps downloaded from Google Play showed that
around 21% of apps adopt various diehard methods. Moreover, our
system can achieve high precision and recall.
@inproceedings{diehard_ase20, author = {Hao Zhou, Haoyu Wang, Yajin Zhou, Xiapu Luo, Yutian Tang, Lei Xue, Ting Wang}, title = {Demystifying Diehard Android Apps}, booktitle = {Proceedings of the 35th IEEE/ACM International Conference on Automated Software Engineering}, year = {2020}, }