美文网首页
__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