___isPlatformVersionAtLeast

今天提供静态包给同事的时候报错了

___isPlatformVersionAtLeast_第1张图片
image.png

同时我这边基本没有任何问题,之后咨询其他同事,发现出问题的都出现在Xcode11以下的版本。

突然想到之前看到的关于iOS13的适配有提到 @available,于是通过试了一下,基本没有问题,真的是坑:

if ([UIDevice currentDevice].systemVersion.floatValue >= 13.0) {
    ...
}

使用 @available 导致旧版本 Xcode 编译出错。

从错误信息来看,是 __isPlatformVersionAtLeast 方法没有具体的实现,
可能是 iOS 13 的 @available 的实现中使用了新的 api。

你可能感兴趣的:(___isPlatformVersionAtLeast)