ABI稳定性:迅速提供5。它与OS或硬件有关吗?它将仅适用于新设备还是将适用于具有新操作系统的旧设备?
答案 0 :(得分:1)
ABI稳定性完全是软件的一部分,而不是硬件。
当语言对ABI稳定时,这意味着可以将其打包并直接链接到操作系统本身。在Swift 5.0之前,如果您构建Swift应用程序,则会将Swift动态库嵌入到该包中,以支持您的特定Swift版本
ABI稳定性使操作系统供应商可以在与使用Swift 5或更高版本构建的应用程序兼容的操作系统中嵌入Swift标准库和运行时。
根据Swift 5 Release Notes的Apple文档
Swift应用程序不再包含用于 用于构建变体的Swift标准库和Swift SDK覆盖 运行iOS 12.2,watchOS 5.2和tvOS 12.2的设备。
您还可以查看Swift 5.0 - 9to5Mac
答案 1 :(得分:0)
ABI代表应用程序二进制接口
ABI稳定性使操作系统供应商可以在与使用Swift 5或更高版本构建的应用程序兼容的操作系统中嵌入Swift标准库和运行时。
苹果公司 Swift应用程序不再包含用于Swift标准库的动态链接库 ,因此ABI稳定性与“应用程序精简”有关。
以前,Swift并不是ABI稳定的,因此每个二进制文件都捆绑了自己的Swift动态库版本。如果打开.ipa,则可以在SwiftSupport或Frameworks中找到快速的标准库(.dylib),这会使.ipa的大小变大,但是相对较小,而现在的iphone和以前的iphone模型现在可以拥有更多的应用程序。