论文标题

通过从单个更新的示例中学习,自动android弃用API使用情况更新

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

论文作者

Haryono, Stefanus Agus, Thung, Ferdian, Kang, Hong Jin, Serrano, Lucas, Muller, Gilles, Lawall, Julia, Lo, David, Jiang, Lingxiao

论文摘要

由于Android操作系统中API的贬值,开发人员必须更新API的用法,以确保其应用程序适用于Android的过去和当前版本。例如,更新可能是广泛的,非平凡的和耗时的。因此,此类更新的自动化将对开发人员有很大的好处。 Appevolve是用于自动化此类更新的最新工具,依赖于更新前后的示例要学习。在这项工作中,我们提出了一种名为coccievolve的方法,该方法仅使用一个后期示例执行此类更新。 Coccievolve通过将相关的更新从后期示例中提取到代码块来学习编辑。从初步实验中,我们发现Coccievolve可以成功执行112个更新中的96个,成功率为85%。

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 approach named CocciEvolve that performs such updates using only a single after-update example. CocciEvolve learns edits by extracting the relevant update to a block of code from an after-update example. From preliminary experiments, we find that CocciEvolve can successfully perform 96 out of 112 updates, with a success rate of 85%.

扫码加入交流群

加入微信交流群

微信交流群二维码

扫码加入学术交流群,获取更多资源