DeviceInfo 本机模块未正确安装

DeviceInfo native module is not installed correctly

所以我尝试实施 Facebook 登录并相应地执行所有步骤。在 FBSDKcorekit/FBSDKcorekit.h' file not found 出现错误后,我决定转向其他组件。

你看,这个错误现在给我带来了麻烦。我跟随这个视频:https://www.youtube.com/watch?v=rAXVKapP5cM&t=458s 我在终端中使用了 react-native install react-native-fbsdkreact-native link react-native-fbsdk 命令。

如果有帮助,我会在终端中收到以下编译错误: 以下构建命令失败:

CompileC /Users/someUser/desiredProject/ios/build/Build/Intermediates/RCTFBSDK.build/Debug-iphonesimulator/RCTFBSDK.build/Objects-normal/x86_64/RCTFBSDKGraphRequestManager.o RCTFBSDK/core/RCTFBSDKGraphRequestManager.m normal x86_64 objective-c com.apple.compilers.llvm.clang.1_0.compiler

(1 次失败)

我不确定是对 react-native-fbsdk 的修改还是链接导致了这个错误。请注意,在我尝试实施 Facebook 登录并使用 link 命令之前,我的项目正在运行。

这是怎么回事?

提前感谢您的时间和耐心等待。

编辑:我还没有实现任何 Facebook 登录代码,因为我无法在 Xcode 上成功构建。

@kdizzle 确保你在终端中有正确的打包器 运行,有时你可能有一个与另一个 react native 项目相关联的打包器 运行,这是因为当你停止 [=15] =] 一个 xcode RN 项目,它不会在终端中停止打包程序,当你 start/open 在 xcode 中的另一个 RN 项目时,它只是检查一个打包程序是否是 运行, 不检查它是否与当前项目相关联。因此,请确保停止终端中的所有 packager 实例,然后再次打开 RN 项目。

当找不到ios 项目中的React Native 库时会出现此问题。 当我将我的 react-native 版本从 0.42 更新到 0.44 并导致名为 RCTConvert+Map 的文件在 0.44 中消失时,我碰巧遇到了这个问题,所以我更新了我的 pod。 命令:pod update

将项目升级到较新版本的 react-native 时可能会发生这种情况。要修复它,

  1. 停止你的打包程序。
  2. 退出您的 iOS/android 模拟器。
  3. 重新安装您的模块:rm -rf node_modules && npm install
  4. 重新启动您的打包程序和模拟器,例如react-native run-ios

另一种用途是在 Brownfield 应用程序中。检查你的 iOS and/or Android react-native 版本。如果它们不完全匹配,您也会看到此错误屏幕。

例如:我有一个 React Native 实例 运行 0.45.1 而 Android 安装了 0.45.0。我的解决方案是确保一切都是 运行 相同的版本。

None 以上答案对我有用,所以我稍微研究了 'react-native' 选项并最终得出:

  1. 从 app 目录中完全删除 iOS 和 android 文件夹
  2. 运行 'react-native eject'
  3. 重新运行'react-native run-ios'

之后 iPhone 模拟器似乎与应用程序没有问题。

我遇到了这个问题,它发生在我在模拟器中更改硬件时。为了修复它,我不得不再次杀死打包程序和 运行 'react-native run-ios' 。它并没有一直发生,但是当它发生时,它就为我修复了!