一些例子:在NSData 2中,我们有NSUrl和NSUrl;在SWIVE3中,我们有数据和URL。如果你选择点击数据,它说可以从iOS 10及以上。
请有人解释一下:如果苹果的文档说只有iOS 10和以上版本才有什么可用,这是否意味着我只能在目标是iOS 10及以上的应用上使用它?
我已经读到Swift 3与iOS 8兼容,但这些更改(例如,NSData到Data )是Swift 2向3迁移的一部分。那么,如果数据仅在iOS 10及以上版本中可用,那么说Swift 3与iOS 8兼容又意味着什么呢?
我猜想,本质上,我对API可用性和Swift 3兼容性之间的区别感到困惑。
非常感谢你的帮助。
发布于 2017-02-04 10:43:56
如果苹果的文档说只有iOS 10和更高版本才有什么可用,这是否意味着我只能在目标是iOS 10及以上的应用程序上使用它?
不是的。苹果文档的可用性部分可能显示两种不同的信息-- SDK可用性和目标操作系统可用性。
在Data
的情况下,Data
的标准库代码与所有iOS的8及更高版本兼容,但标准库(包括Swift 3标准库)仅包含在iOS SDK 10或更高版本中,苹果文档的可用性部分在这个意义上表示“可用性”。
苹果开发论坛上的这个帖子会有所帮助。通常,您可以依赖Xcode/Swift的可用性检查功能。当您将项目的最小目标标记为iOS 8.0,并且没有收到关于可用性的警告时,项目中使用的所有功能都应该在iOS 8.0设备上工作。
您可以将此作为文档错误发送错误报告。
https://stackoverflow.com/questions/42037872
复制相似问题