一尘不染

如何在Swift项目中使用Objective-C CocoaPods

swift

有什么方法可以在我的Swift项目中使用swift使用用Objective-C编写的CocoaPod吗?

我只是制作桥接头吗?如果可以,我可以在Swift中访问CocoaPod中的库定义的对象,类和字段吗?


阅读 235

收藏
2020-07-07

共1个答案

一尘不染

您问题的基本答案是,可以,您可以使用CocoaPods构建的Objective-C代码。

更重要的问题是“如何使用此类库?”
这个问题的答案取决于use_frameworks!您中的标志Podfile
假设您要使用带有name的Objective-C pod CoolObjectiveCLib

如果您的Pod文件使用use_frameworks!标志:

// Podfile
use_frameworks!
pod 'CoolObjectiveCLib'

然后,您无需添加任何桥头文件。
您需要的所有内容都是Swift源文件中的导入框架:

// MyClass.swift
import CoolObjectiveCLib

现在,您可以使用lib中提供的所有类。

如果您的Pod文件不使用use_frameworks!标志:

// Podfile
pod 'CoolObjectiveCLib'

然后,您需要创建桥接头文件,并将所有必需的Objective-C头导入其中:

// MyApp-Bridging-Header
#import "CoolObjectiveCLib.h"

现在,您可以使用在导入的标头中定义的所有类。

2020-07-07