APIMigrator: An API-Usage Migration Tool for Android Apps [conference paper]

Conference

Proceedings of the 6th International Conference on Mobile Software Engineering and Systems (MOBILESoft) - July 14, 2020

Authors

Mattia Fazzini (assistant professor), Qi Xin, Alessandro Orso

Abstract

To provide their functionality, mobile apps interact extensively with the application programming interface (API) of the underlying operating system. Given that the API frequently evolves to incorporate crucial improvements, app developers are periodically required to update API usages in their apps to ensure that the apps behave as expected when running on the new API. To help developers with this tedious, error-prone, and time-consuming task, we defined a technique for automated API migration and implemented it in a tool called APIMigrator that supports Android apps. APIMigrator (1) automatically migrates API usages within an app by leveraging how developers of other apps migrated corresponding API usages and (2) validates the migrations through differential testing. We evaluated APIMigrator on a benchmark of 15 real-world apps and obtained promising results. Overall, our tool was able to migrate 85% of the API usages considered and validated 68% of these migrations. 

Link to full paper

APIMigrator: An API-Usage Migration Tool for Android Apps

Keywords

software engineering, mobile applications