相关疑难解决方法(0)

如何处理Android中已弃用的类以保持兼容性

我正在重新开始研究我之前工作的应用程序,当时我已经围绕Android 2.2 Froyo构建了所有内容.

我已经更新了我的SDK以获取最新的API,并注意到我使用的ClipboardManager功能已被弃用.我更新了代码以使用较新的ClipData模型并在我的Froyo手机上试用了它,当然,我在新代码中得到了一个N​​oClassDefFoundError.

我已经浏览了一下,并没有找到任何关于保持向后兼容性的一般策略的真实讨论.

我不完全确定我应该如何处理这个以及API不同的其他情况,因为我希望所有版本的用户都能够使用我的应用程序.

我应该按如下方式进行检查吗?

if(version == old){
   use old API;
} else {
   use new API;
}
Run Code Online (Sandbox Code Playgroud)

如果是这样,我已经弃用了我的类中的代码,Eclipse将永远发出警告.

另一方面,我可以构建一个旧版本的API,并希望新版本可以正常处理它.但是当有更好的替代方案时,我冒着构建有缺陷或低性能代码的风险.

处理这个问题的最佳方法是什么?

compatibility android backwards-compatibility deprecated

30
推荐指数
2
解决办法
3万
查看次数