未找到FBSDKCoreKit / FBSDKCoreKit.h文件错误react-native ios

问题描述 投票:4回答:5

尝试安装Facebook SDK以响应本机IOS。

我有FBSDKCoreKit / FBSDKCoreKit.h文件找不到错误并花了几个小时尝试用不同的解决方案解决它,但无法理解什么是错误的((

有任何想法吗?

react-native 0.40 react-native-fsdk 0.5.0 facebook sdk:4.19.0

react-native facebook-sdk-4.0 react-native-ios
5个回答
16
投票

编辑:我建议使用CocoaPods,因此您不需要手动下载/更新sdk。


如果您手动下载了sdk,请尝试以下操作:

  1. 打开你的~/Documents/FacebookSDK文件夹;
  2. 检查文件名是否包含以下云图标:

screenshot.png

如果是这样,macOS会从您的计算机中删除您的文件并将其上传到iCloud! (谢谢Apple)

  1. 单击所有云图标,它将下载文件。

而已!


如果不是这种情况,请尝试以下方法:


13
投票
  1. 检查你的RN项目是否有react-native link
  2. 手动检查链接框架和库,您有libRCTFBSDK.a。如果没有,请点击底部的+按钮并链接它。
  3. 当从<0.40升级项目本身的反应原生时,请确保在使用react-native upgrade更新RN包本身后运行npm install react-native@latest --save
  4. 确保将sdk放在〜/ Documents / FacebookSDK中。我认为这很重要。

如果您遇到一些错误,有时最好清除所有错误,然后重新开始全新安装。

尝试:

rm -rf ./node_modules
watchman watch-dell-all
npm cache clean
npm install
react-native run-ios

11
投票

也有这个问题,但我的问题是RCTFBSDK专门在〜/ Documents / FacebookSDK路径中查找non-recursive设置。要检查是否存在同样的问题,请打开Libraries文件夹和RCTFBSDK.xcodeproj文件夹。检查框架是否为红色

enter image description here

如果是,请单击它们,然后在右侧面板中将位置更改为存储SDK的位置。我按版本号存储我的Facebook SDK,这就是导致问题的原因。例如,版本4.12存储在~/Documents/FacebookSDK/4.12中,因此RCTFBSDK找不到正确的*.framework

此外,单击RCTFBSDK.xcodeproj并将~/Documents/FacebookSDKrecursive设置添加到框架搜索路径。在此之后它应该没有问题地编译。


6
投票

对于主项目和库上的Xcode 10.x - > RCTFBSDK.xcodeproj在Build Settings - > Framework Search Paths下使用$(HOME)/ Documents / FacebookSDK而不是〜/ Documents / FacebookSDK。


1
投票

检查FBSDK文件路径的位置。我的路径最终成为用户/文档/ FacebookSDK

要查看去Library / RCTFBSDK.xcodeproj / Frameworks /

单击文件检查器窗口中的一个框架,它应该有一个名为Full Path的部分

采取该路径并将其添加到您的框架搜索路径。

© www.soinside.com 2019 - 2024. All rights reserved.