可可触摸框架中的Pod处理 - 在设备上出错

时间:2015-08-17 12:04:30

标签: ios swift cocoa cocoapods dyld

我用Google搜索了大约2-3个小时并尝试了几件事,但我无法使其正常工作:

我想要实现的目标

目标是拆分UI代码和业务逻辑。业务逻辑应该在一个单独的框架中进行。 Cocooa触摸框架。因此,业务逻辑可以在WatchKit应用程序中重用。

我是如何尝试的

  1. 创建一个新的Xcode项目 - >选择单一视图应用程序。
  2. 添加新目标 - >选择Cocoa Touch Framework。
  3. 运行pod init。
  4. 在Podfile中为每个目标添加一些pod。
  5. 运行pod install。
  6. 在UI和Framework
  7. 中实现一些代码

    这在模拟器上完美运行。我将在设备上运行它,调试器中会出现以下错误:

      

    dyld:未加载库:@ rpath / SwiftAddressBook.framework / SwiftAddressBook     参考自:/ private / var / mobile / Containers / Bundle / Application / 48E58889-78D4-4D71-B8DA-154ADEB98894 / Pod Error Framework.app/Frameworks/PodErrorKit.framework/PodErrorKit     原因:未找到图像

    我不知道如何解决这个问题。有什么建议?

    我正在使用:

    • cocoapods 0.38.2
    • Xcode 6.4(6E35b)
    • 部署目标iOS 8

    我已经将项目(只是一个假项目,但同样的错误)上传到github。您可以查看here

1 个答案:

答案 0 :(得分:3)

此修复程序位于https://github.com/keithyipkw/pod-cocoa-touch-framework

SwiftAddressBook.framework是动态的,因此您需要将其嵌入到应用程序中,就像PodErrorKit一样。细节在我的提交中。模拟器以某种方式作弊,能够在应用程序外找到框架(在派生数据旁边)。

由于缺少Pods.framework,我无法编译您的项目。我找不到目标,所以我将其删除了。