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