如何解决 React Native iOS 链接错误:: 'ReactNativeNavigation/ReactNativeNavigation.h' 文件未找到?

Posted

技术标签:

【中文标题】如何解决 React Native iOS 链接错误:: \'ReactNativeNavigation/ReactNativeNavigation.h\' 文件未找到?【英文标题】:How to resolve React Native iOS linking error:: 'ReactNativeNavigation/ReactNativeNavigation.h' file not found?如何解决 React Native iOS 链接错误:: 'ReactNativeNavigation/ReactNativeNavigation.h' 文件未找到? 【发布时间】:2019-07-16 05:10:13 【问题描述】:

我已经为我的 React Native 应用程序集成了 React Native Navigation 包。我需要将旧的 React Native Navigation 版本更新到最新版本。 我正在关注它的官方设置文档:: 检查此链接https://wix.github.io/react-native-navigation/#/docs/Installing?id=ios

我在 iOS 链接中遇到问题。

错误:: 'ReactNativeNavigation/ReactNativeNavigation.h' 文件未找到

错误:: 语义问题:使用未声明的标识符 ReactNativeNavigation

我也关注了这个之前的帖子,但它不适合我link 我正在为使用 Xcode 的 iOS 应用程序设置 React Native Navigation。

我在 AppDelegate.m 文件中做了修改,后面是它的官方链接:

#import "AppDelegate.h"

#import <React/RCTBundleURLProvider.h>
#import <React/RCTRootView.h>
#import <ReactNativeNavigation/ReactNativeNavigation.h>

@implementation AppDelegate

- (BOOL)application:(UIΩApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions

  NSURL *jsCodeLocation = [[RCTBundleURLProvider sharedSettings] jsBundleURLForBundleRoot:@"index" fallbackResource:nil];
  [ReactNativeNavigation bootstrap:jsCodeLocation launchOptions:launchOptions];
  
  return YES;


@end

请建议如何为 iOS 平台解决此问题。

【问题讨论】:

确保libReactNativeNavigation.a 包含在主要项目Link Binary With Libraries 部分中。 是的,我已将它从 ReactNativeNavigation.xcodeproj -> Poducts -> libReactNativeNavigation.a 拖放到右侧窗格部分的 Link Binary With Libraries。现在它被标记为必填 祝你好运@ArchanaSharma 我已经清理了我的项目,然后删除了所有对 react native 导航库的引用并重新添加了库,它为我解决了问题。 您应该在文档中执行步骤 3.a。 【参考方案1】:

我还有其他构建问题,但添加了行

pod 'ReactNativeNavigation', :podspec =&gt; '../node_modules/react-native-navigation/ReactNativeNavigation.podspec'

到我的 ios 目录中的 Podfile 为我解决了 XCode 错误。添加此行后,您必须运行

pod install 来自 ios 目录

react-native-navigation 文档说新版本的 react-native 将使用 pod。你可以在 Installation with CocoaPods 部分看到它

https://wix.github.io/react-native-navigation/#/docs/Installing

【讨论】:

【参考方案2】:

将此行添加到您的 podfile 中

pod 'React-RCTLinking', :path => '../node_modules/react-native/Libraries/LinkingIOS'

然后导入文件:

#import <React/RCTLinkingManager.h>

【讨论】:

以上是关于如何解决 React Native iOS 链接错误:: 'ReactNativeNavigation/ReactNativeNavigation.h' 文件未找到?的主要内容,如果未能解决你的问题,请参考以下文章

React Native运行安卓报错解决记录

Mac运行React Native安卓项目报错解决

REACT NATIVE 系列教程之十真机运行报错COMMAND /BIN/SH FAILED WITH EXIT CODE 1 的解决方法

解决升级到Xcode10,react native项目运行报错问题

React Native 取消链接 Ios 库

React Native Maps 红色轮廓 ios