在集成 pod 文件之前放置在桥接头中的第 3 方代码该怎么办

Posted

技术标签:

【中文标题】在集成 pod 文件之前放置在桥接头中的第 3 方代码该怎么办【英文标题】:what to do for 3rd party code which was placed in bridging header before integrating pod file 【发布时间】:2014-09-10 05:13:02 【问题描述】:

![在此处输入图像描述][1]在 swift 和 xCode 6 beta 6 桥接文件中使用可可豆荚之前,用于集成 obj c 的第 3 方代码。但是在制作 pod 文件并将该 3rd 方代码库集成到 pod 文件中之后,如何桥接头文件以及 pod 文件库是否可用于我的代码??

【问题讨论】:

【参考方案1】:

说实话,真的不清楚你要问什么。但我会尽量回答你的问题。

桥接文件用于包含您想在 Swift 代码中使用的 Objective-C 类。不管是 3rd 方代码、Cocoapod 还是您自己制作的代码。

如果你想访问 Swift 文件中的 Cocoapod 代码,那么只需像往常一样添加 Cocoapod(更新 Podfile 然后pod install)。然后#import你想在你的Swift代码中使用的pod类的头文件。

然后,您应该能够使用 Swift 语法在 Swift 文件中使用 pod。

例如,您的桥接头如下所示:

// My-Bridging-Header.h
#import "AwesomeSauceClassFromAPod.h" 

【讨论】:

我要问的是,在使用 pod 文件之前,我已将 .h 文件放在桥头文件中,因此在使用 pod 文件后,只需将 .h 文件从可可豆荚中放入,它就可以像以前一样工作,因为它是与之前条件相比超出范围 您在桥接头中导入的任何类都将可用于您的所有 swift 文件。就好像您将这些文件导入到所有 swift 文件中一样。 当我在该 pod 部分打开 projectname.xcworkspace 时会有所不同,因此该库将能够从位于顶部的项目中的桥头文件中使用 我几乎可以肯定您的问题的答案是肯定的。但是在您的情况下,为什么不只运行您的项目,然后尝试使用 swift 代码中的 pod 文件中的类。它要么工作要么不工作,但只是尝试一下也没有什么坏处。 :-) 我已经尝试过,但构建失败并且错误出现在 brige 头文件中,找不到特定的“.h”文件,因此它找不到使用 pod 放置的头文件,该文件位于 xcworkspace 的第二部分我已经从我的项目中删除了最初在使用 pod 文件之前保留的第 3 方库,因为在使用 pod 文件后,它可以从可可豆荚本身使用

以上是关于在集成 pod 文件之前放置在桥接头中的第 3 方代码该怎么办的主要内容,如果未能解决你的问题,请参考以下文章

使用 cocoapods 的 PayPal-iOS-SDK 在桥接头中引发错误

在桥接头中导入头文件导致的 Swift 编译器错误

在桥接头中导入头文件导致的 Swift 编译器错误

NS_ENUM 对象在桥接头文件中添加后无法编译

在桥接头中导入不适用于特定的 Parse Facebook

找不到 CocoaPods 桥接头文件