Automated Update of Android Deprecated API Usages with Large Language Models
Tarek Mahmud, Bin Duan, Meiru Che, Awatif Yasmin, Anne H. H. Ngu,, Guowei Yang

TL;DR
This paper presents GUPPY, an automated system using GPT-4 to update deprecated Android API usages, generate tests, and refine updates, improving compatibility and reducing manual effort.
Contribution
GUPPY is the first approach leveraging large language models for automated deprecated API updates in Android apps, combining prompt engineering with iterative refinement.
Findings
GUPPY outperforms existing techniques in updating deprecated APIs.
GUPPY successfully updates 360 benchmark API usages and 156 from latest API levels.
The approach ensures compatibility and reduces manual effort in API maintenance.
Abstract
Android apps rely on application programming interfaces (APIs) to access various functionalities of Android devices. These APIs however are regularly updated to incorporate new features while the old APIs get deprecated. Even though the importance of updating deprecated API usages with the recommended replacement APIs has been widely recognized, it is non-trivial to update the deprecated API usages. Therefore, the usages of deprecated APIs linger in Android apps and cause compatibility issues in practice. This paper introduces GUPPY, an automated approach that utilizes large language models (LLMs) to update Android deprecated API usages. By employing carefully crafted prompts, GUPPY leverages GPT-4, one of the most powerful LLMs, to update deprecated-API usages, ensuring compatibility in both the old and new API levels. Additionally, GUPPY uses GPT-4 to generate tests, identify…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsMobile and Web Applications · Web Data Mining and Analysis · Software System Performance and Reliability
