一句话:系统剖析 25 个 Android APM 库并大规模调查 50 万应用,揭示其功能实现、局限与隐私风险。
应用性能问题会影响用户体验,开发者常借助应用性能管理(APM)工具定位性能瓶颈,但多数开发者并不清楚 APM 在运行时如何监控应用、以及这些工具是否存在局限。本文对 25 个广泛使用的 Android APM 进行剖析,报告了它们实现 8 类关键功能的方式及其局限。随后,作者对 Google Play 上 50 万个 Android 应用开展大规模实证研究,以探索 APM 的实际使用情况。研究得到若干有趣发现:部分 APM 仍使用已废弃的权限和方法,因而可能无法始终正常工作;同时,一些应用开发者利用 APM 收集用户隐私信息。
Since the performance issues of apps can influence users' experience, developers leverage application performance management (APM) tools to locate the potential performance bottleneck of their apps. Unfortunately, most developers do not understand how APMs monitor their apps during the runtime and whether these APMs have any limitations. In this paper, we demystify APMs by inspecting 25 widely-used APMs that target on Android apps. We first report how these APMs implement 8 key functions as well as their limitations. Then, we conduct a large-scale empirical study on 500,000 Android apps from Google Play to explore the usage of APMs. This study has some interesting observations about existing APMs for Android, including 1) some APMs still use deprecated permissions and approaches so that they may not always work properly; 2) some app developers use APMs to collect users' privacy information.
@inproceedings{paperbot5195,
title = {Demystifying Application Performance Management Libraries for Android},
author = {Yutian Tang and Xian Zhan and Hao Zhou and Xiapu Luo and Zhou Xu and Yajin Zhou and Qiben Yan},
booktitle = {ASE},
year = {2019},
doi = {10.1109/ase.2019.00069}
}