找不到FBSDKCoreKit/FBSDKCoreKit.h错误

M S*_*nil 76 frameworks ios

我正在实施FB登录,所以我从https://developers.facebook.com/docs/ios下载了SDK .然后我拖N个了FBSDKCoreKit,FBSDKLoginKitFBSDKShareKit框架到我的项目.

当我运行项目它工作正常.但当我关闭并重新打开它时,然后"FBSDKCoreKit/FBSDKCoreKit.h not found error"出现.然后我再次将粘贴FBSDKCoreKit框架复制到我的项目库中,错误消失,此过程继续.以前有人遇到过这个问题吗

我该怎么做才能解决这个错误?

eta*_*luz 95

请务必遵循以下步骤:

取消选择将项目复制到目标组的文件夹中. https://developers.facebook.com/docs/ios/getting-started/

此外,在您的构建设置中,请查看此字段:"框架搜索路径"您应该具有以下内容:

/Users/[username]/Documents/FacebookSDK

或者更一般的配置

~/Documents/FacebookSDK

另外,查看Finder并确保框架实际存在

  • 我有同样的问题,但我也没有将SDK从"FacebookSDKs-iOS-20151111"重命名为"FacebookSDK"...... (9认同)
  • 为什么需要重命名为FacebookSDK并且确切需要在Documents文件夹中? (5认同)
  • 取消选择或选择将项目复制到文件夹中? (3认同)
  • 添加框架搜索路径.适用于Xcode 7 GM (3认同)

Mih*_*naz 60

更新之后Cocoapods 1.0.0,我删除pod.lock,并安装最新的稳定版本的吊舱(4.7.04.11.0)的FBSDKCoreKit,FBSDKLoginKit,FBSDKShareKit

然后我遇到了同样的错误.我做的是:

  1. 在Xcode中添加了标题搜索路径构建设置:

    "${PODS_ROOT}/Headers/Public/Facebook-iOS-SDK\"
    "${PODS_ROOT}/Headers/Public/Facebook-iOS-SDK/FacebookSDK\"
    "${PODS_ROOT}/Headers/Public/FBSDKCoreKit\"
    "${PODS_ROOT}/Headers/Public/FBSDKCoreKit/FBSDKCoreKit\"
    
    Run Code Online (Sandbox Code Playgroud)

然后我仍然有另一个文件的错误.因为XCode正在使用预构建框架.

找不到FBSDKCoreKit/FBSDKCopying.h

  1. Clean Build - >⇧⌘K(Shift + Command + K) - 清理构建的框架.
  2. 清理构建文件夹 - >⌥⇧⌘K(选项+ Shift + Command + K)
  3. 关闭Xcode //重要! - 否则它会自动为当前打开的项目重新创建DerivedData
  4. 在终端中运行此命令

    rm -rf ~/Library/Developer/Xcode/DerivedData
    
    Run Code Online (Sandbox Code Playgroud)
  5. 打开XCode并成功构建

  • 我跳过第1步它仍然有效,谢谢! (4认同)
  • 我跳过了 1、2、3、4、5,但相反,我只是出去吃午饭。它奏效了!谢谢!! (3认同)
  • 这实际上奏效了。谢谢!你愿意详细说明为什么会这样吗? (2认同)

小智 34

我必须通过删除框架并通过右键单击项目 - >添加文件...再次添加它来解决此问题,然后选择框架并选择复制文件(如果需要).我知道这不是Facebook推荐的,但是我无法让它发挥作用,但这种方式有效!我正在使用FBSD的V4.6和Xcode 7 beta 6.希望它可以帮助你和其他遇到同样问题的人:)


app*_*ter 16

这也花了我几个小时的痛苦!最后我找到了根本问题.

Facebook SDK 必须位于〜/ Documents/FacebookSDK

这是因为在RCTFBSDK项目中,此路径是硬编码的.但您可以通过将自定义位置添加到RCTFBSDK项目的框架搜索路径来添加自定义位置(它将显示在错误控制台中)!


kar*_*ran 7

FB开发人员不要选择复制文件.这会产生问题.但我做了相反的事情.

  1. 如果需要,我选择了复制项目.它在我的项目中复制了Frameworks.也自动Search Path添加了xcode 7.2.

  2. 还要仔细检查下面的字段Framework Search Paths下 是否有任何内容,然后只需添加$(PROJECT_DIR)等于/ Users/user/Documents/.... PROJECT..DIR ...Search PathsBuild Settings

成功编译成2个项目.


小智 6

我不得不在$(PROJECT_DIR)以上的框架搜索路径中移动FacebookSDK路径

$(SRCROOT)/../../../Documents/FacebookSDK
$(inherited)
$(PROJECT_DIR)
Run Code Online (Sandbox Code Playgroud)