当我创建一个新框架时,Xcode会自动创建两个文件:一个头文件和一个plist文件。例如:
我知道什么是标题和plist。但是,当我的框架是CocoaPod / Carthage / SPM的Swift pod时,这个文件很重要吗?当这些文件很重要时?
答案 0 :(得分:0)
Framework bundle使用与bundle不同的bundle结构 应用程序使用的结构。框架的结构是基于的 在早期的捆绑包格式上,并允许多个版本的 框架代码和头文件存储在bundle中。这个 bundle的类型称为版本化bundle。支持多个 框架版本允许旧应用程序继续运行 即使框架二进制文件继续发展。
系统通过.framework扩展名识别框架 目录名称和顶级的Resources目录 框架捆绑。 在Resources目录中是Info.plist 包含捆绑包标识信息的文件。实际 资源目录不必实际驻留在 捆绑的顶层。实际上,随附的系统框架 OS X具有指向框架的Resources目录的符号链接 这个位置。该链接指向最新版本的 资源目录,埋在包内的某个地方。
Resources目录的内容类似于 应用程序包。 (参见Bundle中的“现代捆绑解剖”) 编程指南以获取更多信息。)放置本地化资源 在特定于语言的子目录中,以.lproj结尾 延期。这些子目录包含字符串,图像,声音和 接口定义本地化为表示的语言和区域 由目录。非本地化资源位于最高层 资源目录。
包含您希望向外部提供的所有公共标头 开发者。
有关详细信息Apple Documentation页。
例如,如果您使用cocoapods发布框架,最好从cocoapods's lib create guide开始,而不是使用XCode的方案。
您可以使用此命令启动(如指南所说):
pod lib create MyLibrary
当您使用芬兰语框架创建向导时,您将拥有如下目录树: