将 Objective-C 框架 (CocoaPod) 导入 Swift?

Import Objective-C Framework (CocoaPod) into Swift?

我正在尝试将 libjingle_peerconnection 框架导入到我的 Xcode 项目中,但由于某些原因我无法使用 [= 导入 Objective-C header Swift 源文件中的 14=]。我试图使用 header 个文件等。我做错了什么?

# Uncomment this line to define a global platform for your project
# platform :ios, '8.0'
# Uncomment this line if you're using Swift
use_frameworks!

target 'VideoRTCTest' do
    pod "libjingle_peerconnection"
end

target 'VideoRTCTestTests' do

end

target 'VideoRTCTestUITests' do

end

1。创建一个 xxx-Bridging-Header

使用您选择的方法向项目添加桥接 header,最简单的方法是创建单个 .m 文件并回答 创建桥接 Header 至此对话框:

2。在桥接中引用你的 Pod header

这样包含您的文件:

//
//  Use this file to import your target's public headers that
// you would like to expose to Swift.

#import "RTCICEServer.h"

3。 Objective-C 暴露于 Swift

一旦进入桥接header,就不需要在Swift中导入Obj-C 类。直接使用这些:

let uri = URL(fileURLWithPath: "")
let rtc:RTCICEServer = RTCICEServer(uri: uri, username: "", password: "")
print(rtc)

描述了另一个例子here


► 在 GitHub and additional details on Swift Recipes 上找到此解决方案。