@available

Xcode( Version 9.1) 

当你使用了比Deployment Target 更高版本的API时,Xcode会提示你is only available on iOS x.x or newer.

举个例子:- (void)openURL:(NSURL*)url options:(NSDictionary*)options completionHandler:(void (^ __nullable)(BOOL success))completion NS_AVAILABLE_IOS(10_0);

这个方法在iOS 10.0及以后才适用,当你在程序里使用了该方法,并且Deployment Target设置为iOS 10.0以下,Xcode会有以下提示

此时,你可以点击Fix进行@available check,这样当app在低于iOS 10.0的系统下运行时,此块代码不执行,不会因为找不到相应的方法而报错闪退。否则会报错unrecognized selector。一定要注意此类警告。

你可能感兴趣的:(@available)