如何将包含pod的框架添加到另一个项目中

时间:2016-01-05 11:08:42

标签: ios swift mqtt ios-frameworks

我遇到了一个问题并且搜索了很多但没有找到任何解决方案。

我创建了一个 Swift框架,它使用 MQTTKit" ,我使用CocoaPods添加到我的框架中。

现在我已经创建了一个将使用上述框架的示例应用程序。

然后我创建了一个工作区,并将framework的xcodeproj文件以及示例应用程序添加到工作区。

但现在我无法在我的示例应用中使用framework

我在framework内收到错误没有此类模块MQTTKit

framework如果我build单独存在错误,那么

pods还是其他什么问题?

3 个答案:

答案 0 :(得分:3)

如果你在一个工作区中使用多个Xcode项目,你应该使用这样的pod目标:

platform :ios, '9.0'
inhibit_all_warnings!
use_frameworks!

target "MyApp" do
  xcodeproj 'MyApp'
  pod 'MQTTKit'

  target "SampleApp" do
    xcodeproj 'SampleApp'
    inherit! :search_paths
    pod 'MQTTKit'
  end
end

要了解详情,请参阅Cocoapods Podfile Syntax Reference

答案 1 :(得分:0)

嘿,我找到了另一种做上述事情的方法。
我们能做的不是使用cocoapods,而是可以在我们自己的框架中手动添加框架。
因为可可豆荚不能很好地与嵌入式框架,如下面的链接所示。
http://samwize.com/2015/01/26/projects-workspace-embedded-framework-and-cocoapods/
所以我做了同样的事情,在我的框架中手动添加了框架,然后我在我的应用程序中添加了框架作为子项目。现在工作正常。

答案 2 :(得分:0)

我知道答案太晚了,但也许会对某人有所帮助。

当我想将我的框架项目嵌入到演示项目中以便在开发过程中测试框架时,我遇到了同样的问题。

我的框架正在使用cocoapods下载其依赖项,因此,如果要将其用作子项目,则必须将所有内容放入演示项目中:框架项目,框架吊舱项目,框架项目的工作区。

所以演示项目树看起来像这样:

DemoApp project
    --- framework.xcodeproj
    --- pods.xcodeproj (the one from the framework project)
    --- framework.xcworkspace