未找到 react-native-fbsdk FBSDKCoreKit 和 FBSDKShareKit

Posted

技术标签:

【中文标题】未找到 react-native-fbsdk FBSDKCoreKit 和 FBSDKShareKit【英文标题】:react-native-fbsdk FBSDKCoreKit and FBSDKShareKit not found 【发布时间】:2017-01-11 01:39:06 【问题描述】:

我已经正确安装了 facebook SDK。 (这与其他未找到的错误不同,因为它专门针对 react-native-fbsdk 并且没有任何解决方案有效。)

我已经通过将FBSDKCoreKit 标头和FBSDKShareKit 标头导入AppDelegate.m 来测试我安装了SDK,并且它编译并运行没有问题。

但是,当我安装 react-native-fbsdk 并链接它并编译时,我收到“找不到 FBSDKCoreKit/FBSDKCoreKit.h”的错误。与FBSDKShareKit类似。

github 页面上的故障排除提供了 3 个选项来检查何时发生这种情况:

    确保 Facebook SDK 框架安装在 ~/Documents/FacebookSDK 中。

    确保FBSDK[Core, Login, Share]Kit.framework 显示在构建目标的构建阶段的“与库链接二进制”部分中。

    确保 ~/Documents/FacebookSDK 位于构建目标的构建设置的框架搜索路径中。

我已经检查并确认我拥有所有这些,但没有找到解决方案。奇怪的是,我可以在AppDelegate.m 中导入它们,而且效果很好。

【问题讨论】:

【参考方案1】:

您需要确保将 SDK 框架保存在文件夹 ~/Documents/FacebookSDK

因为 react-native-fbsdk ios 项目在其自己的框架搜索路径定义中硬编码了值“~/Documents/FacebookSDK”

【讨论】:

【参考方案2】:

如果你和我一样不想做 Facebook 告诉你的事情(或者你不想在你的 Documents 文件夹中随意放一些东西):

    将 QuickStart 教程中的每个 ~/Documents/FacebookSDK 实例替换为您希望存储 SDK 的位置,在我的例子中为 ~/Library/FacebookSDK。这意味着,在那里解压缩下载的 SDK 并将该路由添加到项目的Framework Search Paths。 * 在 Xcode 的文件树中,展开 Libraries 组并单击 RCTFBSDK.xcodeproj。在该项目上单击Build Settings 并将您的路线添加到其Framework Search Paths

就是这样。 请记住您在更新节点模块时执行此操作,因为此更改不会在您的项目中进行版本控制。

*注意:如果有其他人参与该项目,请不要从您的项目的Framework Search Paths 中删除~/Documents/FacebookSDK。这是为了与模块安装保持一致,团队其他成员可以轻松npm install 并使用安装指南作为文档。

【讨论】:

【参考方案3】:

在 Xcode 中拖放 FacebookSDK 文件,例如尝试使用 FBSDKCoreKit.h

【讨论】:

我将整个文件夹添加到我的应用程序组中。错误仍然出现 观看此视频youtube.com/watch?v=MNfrBdyEvmY 或许对您有帮助 我的代码工作并编译。我完全按照他的方式完成了这些步骤(不是登录部分,而是所有设置)。失败的地方是 react-native-fbsdk,更具体地说是在文件库/RTCFBSDK.xcodeproj/RCTFBSDK/core/RCTFBSDKGraphRequestManager.h 中无法导入 您是否在 Xcode 中选择了 Copy if needed?我不知道,也许你可以试试cocoapods。通过视频我没有问题,我也在 Facebook 的 F8App 中受到启发。 @sookool99 看这个:github.com/facebook/react-native-fbsdk#33-troubleshooting(第 2 点)

以上是关于未找到 react-native-fbsdk FBSDKCoreKit 和 FBSDKShareKit的主要内容,如果未能解决你的问题,请参考以下文章

无法读取未定义的属性“canShow” - React-Native-FBSDK - iOS

FBSDKCoreKit.h 未找到错误

带有 FB SDK 的 iOS 应用程序报告 FBSDKCoreKit/FBSDKCoreKit.h 文件未找到

未捕获的 ReferenceError:未定义 FB

FB SDK 错误:登录失败(react-native)

如何在本机反应中使用 Facebook Messenger 对话框?