skip to main content
research-article

Energy Diagnosis of Android Applications: A Thematic Taxonomy and Survey

Published: 06 December 2020 Publication History

Abstract

The abnormal energy consumption of Android applications is a significant problem faced by developers and users. In recent years, researchers have invested their efforts to develop energy diagnosis tools that pinpoint and fix the energy bugs from source code automatically. These tools use traditional software engineering methods such as program analysis, refactoring, software repair, and bug localization to diagnose energy inefficiencies. Existing surveys focus only on energy measurement techniques and profiling tools and do not consider automated energy diagnosis tools. Therefore, this article organizes state of the art by surveying 25 relevant studies on Android applications’ automatic energy diagnosis. Further, this survey presents a systematic thematic taxonomy of existing approaches from a software engineering perspective. The taxonomy presented in this article would serve as a body of knowledge and help researchers and developers to understand the state of the field better. The future research directions discussed in this article might help prospective researchers to identify suitable topics to improve the current research work in this field.

References

[1]
Abdul Muqtadir Abbasi, Mustafa Al-Tekreeti, Kshirasagar Naik, Amiya Nayak, Pradeep Srivastava, and Marzia Zaman. 2018. Characterization and detection of tail energy bugs in smartphones. IEEE Access 6 (2018), 65098--65108.
[2]
Raja Wasim Ahmad, Abdullah Gani, Siti Hafizah Ab Hamid, Feng Xia, and Muhammad Shiraz. 2015. A review on mobile application energy profiling: Taxonomy, state-of-the-art, and open research issues. J. Netw. Comput. Appl. 58 (2015), 42--59.
[3]
Alfred V. Aho, Monica S. Lam, Ravi Sethi, and Jeffrey D. Ullman. 2006. Compilers: Principles, Techniques, and Tools (2Nd Edition). Addison-Wesley Longman, Boston, MA.
[4]
Jehad Al Dallal. 2015. Identifying refactoring opportunities in object-oriented code: A systematic literature review. Info. Softw. Technol. 58 (2015), 231--249.
[5]
Jehad Al Dallal. 2017. Predicting move method refactoring opportunities in object-oriented code. Info. Softw. Technol. 92 (2017), 105--120.
[6]
Ahmad Alaiad, Yazan Alnsour, and Mohammad Alsharo. 2019. Virtual teams: Thematic taxonomy, constructs model, and future research directions. IEEE Trans. Professional Commun. 62, 3 (2019), 211--238.
[7]
Matthew Arnold, Martin Vechev, and Eran Yahav. 2011. QVM: An efficient runtime for detecting defects in deployed systems. ACM Trans. Softw. Eng. Methodol. 21, 1 (2011), 2.
[8]
Muhammad Ilyas Azeem, Fabio Palomba, Lin Shi, and Qing Wang. 2019. Machine learning techniques for code smell detection: A systematic literature review and meta-analysis. Info. Softw. Technol. 108 (2019), 115--138.
[9]
Alexander Bakker. 2014. Comparing energy profilers for android. In Proceedings of the 21st Twente Student Conference on IT, Vol. 21.
[10]
Abhijeet Banerjee, Lee Kee Chong, Clément Ballabriga, and Abhik Roychoudhury. 2018. Energypatch: Repairing resource leaks to improve energy-efficiency of android apps. IEEE Trans. Softw. Eng. 44, 5 (2018), 470--490.
[11]
Abhijeet Banerjee, Hai-Feng Guo, and Abhik Roychoudhury. 2016. Debugging energy-efficiency related field failures in mobile apps. In Proceedings of the International Conference on Mobile Software Engineering and Systems. ACM, 127--138.
[12]
Abhijeet Banerjee and Abhik Roychoudhury. 2016. Automated re-factoring of android apps to enhance energy-efficiency. In Proceedings of the IEEE/ACM International Conference on Mobile Software Engineering and Systems (MOBILESoft’16). IEEE, 139--150.
[13]
Tao Bao, Yunhui Zheng, and Xiangyu Zhang. 2012. White box sampling in uncertain data processing enabled by program analysis. In ACM SIGPLAN Notices, Vol. 47. ACM, 897--914.
[14]
Virginia Braun and Victoria Clarke. 2013. Successful Qualitative Research: A Practical Guide for Beginners. Sage.
[15]
Leo Breiman. 2001. Random forests. Mach. Learn. 45, 1 (Oct. 2001), 5--32.
[16]
Tom Britton, Lisa Jeng, Graham Carver, Paul Cheak, and Tomer Katzenellenbogen. 2013. Reversible debugging software. Judge Bus. School, Univ. Cambridge, Cambridge, UK, Tech. Rep (2013).
[17]
Niels Brouwers, Marco Zuniga, and Koen Langendoen. 2014. NEAT: A novel energy analysis toolkit for free-roaming smartphones. In Proceedings of the 12th ACM Conference on Embedded Network Sensor Systems. ACM, 16--30.
[18]
Antonin Carette, Mehdi Adel Ait Younes, Geoffrey Hecht, Naouel Moha, and Romain Rouvoy. 2017. Investigating the energy impact of android smells. In Proceedings of the IEEE 24th International Conference on Software Analysis, Evolution and Reengineering (SANER’17). IEEE, 115--126.
[19]
Aaron Carroll and Gernot Heiser. 2010. An analysis of power consumption in a smartphone. In Proceedings of the USENIX Conference on USENIX Annual Technical Conference (USENIXATC’10). USENIX Association, Berkeley, CA, 21--21. Retrieved from http://dl.acm.org/citation.cfm?id=1855840.1855861.
[20]
Chih-Chung Chang and Chih-Jen Lin. 2011. LIBSVM: A library for support vector machines. ACM Trans. Intell. Syst. Technol. 2, 3 (2011), 27.
[21]
Tao Chen, Rami Bahsoon, and Xin Yao. 2018. A survey and taxonomy of self-aware and self-adaptive cloud autoscaling systems. ACM Comput. Surveys 51, 3 (2018), 61.
[22]
Lianhua Chi and Xingquan Zhu. 2017. Hashing techniques: A survey and taxonomy. ACM Comput. Surveys 50, 1 (2017), 11.
[23]
William W. Cohen. 1995. Fast effective rule induction. In Machine Learning Proceedings 1995. Elsevier, 115--123.
[24]
Luis Cruz and Rui Abreu. 2017. Performance-based guidelines for energy efficient mobile applications. In Proceedings of the IEEE/ACM 4th International Conference on Mobile Software Engineering and Systems (MOBILESoft’17). IEEE, 46--57.
[25]
Luis Cruz and Rui Abreu. 2018. Using automatic refactoring to improve energy efficiency of android apps. In Proceedings of the XXI Iberoamerican Conference on Software Engineering. 163--176.
[26]
Luis Cruz, Rui Abreu, and Jean-Noël Rouvignac. 2017. Leafactor: Improving energy efficiency of android apps via automatic refactoring. In Proceedings of the IEEE/ACM 4th International Conference on Mobile Software Engineering and Systems (MOBILESoft’17). IEEE, 205--206.
[27]
Tuan A. Dao, Indrajeet Singh, Harsha V. Madhyastha, Srikanth V. Krishnamurthy, Guohong Cao, and Prasant Mohapatra. 2017. TIDE: A user-centric tool for identifying energy hungry applications on smartphones. IEEE/ACM Trans. Netw. 25, 3 (2017), 1459--1474.
[28]
Dario Di Nucci, Fabio Palomba, Damian A. Tamburri, Alexander Serebrenik, and Andrea De Lucia. 2018. Detecting code smells using machine learning techniques: Are we there yet? In Proceedings of the IEEE 25th International Conference on Software Analysis, Evolution and Reengineering (SANER’18). IEEE, 612--621.
[29]
Mian Dong and Lin Zhong. 2011. Self-constructive high-rate system energy modeling for battery-powered mobile systems. In Proceedings of the 9th International Conference on Mobile Systems, Applications, and Services. ACM, 335--348.
[30]
William Enck, Peter Gilbert, Seungyeop Han, Vasant Tendulkar, Byung-Gon Chun, Landon P. Cox, Jaeyeon Jung, Patrick McDaniel, and Anmol N. Sheth. 2014. TaintDroid: An information-flow tracking system for realtime privacy monitoring on smartphones. ACM Trans. Comput. Syst. 32, 2 (2014), 5.
[31]
Francesca Arcelli Fontana, Mika V. Mäntylä, Marco Zanoni, and Alessandro Marino. 2016. Comparing and experimenting machine learning techniques for code smell detection. Empir. Softw. Eng. 21, 3 (2016), 1143--1191.
[32]
Francesca Arcelli Fontana and Marco Zanoni. 2017. Code smell severity classification using machine learning techniques. Knowl.-Based Syst. 128 (2017), 43--58.
[33]
Luca Gazzola, Daniela Micucci, and Leonardo Mariani. 2017. Automatic software repair: A survey. IEEE Trans. Softw. Eng. 45, 1 (2017), 34--67.
[34]
Marion Gottschalk, Jan Jelschen, and Andreas Winter. 2014. Saving energy on mobile devices by refactoring. In Proceedings of the EnviroInfo Conference. 437--444.
[35]
Marion Gottschalk, Mirco Josefiok, Jan Jelschen, and Andreas Winter. 2012. Removing energy code smells with reengineering services. In Proceedings of the INFORMATIK Conference.
[36]
Chaorong Guo, Jian Zhang, Jun Yan, Zhiqiang Zhang, and Yanli Zhang. 2013. Characterizing and detecting resource leaks in Android applications. In Proceedings of the 28th IEEE/ACM International Conference on Automated Software Engineering (ASE’13). IEEE, 389--398.
[37]
Shuai Hao, Ding Li, William G. J. Halfond, and Ramesh Govindan. 2013. Estimating mobile application energy consumption using program analysis. In Proceedings of the International Conference on Software Engineering. IEEE Press, 92--101.
[38]
Geoffrey Hecht, Omar Benomar, Romain Rouvoy, Naouel Moha, and Laurence Duchien. 2015. Tracking the software quality of android applications along their evolution (t). In Proceedings of the 30th IEEE/ACM International Conference on Automated Software Engineering (ASE’15). IEEE, 236--247.
[39]
Mohammad Ashraful Hoque, Matti Siekkinen, Kashif Nizam Khan, Yu Xiao, and Sasu Tarkoma. 2016. Modeling, profiling, and debugging the energy consumption of mobile devices. ACM Comput. Surveys 48, 3 (2016), 39.
[40]
Reyhaneh Jabbarvand and Sam Malek. 2017. μ Droid: An energy-aware mutation testing framework for Android. In Proceedings of the 11th Joint Meeting on Foundations of Software Engineering. ACM, 208--219.
[41]
Hao Jiang, Hongli Yang, Shengchao Qin, Zhendong Su, Jian Zhang, and Jun Yan. 2017. Detecting energy bugs in android apps using static analysis. In Proceedings of the International Conference on Formal Engineering Methods. Springer, 192--208.
[42]
Abhilash Jindal and Y. Charlie Hu. 2018. Differential energy profiling: Energy optimization via diffing similar apps. In Proceedings of the 13th USENIX Symposium on Operating Systems Design and Implementation.
[43]
George H. John and Pat Langley. 1995. Estimating continuous distributions in Bayesian classifiers. In Proceedings of the 11th Conference on Uncertainty in Artificial Intelligence. Morgan Kaufmann Publishers Inc., 338--345.
[44]
Wonwoo Jung, Chulkoo Kang, Chanmin Yoon, Donwon Kim, and Hojung Cha. 2012. DevScope: A nonintrusive and online power analysis tool for smartphone hardware components. In Proceedings of the 8th IEEE/ACM/IFIP International Conference on Hardware/software Codesign and System Synthesis. ACM, 353--362.
[45]
Tarandeep Kaur and Inderveer Chana. 2015. Energy efficiency techniques in cloud computing: A survey and taxonomy. ACM Comput. Surveys 48, 2 (2015), 22.
[46]
Vasileios P. Kemerlis, Georgios Portokalidis, Kangkook Jee, and Angelos D. Keromytis. 2012. libdft: Practical dynamic data flow tracking for commodity systems. In ACM Sigplan Notices, Vol. 47. ACM, 121--132.
[47]
Foutse Khomh, Massimiliano Di Penta, and Yann-Gael Gueheneuc. 2009. An exploratory study of the impact of code smells on software change-proneness. In Proceedings of the 16th Working Conference on Reverse Engineering. IEEE, 75--84.
[48]
Foutse Khomh, Stéphane Vaucher, Yann-Gaël Guéhéneuc, and Houari Sahraoui. 2009. A bayesian approach for the detection of code and design smells. In Proceedings of the 9th International Conference on Quality Software. IEEE, 305--314.
[49]
Chang Hwan Peter Kim, Daniel Kroening, and Marta Kwiatkowska. 2016. Static program analysis for identifying energy bugs in graphics-intensive mobile apps. In Proceedings of the IEEE 24th International Symposium on Modeling, Analysis and Simulation of Computer and Telecommunication Systems (MASCOTS’16). IEEE, 115--124.
[50]
Dohee Kim, Soyoon Lee, and Hyokyung Bahn. 2016. An adaptive location detection scheme for energy-efficiency of smartphones. Pervas. Mobile Comput. 31 (2016), 67--78.
[51]
Kwanghwan Kim and Hojung Cha. 2013. WakeScope: Runtime WakeLock anomaly management scheme for Android platform. In Proceedings of the 11th ACM International Conference on Embedded Software. IEEE Press, 27.
[52]
Mikkel Baun Kjærgaard and Henrik Blunck. 2011. Unsupervised power profiling for mobile devices. In Proceedings of the International Conference on Mobile and Ubiquitous Systems: Computing, Networking, and Services. Springer, 138--149.
[53]
Eric Lafortune. [n.d.]. ProGuard. Retrieved from https://stuff.mit.edu/afs/sipb/project/android/sdk/android-sdk-linux/tools/proguard/docs/index.html.
[54]
Claire Le Goues, Stephanie Forrest, and Westley Weimer. 2013. Current challenges in automatic software repair. Softw. Qual. J. 21, 3 (2013), 421--443.
[55]
Claire Le Goues, ThanhVu Nguyen, Stephanie Forrest, and Westley Weimer. 2011. Genprog: A generic method for automatic software repair. IEEE Trans. Softw. Eng. 38, 1 (2011), 54--72.
[56]
Ding Li, Shuai Hao, Jiaping Gui, and William G. J. Halfond. 2014. An empirical study of the energy consumption of android applications. In Proceedings of the IEEE International Conference on Software Maintenance and Evolution (ICSME’14). IEEE, 121--130.
[57]
Li Li, Bruce Beitman, Mai Zheng, Xiaorui Wang, and Feng Qin. 2017. eDelta: Pinpointing energy deviations in smartphone apps via comparative trace analysis. In Proceedings of the 8th International Green and Sustainable Computing Conference (IGSC’17). IEEE, 1--8.
[58]
Qiwei Li, Chang Xu, Yepang Liu, Chun Cao, Xiaoxing Ma, and Jian Lü. 2017. CyanDroid: Stable and effective energy inefficiency diagnosis for Android apps. Sci. China Info. Sci. 60, 1 (2017), 012104.
[59]
Yuanchun Li, Yao Guo, Junjun Kong, and Xiangqun Chen. 2015. Fixing sensor-related energy bugs through automated sensing policy instrumentation. In Proceedings of the IEEE/ACM International Symposium on Low Power Electronics and Design (ISLPED’15). IEEE, 321--326.
[60]
Yepang Liu, Chang Xu, Shing-Chi Cheung, and Jian Lu. 2014. Greendroid: Automated diagnosis of energy inefficiency for smartphone applications. IEEE Trans. Softw. Eng. 1 (2014), 1--1.
[61]
Yepang Liu, Chang Xu, Shing-Chi Cheung, and Valerio Terragni. 2016. Understanding and detecting wake lock misuses for android applications. In Proceedings of the 24th ACM SIGSOFT International Symposium on Foundations of Software Engineering. ACM, 396--409.
[62]
Xiao Ma, Peng Huang, Xinxin Jin, Pei Wang, Soyeon Park, Dongcai Shen, Yuanyuan Zhou, Lawrence K. Saul, and Geoffrey M. Voelker. 2013. Edoctor: Automatically diagnosing abnormal battery drain issues on smartphones. In Proceedings of the USENIX Symposium on Networked Systems Design and Implementation (NSDI’13), Vol. 13. 57--70.
[63]
Haroon Malik, Peng Zhao, and Michael Godfrey. 2015. Going green: An exploratory analysis of energy-related questions. In Proceedings of the 12th Working Conference on Mining Software Repositories. IEEE Press, 418--421.
[64]
Yemao Man and Edith C.-H. Ngai. 2014. Energy-efficient automatic location-triggered applications on smartphones. Comput. Commun. 50 (2014), 29--40.
[65]
Umme Ayda Mannan, Iftekhar Ahmed, Rana Abdullah M. Almurshed, Danny Dig, and Carlos Jensen. 2016. Understanding code smells in Android applications. In Proceedings of the IEEE/ACM International Conference on Mobile Software Engineering and Systems (MOBILESoft’16). IEEE, 225--236.
[66]
Irene Manotas, Christian Bird, Rui Zhang, David Shepherd, Ciera Jaspan, Caitlin Sadowski, Lori Pollock, and James Clause. 2016. An empirical study of practitioners’ perspectives on green software engineering. In Proceedings of the IEEE/ACM 38th International Conference on Software Engineering (ICSE’16). IEEE, 237--248.
[67]
Tessema M. Mengistu and Dunren Che. 2019. Survey and taxonomy of volunteer computing. ACM J. Comput. Surv (2019), 1--35.
[68]
Martin Monperrus. 2018. Automatic software repair: A bibliography. ACM Comput. Surveys 51, 1 (2018), 17.
[69]
Monsoon Solutions Inc. 2018. Mobile Device Power Monitor Manual Ver 1.19. Retrieved from https://msoon.github.io/powermonitor/PowerTool/doc/PowerMonitorManual.pdf.
[70]
José A Montenegro, Mónica Pinto, and Lidia Fuentes. 2018. What do software developers need to know to build secure energy-efficient android applications? IEEE Access 6 (2018), 1428--1450.
[71]
Rodrigo Morales, Rubén Saborido, Foutse Khomh, Francisco Chicano, and Giuliano Antoniol. 2018. Earmo: An energy-aware refactoring approach for mobile apps. IEEE Trans. Softw. Eng. 44, 12 (2018), 1176--1206.
[72]
Irineu Moura, Gustavo Pinto, Felipe Ebert, and Fernando Castor. 2015. Mining energy-aware commits. In Proceedings of the 12th Working Conference on Mining Software Repositories. IEEE Press, 56--67.
[73]
Damien Octeau, Somesh Jha, and Patrick McDaniel. 2012. Retargeting Android applications to Java bytecode. In Proceedings of the ACM SIGSOFT 20th International Symposium on the Foundations of Software Engineering. ACM, 6.
[74]
Adam J. Oliner, Anand P. Iyer, Ion Stoica, Eemil Lagerspetz, and Sasu Tarkoma. 2013. Carat: Collaborative energy diagnosis for mobile devices. In Proceedings of the 11th ACM Conference on Embedded Networked Sensor Systems. ACM, 10.
[75]
Johnatan Oliveira, Markos Viggiato, Mateus F. Santos, Eduardo Figueiredo, and Humberto Marques-Neto. 2018. An empirical study on the impact of android code smells on resource usage. In Proceedings of the International Conference on Software Engineering and Knowledge Engineering (SEKE’18). 314--313.
[76]
Fabio Palomba, Gabriele Bavota, Massimiliano Di Penta, Fausto Fasano, Rocco Oliveto, and Andrea De Lucia. 2018. On the diffuseness and the impact on maintainability of code smells: A large scale empirical investigation. Empir. Softw. Eng. 23, 3 (2018), 1188--1221.
[77]
Fabio Palomba, Dario Di Nucci, Annibale Panichella, Andy Zaidman, and Andrea De Lucia. 2019. On the impact of code smells on the energy consumption of mobile applications. Info. Softw. Technol. 105 (2019), 43--55.
[78]
Candy Pang, Abram Hindle, Bram Adams, and Ahmed E. Hassan. 2016. What do programmers know about software energy consumption? IEEE Softw. 33, 3 (2016), 83--89.
[79]
Abhinav Pathak, Y. Charlie Hu, and Ming Zhang. 2011. Bootstrapping energy debugging on smartphones: A first look at energy bugs in mobile devices. In Proceedings of the 10th ACM Workshop on Hot Topics in Networks. ACM, 5.
[80]
Abhinav Pathak, Y. Charlie Hu, and Ming Zhang. 2012. Where is the energy spent inside my app?: Fine grained energy accounting on smartphones with eprof. In Proceedings of the 7th ACM European Conference on Computer Systems. ACM, 29--42.
[81]
Abhinav Pathak, Abhilash Jindal, Y. Charlie Hu, and Samuel P. Midkiff. 2012. What is keeping my phone awake?: Characterizing and detecting no-sleep energy bugs in smartphone apps. In Proceedings of the 10th International Conference on Mobile Systems, Applications, and Services. ACM, 267--280.
[82]
Gustavo Pinto and Fernando Castor. 2017. Energy efficiency: A new concern for application software developers. Commun. ACM 60, 12 (Nov. 2017), 68--75.
[83]
Gustavo Pinto, Fernando Castor, and Yu David Liu. 2014. Mining questions about software energy consumption. In Proceedings of the 11th Working Conference on Mining Software Repositories. ACM, 22--31.
[84]
J. Platt. 1998. Sequential Minimal Optimization: A Fast Algorithm for Training Support Vector Machines. Retrieved from https://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.43.4376.
[85]
J. Ross Quinlan. 1993. C4.5: Programs for Machine Learning. Morgan Kaufmann, San Francisco, CA.
[86]
Thomas Reps, Susan Horwitz, and Mooly Sagiv. 1995. Precise interprocedural dataflow analysis via graph reachability. In Proceedings of the 22nd ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages. ACM, 49--61.
[87]
José Amancio M. Santos, Joao B. Rocha-Junior, Luciana Carla Lins Prates, Rogeres Santos do Nascimento, Mydiã Falcão Freitas, and Manoel Gomes de Mendonca. 2018. A systematic review on the code smell effect. J. Syst. Softw. 144 (2018), 450--477.
[88]
Aaron Schulman, Thomas Schmid, Prabal Dutta, and Neil Spring. 2011. Phone power monitoring with battor. In Proceedings of the Annual ACM International Conference on Mobile Computing Networks.
[89]
Jungmin Son and Rajkumar Buyya. 2018. A taxonomy of software-defined networking (sdn)-enabled cloud computing. ACM Comput. Surveys 51, 3 (2018), 59.
[90]
G. Edward Suh, Jae W. Lee, David Zhang, and Srinivas Devadas. 2004. Secure program execution via dynamic information flow tracking. In ACM Sigplan Notices, Vol. 39. ACM, 85--96.
[91]
Raja Vallée-Rai, Phong Co, Etienne Gagnon, Laurie Hendren, Patrick Lam, and Vijay Sundaresan. 2010. Soot: A Java bytecode optimization framework. In CASCON First Decade High Impact Papers. IBM Corp., 214--224.
[92]
Panagiotis Vekris, Ranjit Jhala, Sorin Lerner, and Yuvraj Agarwal. 2012. Towards verifying android apps for the absence of no-sleep energy bugs. In Proceedings of the HotPower Conference.
[93]
Willem Visser, Klaus Havelund, Guillaume Brat, SeungJoon Park, and Flavio Lerda. 2003. Model checking programs. Auto. Softw. Eng. 10, 2 (2003), 203--232.
[94]
Jue Wang, Yepang Liu, Chang Xu, Xiaoxing Ma, and Jian Lu. 2016. E-greenDroid: Effective energy inefficiency analysis for android applications. In Proceedings of the 8th Asia-Pacific Symposium on Internetware. ACM, 71--80.
[95]
Xigui Wang, Xianfeng Li, and Wen Wen. 2014. Wlcleaner: Reducing energy waste caused by wakelock bugs at runtime. In Proceedings of the IEEE 12th International Conference on Dependable, Autonomic and Secure Computing (DASC’14). IEEE, 429--434.
[96]
Westley Weimer and George C. Necula. 2004. Finding and preventing run-time error handling mistakes. In ACM SIGPLAN Notices, Vol. 39. ACM, 419--431.
[97]
Haowei Wu, Shengqian Yang, and Atanas Rountev. 2016. Static detection of energy defect patterns in Android applications. In Proceedings of the 25th International Conference on Compiler Construction. ACM, 185--195.
[98]
Aiko Yamashita and Leon Moonen. 2013. Exploring the impact of inter-smell relations on software maintainability: An empirical study. In Proceedings of the International Conference on Software Engineering. IEEE Press, 682--691.
[99]
Shengqian Yang, Haowei Wu, Hailong Zhang, Yan Wang, Chandrasekar Swaminathan, Dacong Yan, and Atanas Rountev. 2018. Static window transition graphs for Android. Auto. Softw. Eng. 25, 4 (2018), 833--873.
[100]
Zheng Yang, Chenshu Wu, Zimu Zhou, Xinglin Zhang, Xu Wang, and Yunhao Liu. 2015. Mobility increases localizability: A survey on wireless indoor localization using inertial sensors. ACM Comput. Surveys 47, 3 (2015), 54.
[101]
Chanmin Yoon, Dongwon Kim, Wonwoo Jung, Chulkoo Kang, and Hojung Cha. 2012. AppScope: Application energy metering framework for android smartphone using kernel activity monitoring. In Proceedings of the USENIX Annual Technical Conference, Vol. 12. 1--14.
[102]
Zarwina Yusoff, Amirrudin Kamsin, Shahaboddin Shamshirband, and Anthony T. Chronopoulos. 2018. A survey of educational games as interaction design tools for affective learning: Thematic analysis taxonomy. Edu. Info. Technol. 23, 1 (Jan. 2018), 393--418.
[103]
Lide Zhang, Mark S. Gordon, Robert P. Dick, Z. Morley Mao, Peter Dinda, and Lei Yang. 2012. Adel: An automatic detector of energy leaks for smartphone applications. In Proceedings of the 8th IEEE/ACM/IFIP International Conference on Hardware/software Codesign and System Synthesis. ACM, 363--372.
[104]
Lide Zhang, Birjodh Tiwana, Zhiyun Qian, Zhaoguang Wang, Robert P. Dick, Zhuoqing Morley Mao, and Lei Yang. 2010. Accurate online power estimation and automatic battery behavior based power model generation for smartphones. In Proceedings of the 8th IEEE/ACM/IFIP International Conference on Hardware/software Codesign and System Synthesis. ACM, 105--114.

