通过从单一更新示例中学习实现Android废弃API用法的自动更新
软件工程
2020-05-28 v1
摘要
由于Android操作系统中API的废弃,开发者必须更新这些API的用法,以确保其应用在过去与当前版本的Android上均能正常工作。此类更新可能分布广泛、并非易事且耗时。因此,此类更新的自动化将给开发者带来极大便利。AppEvolve作为实现此类更新自动化的当前最优工具,依赖于从更新前与更新后的示例中学习。本文提出一种名为CocciEvolve的方法,仅使用单一更新后示例即可完成此类更新。CocciEvolve通过从更新后示例中提取针对某代码块的相应更新来学习编辑操作。初步实验表明,CocciEvolve在112项更新中成功完成96项,成功率达85%。
引用
@article{arxiv.2005.13220,
title = {Automatic Android Deprecated-API Usage Update by Learning from Single Updated Example},
author = {Stefanus Agus Haryono and Ferdian Thung and Hong Jin Kang and Lucas Serrano and Gilles Muller and Julia Lawall and David Lo and Lingxiao Jiang},
journal= {arXiv preprint arXiv:2005.13220},
year = {2020}
}
备注
5 pages, 8 figures. Accepted in The International Conference on Program Comprehension (ICPC) 2020, ERA Track