来自新iOS版本的方法,不提供警告,显示较旧的SDK

时间:2015-11-25 17:17:34

标签: ios xcode swift deployment sdk

我有一个关于"部署目标与#34;之间差异的基本问题。和iOS版本可用性。例如:

在我的项目中,我使用以下代码: method is available in iOS 8.1 and later

我在Xcode上设置了这样的项目: Deployment target = 8.0 它也匹配特定目标下的部署信息。

当我运行此代码时,它可以工作。但为什么呢?

为什么我没有收到任何警告?

我的部署目标低于该特定行的可用性。为什么dosn编译器在这里给我一个错误?我在安装了iOS 9.1的iPhone上测试代码,这是为什么?当我在模拟器上运行它时也会发生同样的事情,同样是iOS 9.1

修改

在阅读了App Distribution GuideSDK Compatibility Guide之后,我仍然不知道,为什么我的基础SDK设置好后我可以运行" MKMapSize" -method到iOS 8.0,whitout得到任何警告?查看目标设置中的图片 - >构建设置:

target settings -> build settings

编辑2

我找到了一个新方法的示例,该方法确实给出了我要求的错误: example of unavailable method 为什么这种方法会给我一个错误,当8.1方法没有给我一个错误?

编辑3

因此,如果我继续将此项目上传到应用商店,该应用是否适用于运行iOS 8.0的用户?或者当"Team"(在iOS 8.1及更高版本中可用)执行时会崩溃吗?

1 个答案:

答案 0 :(得分:0)

根据文档在iOS 4中添加了

Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource.

  

可用性在iOS 4.0及更高版本中可用。

我也注意到鼠标悬停弹出“谎言”有关可用性。如果实际可用性版本低于部署目标,它似乎使用您要定位的版本而不是代码中指定的实际可用性。

这可能是一个错误,也可能是因为iOS 8.1是您在计算机上安装的最早的SDK。