繁体   English   中英

无法导入桥接头错误

[英]Failed to Import Bridging Header Error

我在安装和卸载 cocoapods 时不小心弄乱了我的项目设置。 我现在收到错误“无法导入桥接头”。 我检查了我的构建设置,并且在构建设置 > 代码生成 > Objective-c 桥接头下的文件路径是正确的。 在尝试让 cocoapods 工作时,我在构建设置中弄乱了我的框架搜索路径(它们现在是空的)。 非常感谢在解决此桥接头问题方面的一些帮助。

听起来像空的标题搜索路径可能是导致您出现问题的原因。 尝试将$(inherited)添加到 Build Settings 中的 Header Search Paths 列表中。 它将确保使用在 pods xcconfig 文件中设置的标头搜索路径。

在 XCODE 中搜索头,看看桥头是否仍然“在那里”,如果是的话,点击它,它会显示在框架中......然后看看 facebook sdk #import 语句是否还在那里,如果没有添加它。

如果搜索后没有找到头文件...单击文件和“将文件添加到并查看是否可以在那里找到 -Header.h,如果可以,请将其添加回您的项目,如果没有,请再次转到构建设置并“清除”标题的路径,保存您的项目,关闭它,重新打开它,然后尝试添加一个 C 文件并查看该文件是否会重新生成,然后您可以重新添加对#import facebookSDK 的调用

另一件事是你可以检查以确保 FBSDKcoreKit.framework 被放回目标的构建阶段,在链接二进制文件下与库

从您的回复中编辑:

在您的搜索路径中,您还应该在 $(inherited) 下方有以下 $(PROJECT_DIR)/yourprojectname 如果您没有 $(PROJECT_DIR)/yourprojectname 它会给您您提到的错误,因为我已经通过从框架搜索路径

我还不能发布图片或者我会参考

如果您添加了一个用 Swift 编写的 pod 并且没有包含“use_frameworks!” 在您的 Podfile 中,您的 Pod 不会安装,您将收到此错误。 包括“use_frameworks!” 在 Podfile 和 pod 中再次安装。

我希望您已经设法自己找到了解决方案。 我今天在尝试将框架实现到项目中而不必使用 cocoapods 时遇到了这个问题。 该框架不会被 xcode 识别。 我解决这个问题的方法是:


  1. 我在 xCode 6.4 中创建了一个空白项目,然后按照步骤在 swift 项目中正常添加框架。 正如预期的那样,该框架与 Objective C Bridging Header 完美结合,因为该框架在 Objective-C 中。

  2. 然后我对 xCode 7 beta 3 做了同样的事情。由于这个错误,它没有工作。

  3. 然后我进入了 xCode 6.4 项目并查看了 Target -> Build Settings -> Search Paths 并查看了那里为 Framework Path 和 Header 路径编写的内容。

  4. 然后我去了同一个地方和xCode 7,发现那里完全是空的。

  5. 然后我只需要复制写在 xCode 6.4 上的路径并将其调整为 xCode-beta 路径。 当 finder 打开以搜索路径时,您可以通过键入 Command + Shift + G 在 finder 上查找路径。 然后针对 xCode beta 和 xCode 6.4 的路径进行测试,看看您是否在正确的路径上。

  6. 清理并构建您的项目并检查桥接头是否正常工作。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM