提问人:pnizzle 提问时间:11/1/2019 更新时间:11/4/2019 访问量:151
ResearchKit.framework 错误:未找到图像
ResearchKit.framework error: Image not found
问:
我有一个大约 12 个月前编写的 Objective-C 应用程序,iOS 部署目标设置为 12.1。我向其中添加了 ResearchKit 框架,在开发期间,该应用程序运行良好。我记得的是,它只适用于实际设备,而不适用于模拟器。
一年后,我回来使用 Xcode 11 进行更改,现在我遇到了一个熟悉的错误,我无法弄清楚的解决方案。这既是在真实设备上,也是在模拟器上。
我已经完成了添加库所需的所有操作。请参阅下面的附图:
TARGETS -> 常规选项卡
目标 -> 构建阶段
错误
尝试在 iOS 12 设备上运行也会失败。我错过了什么吗?
答:
0赞
pnizzle
11/1/2019
#1
我最终删除了预构建并添加了完整的项目:Research.framework
- 删除预构建文件,在出现提示时选择。
ResearchKit.framework
Move to Trash
- 确保 ResearchKit 项目已关闭(如果已打开,则不会将其添加为项目,而是添加为文件)
- 将项目文件拖放到目标项目中。在此之后,请确保 ResearchKit 项目下有其文件。
ResearchKit.xcodeproj
- 转到项目的主项目文件(不是 ResearchKit),然后选择 Target。
- 确保列在 下。如果没有,则通过选择按钮并从列表中选择它来添加它。如果它不在该列表中,则生成 ResearchKit 项目以创建文件。
ResearchKit.framework
Embed Frameworks
+
.framework
- 在同一目标下,转到“生成阶段”,并确保将其添加到 下,并在 下添加。如果没有,则在不存在的地方添加它。
ResearchKit.Framework
Link Binary with Libraries
Embed Frameworks
- 生成并运行。
可能有更好的方法可以解决这个问题,但现在这适用于我运行应用程序。 应用程序现在在模拟器上运行。但是,初始构建最多需要一分钟,因为 ResearchKit 将其投影得非常大。
更新:我后来发现,我遇到“未找到图像”错误的原因是,当 ResearchKit 框架已构建为针对 arm64(真实设备)时,我试图在模拟器上运行。反过来,您将遇到相同的问题(在为模拟器构建应用程序时尝试在 device-arm64 上运行)。
那么上述步骤如何解决这个问题呢?这解决了这个问题,因为通过包含 ResearchKit 项目文件,您可以为当前选择的架构构建所有内容,无论是设备还是模拟器。祝您编码愉快。
评论