iPhone - 一个被废弃的方法通常何时会变成过时的?

8
我在一些应用程序中使用了一些已经从iOS5标记为过时的方法。我想知道这些更新何时会变得紧急。
通常,什么时候过时的方法才会变成废弃?有没有可能这将是在iOS 5.1上完成的?或者这总是在像iOS 6.0这样的主要版本中完成的?

1
我一直认为 deprecatedobsolete 是同义词 :) 关于这个话题:我真的不知道,但请注意,一些自 iOS 2.0 开始弃用的 API(只需查看 NSFileManager)仍然存在... - ayoy
3个回答

4
这取决于具体的方法和属性,不同的方法和属性之间可能会有所不同。比如说,如果你看一下像是

这样的标签

cell.textColor

iOS 3.0以来,它已经被弃用,但仍然可以使用。因此,很遗憾不能对有关废弃事物的一般问题给出具体答案。


从一个例子中不能得出没有规则的结论。可能是他们从未删除过某个方法,而规则是“弃用但不删除”。如果你能证明有一些方法已经被删除了,那么至少可以说这不是一个与上下文无关的规则,但你仍然不知道是否存在一些简单的条件,比如“在4个版本后删除属性,在6个版本后删除方法”,苹果是否遵循这些条件。 - AlterEgo

4
据我所知,iOS目前还没有删除任何已发布的API,但这并不意味着我们可以变得自满。只要替代方法在您需要支持的所有iOS版本中都可用,就没有理由继续使用已弃用的方法。
至于它们到底什么时候被删除,完全是推测。随时关注新版本的发行说明。我的猜测是,它们只会在重大版本中被删除,但也没有保证...

3
大多数情况下,保持向后兼容老应用对于苹果来说是有利的。因此,当他们最终削减某些内容时,这将是因为维护它已经变得太昂贵了,或者因为维护它会使添加一些新功能变得困难或不可能。(这种推理可能包括削减弃用代码,因为系统变得太大而无法适应设备。)
避免使用弃用方法的更好理由是应用程序审核过程。苹果可能要求新提交的应用程序提前避免使用弃用的代码,而实际上削减该代码可能还需要一段时间。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接