如何在 Swift 框架中使用 Cocoapods?

How to use Cocoapods in a Swift framework?

我正在尝试使用 Cocoapods 中的一些库为 Swift 中的 iOS 创建一个新的 Cocoa 触控框架,但我可以让它工作。 我知道有一些未解决的问题,但 none 似乎解决了我的问题。

出于测试目的,我刚刚创建了一个空的 Cocoa Touch Framework,安装了 Cocoapods 并添加了 'MBProgressHUD' pod。 然后,作为 documented by Apple('Importing Code from Within the Same Framework Target' 部分),我在我的伞头中导入了 MBProgressHUD 头,如下所示:

#import "MBProgressHUD.h"

但是我编译的时候出现了这个错误:

include of non-modular header inside framework module

我确实将 'Allow Non-modular includes in Framework Modules' 设置为是,但没有任何效果。

有什么方法可以在 Swift 框架中使用 CocoaPods 吗?

我找到了解决方案,所以我会把它放在这里以防其他人遇到同样的问题。

因此,Cocoapods 从 0.36 版开始支持 iOS 个框架,并且 it's said in their blog,要在框架中使用它,您只需在 Podfile 中添加以下行:

use_frameworks!

之后,在 Swift 框架中,您不需要在伞头中包含 .h 文件,但您需要在任何需要的地方导入模块,例如:

import MBProgressHUD

这对我有用,希望对您有所帮助!

使用'Objective-C桥接header'我们可以在Swift.[=13中使用Objective-C框架=]

参考下文,将说明如何在Swift中使用Objective-C框架(例如Parse framework)。

Link1
Link2