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。一定要注意此类警告。