返回
Automatically Detecting Incompatible Android APIs
DOI:10.1145/3624737.png)
摘要
En 中文
Fragmentation is a serious problem in the Android ecosystem, which is mainly caused by the fast evolution of the system itself and the various system customizations. Many efforts have attempted to mitigate its impact via approaches to automatically pinpointing compatibility issues in Android apps. We conducted a literature review to identify all the currently available approaches to addressing this issue. Within the nine identified approaches, the four issue detection tools and one incompatible API harvesting tool could be successfully executed. We tried to reproduce them based on their original datasets and then empirically compared those approaches against common datasets. Our experimental results show that existing tool capabilities are quite distinct with only a small overlap in the compatibility issues being identified. Moreover, these detection tools commonly detect compatibility issues via two separate steps including incompatible APIs gathering and compatibility issues (induced by the incorrect invocations of the identified incompatible APIs) determination. To help developers better identify compatibility issues in Android apps, we developed a new approach, AndroMevol, to systematically spot incompatible APIs as they play a crucial role in issue detection. AndroMevol was able to pinpoint 397,678 incompatible APIs against the full history of the official Android framework and 52 customized Android frameworks spanning five popular device manufacturers. Our approach could enhance the ability of the state-of-the-art detection tools by identifying many more incompatible APIs that may cause compatibility issues in Android apps and foster more advanced approaches to pinpointing all types of compatibility issues.
Keyword:
Fragmentation
compatibility issue
Android frameworks
期刊
A
IF:
6.2
论文数:
1.2K
被引数:
3.4K
机构
引用论文
Amandroid: A Precise and General Inter-component Data Flow Analysis Framework for Security Vetting of Android AppsAmandroid: 一种用于Android应用安全审查的精确通用组件间数据流分析框架
Lessons from applying the systematic literature review process within the software engineering domain在软件工程领域应用系统文献综述过程的经验教训
Late Bronze Age climate change and the destruction of the Mycenaean Palace of Nestor at Pylos青铜时代晚期的气候变化和皮洛斯内斯特迈锡尼宫的破坏
PLOS ONE
IF0

