美文网首页
__IPHONE_OS_VERSION_MIN_REQUIRED

__IPHONE_OS_VERSION_MIN_REQUIRED

作者: KillSimon | 来源:发表于2016-06-28 14:14 被阅读0次

/__IPHONE_OS_VERSION_MIN_REQUIRED对应着Xcode deployment target的版本。
i.e. 你设置为7.0 则对应宏常量的值为70000
__IPHONE_OS_VERSION_MAX_REQUIRED对应着Xcode-Architecture-Base SDK

i.e. 设置9.3,则对应宏常量的值为90300

这两个宏常量用作用是啥呢?可能想到用于做API的兼容,但往往存在缺陷。
比如,UIAlertViewController, 你可能想到使用__IPHONE_OS_VERSION_MIN_REQUIRED 如果在deployment target设置为8.0以下的场景,将永远使用新的API了。

对于仅仅是判断某个方法是否可以使用,用responseToSelector:方法即可。
如果判断当前Device的iOS版本,可以使用UIDevice类提供的Api进行判断。
比如:

<pre>

  • (BOOL)osVersionAbove:(NSString)aVersion{
    BOOL res;
    NSString
    currentVersion = [UIDevice currentDevice].systemVersion;

    NSComparisonResult cmpRes = [currentVersion compare:aVersion options:NSNumericSearch];

    if (cmpRes == NSOrderedSame || cmpRes == NSOrderedDescending) {
    res = YES;
    }else{
    res = NO;
    }

    return res;
    }
    </pre>

相关文章

网友评论

      本文标题:__IPHONE_OS_VERSION_MIN_REQUIRED

      本文链接:https://www.haomeiwen.com/subject/dqstjttx.html