Android operating system (OS) is often updated, where each new version may involve API deprecation. Usages of deprecated APIs in Android apps need to be updated to ensure the apps' compatibility with the old and new versions of Android OS. In this work, we propose AndroEvolve, an automated tool to update usages of deprecated Android APIs, that addresses the limitations of the state-of-the-art tool, CocciEvolve. AndroEvolve utilizes data flow analysis to solve the problem of out-of-method-boundary variables, and variable denormalization to remove the temporary variables introduced by CocciEvolve. We evaluated the accuracy of AndroEvolve using a dataset of 360 target files and 20 deprecated Android APIs, where AndroEvolve is able to produce 319 correct updates, compared to CocciEvolve which only produces 249 correct updates. We also evaluated the readability of AndroEvolve's update results using a manual and an automatic evaluation. Both evaluations demonstrated that the code produced by AndroEvolve has higher readability than CocciEvolve's. A video demonstration of AndroEvolve is available at https://youtu.be/siU0tuMITXI.


翻译:AndroEvollve(OS)经常更新,每个新版本都可能涉及 API 的折旧。 AndroEvollve 使用数据流分析来解决在防疫性变异以及变异性变异性以去除CocciEvolve(CocciEvollve)引入的临时变异性的问题,我们建议AndroEvollve(AndroEvollve)使用360个目标文件和20个脱节性变异性API(AndroEvolve)的数据集来更新脱节性变异性变异性(AndroEvolve ) 。我们用手动和自动变异性变异性变异性(CoccialEvolution) 来消除这些变异性变异性(AndroEvoluve) 。我们用一个自动变异性(AndroEvolution)的数据集来评估AndroEvolutionEvolable(AVI) 和ADVLVLO(AVLO)的可读性(O) 和可读性(AVI)评估。

0
下载
关闭预览

相关内容

Automator是苹果公司为他们的Mac OS X系统开发的一款软件。 只要通过点击拖拽鼠标等操作就可以将一系列动作组合成一个工作流,从而帮助你自动的(可重复的)完成一些复杂的工作。Automator还能横跨很多不同种类的程序,包括:查找器、Safari网络浏览器、iCal、地址簿或者其他的一些程序。它还能和一些第三方的程序一起工作,如微软的Office、Adobe公司的Photoshop或者Pixelmator等。
Linux导论,Introduction to Linux,96页ppt
专知会员服务
80+阅读 · 2020年7月26日
因果图,Causal Graphs,52页ppt
专知会员服务
250+阅读 · 2020年4月19日
Keras François Chollet 《Deep Learning with Python 》, 386页pdf
专知会员服务
158+阅读 · 2019年10月12日
强化学习最新教程,17页pdf
专知会员服务
181+阅读 · 2019年10月11日
[综述]深度学习下的场景文本检测与识别
专知会员服务
78+阅读 · 2019年10月10日
最新BERT相关论文清单,BERT-related Papers
专知会员服务
53+阅读 · 2019年9月29日
Transferring Knowledge across Learning Processes
CreateAMind
29+阅读 · 2019年5月18日
VS Code Remote发布!真·远程开发
开源中国
6+阅读 · 2019年5月3日
Call for Participation: Shared Tasks in NLPCC 2019
中国计算机学会
5+阅读 · 2019年3月22日
强化学习的Unsupervised Meta-Learning
CreateAMind
18+阅读 · 2019年1月7日
用 TensorFlow 目标检测 API 发现皮卡丘!
AI研习社
5+阅读 · 2018年6月4日
【推荐】(TensorFlow)SSD实时手部检测与追踪(附代码)
机器学习研究会
11+阅读 · 2017年12月5日
【推荐】卷积神经网络类间不平衡问题系统研究
机器学习研究会
6+阅读 · 2017年10月18日
【推荐】MXNet深度情感分析实战
机器学习研究会
16+阅读 · 2017年10月4日
阿里云免费开放人脸识别 SDK
程序员观察
3+阅读 · 2017年9月27日
【推荐】深度学习目标检测概览
机器学习研究会
10+阅读 · 2017年9月1日
Arxiv
8+阅读 · 2018年6月19日
VIP会员
相关VIP内容
Linux导论,Introduction to Linux,96页ppt
专知会员服务
80+阅读 · 2020年7月26日
因果图,Causal Graphs,52页ppt
专知会员服务
250+阅读 · 2020年4月19日
Keras François Chollet 《Deep Learning with Python 》, 386页pdf
专知会员服务
158+阅读 · 2019年10月12日
强化学习最新教程,17页pdf
专知会员服务
181+阅读 · 2019年10月11日
[综述]深度学习下的场景文本检测与识别
专知会员服务
78+阅读 · 2019年10月10日
最新BERT相关论文清单,BERT-related Papers
专知会员服务
53+阅读 · 2019年9月29日
相关资讯
Transferring Knowledge across Learning Processes
CreateAMind
29+阅读 · 2019年5月18日
VS Code Remote发布!真·远程开发
开源中国
6+阅读 · 2019年5月3日
Call for Participation: Shared Tasks in NLPCC 2019
中国计算机学会
5+阅读 · 2019年3月22日
强化学习的Unsupervised Meta-Learning
CreateAMind
18+阅读 · 2019年1月7日
用 TensorFlow 目标检测 API 发现皮卡丘!
AI研习社
5+阅读 · 2018年6月4日
【推荐】(TensorFlow)SSD实时手部检测与追踪(附代码)
机器学习研究会
11+阅读 · 2017年12月5日
【推荐】卷积神经网络类间不平衡问题系统研究
机器学习研究会
6+阅读 · 2017年10月18日
【推荐】MXNet深度情感分析实战
机器学习研究会
16+阅读 · 2017年10月4日
阿里云免费开放人脸识别 SDK
程序员观察
3+阅读 · 2017年9月27日
【推荐】深度学习目标检测概览
机器学习研究会
10+阅读 · 2017年9月1日
Top
微信扫码咨询专知VIP会员