记录关于bundle相关的文章链接
懒得Copy和总结了,关于Bundle相关的知识链接在这里做一个汇总好了
什么是Bundle:
bundle是Unix/linux系统中的一种可执行文件。用户可以在终端中使用./***(文件名).bundle命令使其运行。
Bundle是一个含有可执行的代码及代码所需资源,以特定标准的层次结构组合起来的文件夹。这里的可执行是指编译过后可直接运行的代码程序。一个典型的例子就是iOS程序打包后的ipa,我们解压ipa后会得到一个payload文件夹,进入文件夹之后会发现一个和ipa名称相同的.app文件加。这个.app文件夹就是一个Bundle。
系统如何识别Bundle呢?一般而言一个文件夹如果带着.app,.bundle,.framework,.plugin,.kext等等特定后缀,那么系统就认为是Bundle。如果使用Xcode创建项目的话,Xcode会提供相应的模板来生成正确的Bundle类型。
从上面的后缀我们也可以看出Bundle主要分为:
- Appliction。应用程序,包含代码和资源。iOS和macOS的app就是这种。
- Frameworks。框架,包含动态共享库和相应资源。我们常用的系统库和第三方库都属于这种。
- Plug-Ins。插件,macOS很多的系统功能支持插件,一种动态加载代码模块的方式。
使用Bundle可以很方便的管理程序的文件内容,进行本地化设置、程序移动和运行等等。
可以在Mac,Windows和 Android上查看 BUNDLE 文件扩展名。 主要是桌面平台和某些移动平台支持这些文件。 这些文件的普及性为“低”,这意味着它们并不常见。
链接:
Bundle Programming Guide(一)(二)
介绍Bundle文件的格式,以及编码的指导,Xcode和make方法,资源路径等等很详细的关于如何编写一个Bundle程序的文章
https://www.jianshu.com/p/a88fc4decdbf
https://www.jianshu.com/p/1caca8850285
IOS基础之Bundle详解
https://www.jianshu.com/p/3af142c357c7
0 条评论