gpt4 book ai didi

ios - 如何有效的在 iOS 项目中添加 iOS 框架

转载 作者:行者123 更新时间:2023-12-01 18:43:21 25 4
gpt4 key购买 nike

最近开始做一个 iOS 项目,用 swift 和 Objective-c 编写。截至目前,我们有一个整体 repo 。现在我们专注于创建几个框架,以便我们可以在多个应用程序中重用相同的框架。我想知道您对以下几点的看法。

  • 如果我添加 framework.xcodeproj在我的客户端应用程序项目中,我可以在编写导入语句后访问框架的公共(public)实体。我担心的是每次我通过客户端应用程序项目构建时,这 framework.xcodeproj也在编译,尽管它自上次构建以来没有改变,也不依赖于任何其他框架。
  • 如果我通过将框架添加为 framework.framework 并使其进入嵌入框架来添加框架,我可以访问框架的公共(public)实体。在这种情况下令人担忧的是,每当我更改框架的代码时,我也需要更新客户端应用程序项目中的框架。

  • 有没有办法在客户端应用程序项目中包含框架,我可以访问公共(public)实体并且每次构建客户端应用程序项目时都不会构建它?
    如果框架在代码更新时构建,那绝对没问题。
    我过去使用过 Visual Studio,如果依赖项目中没有代码更改,我可以在不构建依赖项目的情况下构建我的客户端项目。

    最佳答案

    如果每次构建应用程序时都构建框架,取决于框架的类型:

    有 Cocoa Touch 静态库和 Cocoa Touch 框架。

    cocoa 触控框架

    它们始终是开源的,并且将像您的应用程序一样构建。 (所以 Xcode 有时会编译它,当你运行你的应用程序时,总是在你清理项目之后。)框架只支持 iOS 8 和更高版本,但你可以在框架中使用 Swift 和 Objective-C。

    Cocoa Touch 静态库

    顾名思义,它们是静态的。因此,当您将它们导入项目时,它们已经被编译。您可以与他人共享它们,而无需向他们展示您的代码。 请注意,静态库目前不支持 Swift。 您必须在库中使用 Objective-C。应用程序本身仍然可以用 Swift 编写。

    结论

    如果您不介意使用 Objective-C,静态库似乎符合您的要求,即该框架应该只构建一次。

    但由于我喜欢 Swift,我个人建议您使用框架(如果您不介意使用该框架的其他人可以看到您的代码)。我的经验表明,有时会构建框架并不是什么大问题。

    AddThis 写了一篇关于决定是使用静态库还是框架的好博文。

    Cocoa Touch Static Library vs. Cocoa Touch Framework

    关于ios - 如何有效的在 iOS 项目中添加 iOS 框架,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39439595/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com