比如,一个方法在iOS8.0 被弃用了,我们都替换成苹果建议使用的方法,那如果iOS8.0之前的版本手机,装上了这个应用。因为8.0之前没有替换后的方法,那调用到这个方法的时候,会不会出现什么问题?
例如:
比如,一个方法在iOS8.0 被弃用了,我们都替换成苹果建议使用的方法,那如果iOS8.0之前的版本手机,装上了这个应用。因为8.0之前没有替换后的方法,那调用到这个方法的时候,会不会出现什么问题?
例如:
会有问题,甚至会造成 crash。
对于方法 Deprecated 的情况,一般可以类似下面处理:
NSString *sampleString = @"abcdefg";
if ([sampleString respondsToSelector:@selector(stringByReplacingPercentEscapesUsingEncoding:)]) {
[sampleString stringByReplacingPercentEscapesUsingEncoding:<#your-encoding-here#>];
}
else {
<#your-else-code-here#>
}
如果这个方法是在ios8后加入的,那么如果手机还在ios7那么运行就会出错,这点和android相同,需要人为的去控制。