iOS 文档帮助本地路径: file:///Users/jiangxd/Library/Developer/Shared/Documentation/DocSets/com.apple.adc.documentation.AppleiOS7.0.iOSLibrary.docset/Contents/Resources/Documents/documentation/CoreFoundation/Conceptual/CFBundles/BundleTypes/BundleTypes.html#//apple_ref/doc/uid/10000123i-CH101-SW1
Bundle的结构很大程度依赖于bundle的类型与其目标平台. 下文描述了通用于OSX和iOS中的Bundle结构.
Application Bundles
Application bundles是由开发者创建的最为常用的一种. 它包含了程序正常运行所需的一切资源. 尽管一个特定的application bundle结构取决于其目标运行平台, 但bundle的用法却大致相同. 本文介绍了iOS和OS X中的application bundle结构.
Application Bundle里面包含什么文件?
下表概述了常见的文件类型.由于平台差异性,又略有不同.
| 文件 | 描述 |
|---|---|
| Info.plist | (必需) 此文件包含了应用程序的配置信息.系统依赖此文件以获取应用程序的相关信息. |
| 可执行文件 | (必需) 任何应用程序必须包含一个可执行文件. 此文件包含应用程序的入口和通过静态连接到应用程序target的代码. |
| 资源文件 | 资源文件是那些位于可执行程序之外的数据文件, 例如: 图片,图标,声音,nib文件,字符串资源,配置文件.以及数据文件,资源文件可以针对特定的语言和区域进行国际化.资源文件具体包含哪些文件取决于它是iOS还是Mac应用程序. |
| 其他 | Mac应用可以内嵌额外的高级资源,例如私有的框架(framework),插件,文档模板以及其他相关的定制数据资源. 虽然我们也可以在iOS应用里面嵌入定制的数据资源,但无法包含定制的框架和插件. |
尽管bundle里大多数的资源都是可选的,但往往事实并非如此.例如, iOS应用需要图片资源作为应用的图标和启动图片.尽管不是必需,但大多数的应用程序都包含一个定制的图标而不是使用默认的.
iOS Application Bundle结构剖析
Xcode提供的项目模板完成了创建IPhone或iPad应用程序bundle的绝大多数工作, 例如应用程序图标,一些图片以及国际化的内容.下面展示了一个叫做MyApp的简单iPhone应用的程序结构:
MyApp.app
MyApp
MyAppIcon.png
MySearchIcon.png
Info.plist
Default.png
MainWindow.nib
Settings.bundle
MySettingsIcon.png
iTunesArtwork
en.lproj
MyImage.png
fr.lproj
MyImage.png
唯一需要放在子目录里的是需要国际化的文件,当然,你也可以创建自己的子目录以组织相关的资源和相关文件.
未完待续
本文详细解析了 iOS 应用程序包(Bundle)的基本结构及其组成部分,包括必需的 Info.plist 和可执行文件,以及资源文件等内容,并展示了典型的 iOS 应用程序结构。
439

被折叠的 条评论
为什么被折叠?



