小编典典

带有框架的 iOS 应用程序在设备上崩溃,dyld:库未加载,Xcode 6 Beta

all

此崩溃是一个阻塞问题,我使用以下步骤重现该问题:

  • 创建一个 Cocoa Touch 框架项目
  • 添加一个swift文件和一个类 Dog
  • 为设备构建框架
  • 在 Swift 中创建单视图应用程序
  • 将框架导入应用项目
  • 在 ViewController 中从框架中实例化 swift 类
  • 在设备上构建并运行应用程序

该应用程序在启动时立即崩溃,这是控制台日志:

dyld: Library not loaded: @rpath/FrameworkTest03.framework/FrameworkTest03
  Referenced from: /var/mobile/Applications/FA6BAAC8-1AAD-49B4-8326-F30F66458CB6/FrameworkTest03App.app/FrameworkTest03App
  Reason: image not found

我尝试在 iOS 7.1 和 8.0 设备上构建,它们都有相同的崩溃。但是,我可以构建一个应用程序并在模拟器上运行良好。另外,我知道我可以在 Link
Binary With Libraries中将框架更改为
Required to Optional ,但它并没有完全解决问题,当我创建 Dog
的实例时应用程序崩溃了。设备和模拟器上的行为不同,我怀疑我们无法使用 Xcode 的 beta 版本为设备分发框架。任何人都可以阐明这一点吗?


阅读 172

收藏
2022-03-04

共1个答案

小编典典

在目标的 General 选项卡中,有一个 Embedded Binaries 字段。当您在那里添加框架时,崩溃就解决了。

参考资料Apple Developer
Forums 上。

2022-03-04