一句话:提出 FILO 工具,通过推荐需修改的方法并报告失败执行症状,帮助 Android 开发者修复 API 升级引发的兼容性问题。
移动操作系统 API 快速演进,但升级并不总能保证向后兼容,导致 Android 应用在更新后的系统上无法正常工作甚至崩溃。本文提出 FILO,一种辅助 Android 开发者解决 API 升级引入的向后兼容性问题的工具。FILO 会推荐应用中需要修改的方法以适配升级后的 API,并报告失败执行中观察到的关键症状,从而帮助开发者定位和完成修复。对 12 个真实升级问题的分析以及早期工具采用者的反馈表明,FILO 能为 Android 开发者提供实际支持。FILO 可从指定 GitLab 地址下载,并提供视频演示。
Mobile operating systems evolve quickly, frequently updating the APIs that app developers use to build their apps. Unfortunately, API updates do not always guarantee backward compatibility, causing apps to not longer work properly or even crash when running with an updated system. This paper presents FILO, a tool that assists Android developers in resolving backward compatibility issues introduced by API upgrades. FILO both suggests the method that needs to be modified in the app in order to adapt the app to an upgraded API, and reports key symptoms observed in the failed execution to facilitate the fixing activity. Results obtained with the analysis of 12 actual upgrade problems and the feedback produced by early tool adopters show that FILO can practically support Android developers. FILO can be downloaded from https://gitlab.com/learnERC/filo, and its video demonstration is available at https://youtu.be/WDvkKj-wnlQ.