美文网首页iOS收集
关于__IPHONE_OS_VERSION_MAX_ALLOWE

关于__IPHONE_OS_VERSION_MAX_ALLOWE

作者: 简了个书1993 | 来源:发表于2016-06-12 18:09 被阅读1270次

关于__IPHONE_OS_VERSION_MAX_ALLOWED__IPHONE_OS_VERSION_MIN_REQUIRED
这两个宏定义(预编译宏),大多数人不太明白,下面分享给大家

__IPHONE_OS_VERSION_MAX_ALLOWED 当前开发环境版本(当前开发环境的系统SDK版本)

#if __IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_8_0
// 当前开发环境版本在iOS8.0及以上则编译此部分代码
#else
// 如果低于iOS8.0则编译此部分代码
#endif

⚠️注意:这里最好不要这样去判定一个方法或属性是否可用!此处在编译后已经确定是否包含此部分代码,因为它依赖的是当前的开发环境,而不是当前系统环境,它运行在编译时而不是运行时,所以经过打包后,此处就不会变了,在一些特殊情况下会造成严重问题!慎用!!

__IPHONE_OS_VERSION_MIN_REQUIRED 系统最低支持版本(也就是当前项目选择的最低版本)

#if __IPHONE_OS_VERSION_MIN_REQUIRED >= __IPHONE_8_0
// 如果选择(iOS Deployment Target)的最低支持版本在iOS8.0及以上才可以使用
- (void)execute;
#endif

结论
__IPHONE_OS_VERSION_MAX_ALLOWED 这个宏得到的是当前开发环境的系统SDK版本
__IPHONE_OS_VERSION_MIN_REQUIRED 这个宏它是当前项目选择的最低支持的版本

这两个宏在开发时用处比较大,比如 根据不同的开发环境编译不同的代码

#if __IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_10_0
// 在 iOS10.0 及以上的开发环境 编译此部分代码
#else
// 在低于 iOS10.0 的开发环境 编译此部分代码
#endif

至于其他用法,自己摸索,只要记住两个宏代表的是什么版本就好了

相关文章

  • 关于__IPHONE_OS_VERSION_MAX_ALLOWE

    __IPHONE_OS_VERSION_MIN_REQUIRED: 当前app支持的最低版本, 即Deployme...

  • 关于__IPHONE_OS_VERSION_MAX_ALLOWE

    关于__IPHONE_OS_VERSION_MAX_ALLOWED和__IPHONE_OS_VERSION_MIN...

  • 关于关于关于

    他们爱他们自己,不爱你 他们爱你是他们的母亲妻子女儿姐妹 他们不爱你 直到你死的时候,爱才产生,与遗忘同时 那也不...

  • 光明人生

    关于出生 关于成长 关于求学 关于青春期 关于恋爱 关于择业 关于婚姻 关于养生 关于家庭 关于人际 关于教子 关...

  • 「梦雅的简动力」打卡计时65天

    * 关于人生 * 关于梦想 * 关于方向 * 关于创业 * 关于投资 * 关于成败 * 关于个性 * 关于高度 *...

  • 关于

    关于两个人? 关于100步? 关于回头? 关于深情? 关于家庭? 关于孩子? 关于成长? 关于伤痛? 关于怀抱? ...

  • 2017新手妈妈年终总结

    关于购物 关于体重 关于减肥 关于纪念日 关于生活态度 关于上班 关于职场晋升加薪 关于睡眠 关于抱孩子 关于发型...

  • 2018-11-28

    关于流浪、关于随心、关于自由、关于世俗、关于规则、关于坦诚、关于真我、关于好奇心、关于对这整个世界的态度、关于整个...

  • 一首歌的时间

    认真的 想理出点思绪 关于今天关于明天 关于工作关于梦想 关于冬天关于夜晚 关于阳光关于浪花 关于木马关于窗花 关...

  • 最近的各种关于

    关于运动,关于中文阅读,关于英文听力,关于口算。 关于专注,关于目标,关于举家迁移。 关于对正确的过于执着,关于对...

网友评论

  • 简约而不简单简书:__IPHONE_OS_VERSION_MAX_ALLOWED 系统最高版本(可以理解为当前设备的系统版本)

    __IPHONE_OS_VERSION_MAX_ALLOWED 并不是当前系统版本 ,请不要被上面的文章误导
    简了个书1993:@wwwmzyingcom __IPHONE_OS_VERSION_MAX_ALLOWED 取决于开发环境,没毛病。上面那个注意警告是在8月份修改后加进去的。
    4021606a5cc9:@简了个书1993 那你上面那个注意警告还有用吗?如果是当前设备的系统版本的话。难道我打包以后,可能无法在高系统的设备上运行?
    简了个书1993:多谢指出,这个地方确实理解错了,__IPHONE_OS_VERSION_MAX_ALLOWED 这个值取决于当前开发环境版本

本文标题:关于__IPHONE_OS_VERSION_MAX_ALLOWE

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