ReactNativeNavigation.h file not found after updating react native version

未关闭
#8,241 3 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

评估

难度
4/5
预计耗时
3-5 天
新手友好度
38/100
Issue 类型
缺陷
描述清晰度
基本清楚
活跃度
冷清
技术栈
react-native

调研方向

首先复现 iOS 构建失败问题,并检查 AppDelegate.m 中的 import 以及 Podfile 配置。对比报告中提到的 React Native 0.74.3 和 0.78 的集成点;当 ReactNativeNavigation header 能够解析且应用能够成功为 iOS 构建时,即视为完成。

由索引模型根据 Issue 内容生成。

描述

🏚 stale platform: iOS type: accepted/bug
What happened?

I've been tasked and I am working on updating the react native version of my application. After updating it all and making sure there are no other errors, when trying to build the app for iOS I am getting 'ReactNativeNavigation/ReactNativeNavigation.h' file not found in AppDelegate.m

I've looked around the github issues here and tried changing the podfile as suggested, but to no avail.

Heres the podfile:

  # Resolve script with node to allow for hoisting
  require Pod::Executable.execute_command('node', ['-p',
    "require.resolve(
      '#{script}',
      {paths: [process.argv[1]]},
    )", __dir__]).strip
end
#Use it to require both react-native's and this package's scripts:
node_require('react-native/scripts/react_native_pods.rb')
node_require('react-native-permissions/scripts/setup.rb')

platform :ios, '18.0'
prepare_react_native_project!

setup_permissions([
  'AppTrackingTransparency',
  # 'Bluetooth',
  # 'Calendars',
  # 'CalendarsWriteOnly',
  'Camera',
  # 'Contacts',
  # 'FaceID',
  # 'LocationAccuracy',
  # 'LocationAlways',
  # 'LocationWhenInUse',
  'MediaLibrary',
  'Microphone',
  # 'Motion',
  'Notifications',
  'PhotoLibrary',
  # 'PhotoLibraryAddOnly',
  # 'Reminders',
  # 'Siri',
  # 'SpeechRecognition',
  # 'StoreKit',
])

linkage = ENV['USE_FRAMEWORKS']
if linkage != nil
  Pod::UI.puts "Configuring Pod with #{linkage}ally linked Frameworks".green
  use_frameworks! :linkage => linkage.to_sym
end

static_frameworks = [
 'FirebaseCore',
 'FirebaseCoreExtension',
 'GoogleUtilities',
 'FirebaseCoreInternal',
 'FirebaseInstallations',
 'GoogleDataTransport',
 'FirebaseFirestoreInternal',
 'FirebaseMessagingInternal',
 'FirebaseAuth',
]
pre_install do |installer|
 installer.pod_targets.each do |pod|
   if static_frameworks.include?(pod.name)
     puts "Configuring #{pod.name} as static framework"
     def pod.build_type
       Pod::BuildType.new(:linkage => :static, :packaging => :framework)
     end
   end
 end
end


target 'myapp' do
  config = use_native_modules!

  $RNFirebaseAsStaticFramework = true
  pod 'GoogleAnalytics'
  pod 'FirebaseDatabase', :modular_headers => true
  pod 'FirebaseABTesting', :modular_headers => true
  pod 'FirebaseAppCheckInterop', :modular_headers => true
  pod 'leveldb-library', :modular_headers => true
  pod 'nanopb', :modular_headers => true

  config = use_native_modules!

  use_react_native!(
    :path => config[:reactNativePath],
    :hermes_enabled => true,
    # An absolute path to your application root.
    :app_path => "#{Pod::Config.instance.installation_root}/.."
  )

  post_install do |installer|
    # https://github.com/facebook/react-native/blob/main/packages/react-native/scripts/react_native_pods.rb#L197-L202
    react_native_post_install(
      installer,
      config[:reactNativePath],
      :mac_catalyst_enabled => false,
      # :ccache_enabled => true
    )
  end
end
What was the expected behaviour?

That the app correctly builds for iOS.

Was it tested on latest react-native-navigation?
  • I have tested this issue on the latest react-native-navigation release and it still reproduces.
Help us reproduce this issue!

Started happening after updating from react-native 0.74.3 to 0.78

In what environment did this happen?

React Native Navigation version: 8.7.5
React Native version: 0.78
Has Fabric (React Native's new rendering system) enabled: (yes/no) No
Node version: 18.20.8
Device model: iPhone 17 Pro (emulator)
iOS version: 26.2

主要语言
MDX
星标
13.2k
派生
2.6k
平均合并
2 天 10 小时
30 天内合并 PR
6

环境准备

  • 没有 Dockerfile 或 Docker Compose 文件
  • 没有 Pull Request 模板
  • 阅读贡献指南

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

wix/react-native-navigation 的其他 Issue

查看 wix/react-native-navigation 的全部 Issue

相似的 Issue

更多 Build System Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。