未找到 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 中无法导入以上是关于未找到 react-native-fbsdk FBSDKCoreKit 和 FBSDKShareKit的主要内容,如果未能解决你的问题,请参考以下文章
无法读取未定义的属性“canShow” - React-Native-FBSDK - iOS