Automatically Detecting API-induced Compatibility Issues in Android Apps: A Comparative Analysis (Replicability Study)
arXiv:2205.15561 · doi:10.1145/3533767.3534407
Abstract
Fragmentation is a serious problem in the Android ecosystem. This problem is mainly caused by the fast evolution of the system itself and the various customizations independently maintained by different smartphone manufacturers. Many efforts have attempted to mitigate its impact via approaches to automatically pinpoint compatibility issues in Android apps. Unfortunately, at this stage, it is still unknown if this objective has been fulfilled, and the existing approaches can indeed be replicated and reliably leveraged to pinpoint compatibility issues in the wild. We, therefore, propose to fill this gap by first conducting a literature review within this topic to identify all the available approaches. Among the nine identified approaches, we then try our best to reproduce them based on their original datasets. After that, we go one step further to empirically compare those approaches against common datasets with real-world apps containing compatibility issues. Experimental results show that existing tools can indeed be reproduced, but their capabilities are quite distinct, as confirmed by the fact that there is only a small overlap of the results reported by the selected tools. This evidence suggests that more efforts should be spent by our community to achieve sound compatibility issues detection.
References in corpus (5)
- Research on Third-Party Libraries in AndroidApps: A Taxonomy and Systematic LiteratureReview
- FILO: FIx-LOcus Localization for Backward Incompatibilities Caused by Android Framework Upgrades
- Identifying and Characterizing Silently-Evolved Methods in the Android API
- M3: Semantic API Migrations
- AndroidCompass: A Dataset of Android Compatibility Checks in Code Repositories