Cited By

View all
  • (2023)An Escalated Eavesdropping Attack on Mobile Devices via Low-Resolution Vibration SignalsIEEE Transactions on Dependable and Secure Computing10.1109/TDSC.2022.319893420:4(3037-3050)Online publication date: 1-Jul-2023
  • (2023)A systematic literature review on Android-specific smellsJournal of Systems and Software10.1016/j.jss.2023.111677201:COnline publication date: 1-Jul-2023
  • (2022)AccMyrinxProceedings of the ACM on Interactive, Mobile, Wearable and Ubiquitous Technologies10.1145/35503386:3(1-24)Online publication date: 7-Sep-2022

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Computing Surveys
ACM Computing Surveys  Volume 53, Issue 6
Invited Tutorial and Regular Papers
November 2021
803 pages
ISSN:0360-0300
EISSN:1557-7341
DOI:10.1145/3441629
Issue’s Table of Contents
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 06 December 2020
Accepted: 01 July 2020
Revised: 01 May 2020
Received: 01 November 2019
Published in CSUR Volume 53, Issue 6

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. Automated energy diagnosis
  2. android application
  3. state of the art
  4. thematic taxonomy

Qualifiers

  • Research-article
  • Research
  • Refereed

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)19
  • Downloads (Last 6 weeks)2
Reflects downloads up to 02 Mar 2025

Other Metrics

Citations

Cited By

View all
  • (2023)An Escalated Eavesdropping Attack on Mobile Devices via Low-Resolution Vibration SignalsIEEE Transactions on Dependable and Secure Computing10.1109/TDSC.2022.319893420:4(3037-3050)Online publication date: 1-Jul-2023
  • (2023)A systematic literature review on Android-specific smellsJournal of Systems and Software10.1016/j.jss.2023.111677201:COnline publication date: 1-Jul-2023
  • (2022)AccMyrinxProceedings of the ACM on Interactive, Mobile, Wearable and Ubiquitous Technologies10.1145/35503386:3(1-24)Online publication date: 7-Sep-2022

View Options

Login options

Full Access

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

HTML Format

View this article in HTML Format.

HTML Format

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media