我熟悉构建单个 iOS 应用程序,但我坚持使用 Cocoa Touch Framework 将公共(public)代码共享到多个应用程序。
问题:
框架的头文件不可见/不可链接到消费应用程序项目。
我做了什么:
1。我创建了一个名为“libTestFramework”的项目“Cocoa Touch Framework”
- 用一个方法添加了一个类“GoodMorning.h/m”
- 将类从“project”更改为“public”
- 成功构建项目并最终关闭
2。我创建了一个名为“FrameworkTester”的单 View 应用程序
- 然后我将文件“libTestFramework.xcodeproj”从 Finder 拖到我的 XCode 项目“FrameworkTester”中,直接位于项目导航器的根节点下(见下面的屏幕截图)
- 在目标“FrameworkTester”中,我在“Target Dependencies”下添加了 libTestFramework,在“Link Binary With Libraries”下添加了“libTestFramework.framework”。
3。在应用程序项目中:
- 我尝试从 ViewController.h 中的框架导入“libTestFramework.h”文件,但找不到。
我误会了什么?
我创建了一个公共(public) github-Repository,其中包含两个要重现的项目:https://github.com/itinance/testCocoaTouchFramework
部分截图如下:
最佳答案
我遇到了同样的问题。我不知道如何从你目前的情况解决你的问题,但我知道如何从一个新项目中解决。执行以下步骤后,您可以添加代码,直到获得所需的工作系统。如果您先将项目放入 git 存储库,您可以让它运行,然后进行比较以查看您做错了什么。我也很想看看。
工作环境:
- 创建一个名为“FrameworkTester”的单 View 应用程序
- 点击
文件
->添加
->目标...
- 创建名为“libTestFramework”的“Cocoa Touch Framework”
- 向框架添加所需的 header 和源代码(从小事开始)
- 将公共(public) header 添加到
libTestFramework.h
转到配置,选择“libTestFramework”和
Build Phases
- 确保您的源代码位于
Compile Sources
- 确保使用的 header 在
Headers
Public
- 确保您的源代码位于
- 在“FrameworkTester”中的某处明显引用框架
- 运行测试。
我主要是凭内存写这篇文章。如果我错过了什么,那么文章 iOS 8 Extensions: Sharing Code with an Embedded Framework在 A Tiny Fish 上可能有您需要的东西。这里有一个 list of mistakes you can make
关于ios - 如何在 App 项目中使用 Cocoa Touch Frameworks,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27212761/