我看到了很多好的旧有用的方法,甚至整个类都被"弃用和过时".
但是用于调用这些方法的代码仍然有效.那么,作为Android应用程序开发人员,这对我意味着什么呢?
只要我愿意,继续使用此方法,因为较新的SDK将始终保持向后兼容.
只要我为旧目标构建(例如API 8),它就会工作,但如果我从API 14构建,编译器将拒绝完成构建.
(1)和(2)
其他?
当没有提供替代方案时,这尤其令人困惑,例如WebView.PictureListener.html#onNewPicture.
这通常意味着有更好的做事方式,或者被弃用的功能有一些不可修复的缺陷,应该避免.您通常可以继续使用已弃用的方法,但建议您切换到某个新API(在第一种情况下)或找到其他方法(在第二种情况下).
关于onNewPicture
具体地,整个PictureListener
接口被弃用.没有任何迹象表明应该取代它.@CommonsWare在这篇帖子中的评论值得深思:
可以想象,WebKit中的上游更改正在推动弃用,并且对于PictureListener的支持可能会在将来的某个版本中完全丢失.
我会选择4:
它基本上会告诉你不鼓励使用方法或类; 它们不会100%保持向后兼容性(他们可以决定在将来的版本中不包含该方法),因此您应该尝试使用方法或类的替换.这有时无法使用新的方法(例如,如果你想支持运行旧版本的设备).
其他一些时候它实际上是可能的.例如,该showDialog
方法现已弃用,他们建议使用DialogFragment
类.通过使用兼容性库,即使在旧版Android中也可以实现这一点.
不建议使用不推荐使用的方法保持向后兼容.他们可能会继续留在那里以获得更多版本,只是为了让每个人都有机会在开发人员删除它们之前远离它们.他们被弃用的事实意味着开发人员认为有更简单,更快,更整洁,或更好的方式来做任何类或方法.
现在更改代码以使用不推荐使用的界面可能会更好,因为如果您等待并且它已被删除,您的用户将看到崩溃和错误.