框架与捆绑包

Posted

技术标签:

【中文标题】框架与捆绑包【英文标题】:Frameworks vs. Bundles 【发布时间】:2012-01-04 03:23:39 【问题描述】:

我希望能够为我正在开发的应用程序添加插件,因为它是一种开发工具,我希望其他人能够编写自己的插件。

所以我的问题是框架和可加载包之间的真正区别是什么?哪个更适合作为插件(访问标题等)?如果我使用可加载捆绑包,如何在运行时加载它们并在开发期间访问它们的功能?

插件不应该依赖其他插件。

【问题讨论】:

【参考方案1】:

你看过NSBundle吗?它具有在运行时加载可执行代码所需的所有方法。您需要定义某种插件接口,任何插件都将遵循该接口。

关于 bundle 和 framework 的区别... bundle 和 framework 都是文件结构,包含您的应用可以使用的各种资源。框架就像一个库——当你构建它时,它是你的程序链接的东西。另一方面,bundle 本质上是一个文件夹结构,其中包含您在运行时加载的编译代码。

【讨论】:

以上是关于框架与捆绑包的主要内容,如果未能解决你的问题,请参考以下文章

捆绑框架与XCode中的应用程序

如何获取框架代码的捆绑包?

在 Xcode 上更改 Firebase Crashlytics 的捆绑包 ID

出现“无法在捆绑包中加载 NIB”错误

Mac 应用程序在启动时崩溃,链接框架未捆绑

嵌入 OSGi 框架:啥时候应该完成捆绑解析?