Proceedings of the 28th International Conference on Program Comprehension 2020
DOI: 10.1145/3387904.3389285
|View full text |Cite
|
Sign up to set email alerts
|

Automatic Android Deprecated-API Usage Update by Learning from Single Updated Example

Abstract: Due to the deprecation of APIs in the Android operating system, developers have to update usages of the APIs to ensure that their applications work for both the past and current versions of Android. Such updates may be widespread, non-trivial, and time-consuming. Therefore, automation of such updates will be of great benefit to developers. AppEvolve, which is the state-of-the-art tool for automating such updates, relies on having before-and after-update examples to learn from. In this work, we propose an appro… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
8
0

Year Published

2021
2021
2023
2023

Publication Types

Select...
3
2
2
1

Relationship

2
6

Authors

Journals

citations
Cited by 28 publications
(8 citation statements)
references
References 21 publications
0
8
0
Order By: Relevance
“…AppEvolve [9] automates API-usage update for Android, creating patches from before-and after-update code examples. CocciEvolve [10] infers a readable transformation in the form of the semantic patch language (SmPL) [17] using only a single after-update code example. NEAT [11] generates transformation rules for deprecated Android API usage migrations without any update example.…”
Section: B Scenario II -Context-dependent Api Migrationmentioning
confidence: 99%
“…AppEvolve [9] automates API-usage update for Android, creating patches from before-and after-update code examples. CocciEvolve [10] infers a readable transformation in the form of the semantic patch language (SmPL) [17] using only a single after-update code example. NEAT [11] generates transformation rules for deprecated Android API usage migrations without any update example.…”
Section: B Scenario II -Context-dependent Api Migrationmentioning
confidence: 99%
“…In the automated analysis, we automatically check whether the updated code produces any syntax error by compiling the updated code using the Python built-in py_compile module. 8 In the manual analysis, we employed the help of three Python programmers with at least four years of experience to label whether the updated code is correct. These programmers are non-authors, and were given instruction and training before the labelling process.…”
Section: Experiments Settingmentioning
confidence: 99%
“…AppEvolve [7] transforms the usage of deprecated Android APIs into backward-compatible updated code by learning from code examples. CocciEvolve [8] provides improvement from App-Evolve by creating readable transformations using only a single update example. Thung et al [9] proposed NEAT, a tool to generate transformation rules that can assist developers in deprecated API replacement for Android APIs.…”
Section: Related Workmentioning
confidence: 99%
“…Several approaches have been proposed in the literature for other ecosystems to migrate from deprecated APIs [20], [9], [8]. Yaoguo Xi et al [20] proposed an approach and built a tool DAAMT to migrate from deprecated APIs in Java to their replacements if recorded in the documentation.…”
Section: Related Workmentioning
confidence: 99%
“…Ko et al have analyzed the quality of documentation for resolving deprecated APIs [7]. Researchers have proposed techniques to automatically update deprecated APIs [8], [9]. However, most of them are for static programming languages such as Java, C# and Android SDKs.…”
Section: Introductionmentioning
confidence: 99%