如何解决“在UIManager中找不到“永久违反:requireNativeComponent:” RCTFBLoginButton”。

Tal*_*sky 5 ios react-native facebook-sdk-4.x

让我首先说类似的SO问题表明该问题可能与未链接lib有关。

react-native link react-native-fbsdk又跑了一次,以确认它确实有关联,并确认是

rnpm-install info Platform 'ios' module react-native-fbsdk is already linked
rnpm-install info Platform 'android' module react-native-fbsdk is already linked
Run Code Online (Sandbox Code Playgroud)

不过,我看到一对夫妇的红色指示在我的XCode项目main.jsbundlelibReact.a并且libRCTFBSDK.a(我觉得这特别是干扰下的“恢复参考”,以展示,并且是指向无处当我试图找到它在Finder中)。因此,总的来说,有很强的迹象表明我的FBSDK设置出现了问题。

由于安装指南中提到了这些内容,因此让我继续执行以下报告:

  1. 我已经下载了SDK,该SDK提取在我的~/Documents/FacebookSDK文件夹下
  2. 我已经拖了4个框架(BoltsFBSDKCoreKitFBSDKLoginKitFBSDKShareKit)到项目,而不是标志着“复制”选项
  3. 我的“构建设置” >>“框架搜索路径”具有~Documents/FacebookSDK价值(仅此而已)
  4. 我的“构建设置” >>“其他链接器标志”具有-ObjC -lc++价值(ObjC根据Facebook的指南,确实如此,我没有碰过它,只是证实了它的价值)。
  5. 我的“构建阶段” >>“使用库链接二进制文件”具有4个框架,以及其他几个文件,其中包括两个在树中(libReact.alibRCTFBSDK.a)红色的文件。

虽然问题似乎根源于那些红色文件,但我没有任何线索或运气来尝试对其进行修复,因此,感谢您提供的任何帮助!

Tal*_*sky 0

截至此问题发布时,react-native-fbsdk github 指示应遵循本指南,但步骤 2(链接 SDK)除外,而是将框架拖入项目中。这与您从 FB 仪表板内部访问的“快速入门”指南中的指示类似。这两个指南都是我所看到的问题的根源。

遵循本指南反而让它发挥作用。