Mik*_*nov 2 xcode objective-c deprecated ios
似乎只有在开发目标之前弃用方法时,Xcode(6.3)中的弃用警告才会出现.我的开发目标是7.0,基础SDK是8.3.在iOS 7.0之前弃用的方法会给出警告,但如果在iOS 8.0中弃用该方法则不会.例:
[self.mainController didAnimateFirstHalfOfRotationToInterfaceOrientation:UIInterfaceOrientationPortrait];
[self.mainController willAnimateRotationToInterfaceOrientation:UIInterfaceOrientationPortrait duration:1];
Run Code Online (Sandbox Code Playgroud)
上面代码的第一行给出了警告(iOS 5.0中不推荐使用的方法)
第二行不会产生任何警告(iOS 8.0中不推荐使用的方法)
我认为这是不正确的,因为我错过了这个方法在iOS 8.0中被弃用的事实,因此我们的应用程序的真实用户(使用iOS 8.3)受到影响.如果我有警告,我会提前知道.
这是正常行为还是错误?
似乎只有在开发目标之前弃用方法时,Xcode(6.3)中的弃用警告才会出现
好吧,想一想:
假设您的部署目标是iOS 7.
并假设在iOS 8中不推荐使用某种方法.
并假设您使用新的iOS 8方法替换它.
现在应用程序将在iOS 7上崩溃,因为新的iOS 8 是一种新的iOS 8方法 - 它在iOS 7中不存在.
因此,如果要在两个系统上向后兼容,则可能必须至少使用一些在以后的系统中不推荐使用的方法,以便在早期系统上运行.因此,没有必要警告你这些.错误将是另一种方式 - 如果编译器警告你所有这些!
所以我们的应用程序的真实用户(使用iOS 8.3)受到影响
可能不是."弃用"并不意味着"破碎"或"不再有效".这意味着"弃用".该方法继续有效.(直到没有,但尚未发生.)
| 归档时间: |
|
| 查看次数: |
618 次 |
| 最近记录: |