__OSX_AVAILABLE_BUT_DEPRECATED(__MAC_NA,__MAC_NA,__IPHONE_2_0,__IPHONE_5_0); 意思是在Mac 上从来没有支持过,iOS2.0以上及iOS5.0以下的系统可用,但不建议使用.Apple有可能在ios5.0之后删除该函数.
__OSX_AVAILABLE_BUT_DEPRECATED(__MAC_10_0,__MAC_10_5,__IPHONE_NA,__IPHONE_NA) 在mac os x 10.0 开始引进这个方法,但是在mac os x 10.5之后废弃了,ios上从来没只支持过。
__OSX_AVAILABLE_STARTING(__MAC_NA,__IPHONE_6_0); iPhone6开始引用
NS_AVAILABLE_IOS(5_0); 从iOS 5.0以上才有的方法如果在iOS5.0以下调用,会crash
NS_DEPRECATED_IOS(3_2,5_0) 是从iOS3.2开始支持,而到5.0就开始不推荐使用,算是过时的了