Automatically Detecting Incompatible Android APIs

Pei Liu, Yanjie Zhao, Mattia Fazzini, Haipeng Cai, John Grundy, Li Li

Research output: Contribution to journalArticlepeer-review

1 Scopus citations

Abstract

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.

Original languageEnglish (US)
Article number15
JournalACM Transactions on Software Engineering and Methodology
Volume33
Issue number1
DOIs
StatePublished - Nov 23 2023

Bibliographical note

Publisher Copyright:
© 2023 Copyright held by the owner/author(s).

Keywords

  • Android frameworks
  • Fragmentation
  • compatibility issue

Fingerprint

Dive into the research topics of 'Automatically Detecting Incompatible Android APIs'. Together they form a unique fingerprint.

Cite this