You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

React Native 0.76.7新架构Swift项目iOS启动崩溃:TurboModuleRegistry无法找到'PlatformConstants'

React Native 0.76.7新架构Swift项目iOS启动崩溃:TurboModuleRegistry无法找到'PlatformConstants'

我之前碰到过类似的新架构启动崩溃问题,给你几个实用的排查和解决方向,你可以一步步试:

  • 检查新架构的核心配置是否完整
    除了Podfile里设置fabric_enabled: true,还要确认ios/Podfile.properties.json里的"newArchEnabled"是否为true。如果这个文件配置不对,你可以先删掉它,然后重新执行pod install,让系统自动生成正确的配置文件。另外打开Xcode,在项目的Build Settings里搜索ENABLE_FABRIC和ENABLE_NEW_ARCHITECTURE,确保这两个选项都被设为YES,有时候局部配置会覆盖全局设置。

  • 修复Swift项目的TurboModule注册逻辑
    因为用的是Swift模板,模块注册的细节很容易出问题。你可以打开AppDelegate.swift,检查模块注册的代码是否正确关联了PlatformConstants。比如确保你的模块注册表初始化时用了默认的模块列表提供者:

    import React
    
    class RCTAppDelegate: UIResponder, UIApplicationDelegate {
      var moduleRegistry: RCTModuleRegistry?
      
      func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
        // 初始化模块注册表,确保包含PlatformConstants
        self.moduleRegistry = RCTModuleRegistry(
          moduleProvider: { moduleName in
            return RCTDefaultModuleListProvider().module(for: moduleName)
          },
          lazilyDiscoveredModules: []
        )
        // ... 其他初始化代码
        return true
      }
    }
    

    另外执行pod update,确保所有新架构相关的Pods都更新到RN 0.76.7对应的版本,旧缓存很容易导致模块缺失。

  • 彻底清理缓存后重新构建
    缓存问题在新架构里特别常见,你可以按这个顺序操作:

    1. 在Xcode里执行Product -> Clean Build Folder,然后找到Derived Data文件夹(Xcode偏好设置->Locations里能看到路径),直接删掉整个文件夹;
    2. 执行npx react-native clean清理RN的缓存,再重新安装依赖npm install;
    3. 删除ios/build文件夹,然后重新执行pod install,最后用npx react-native run-ios启动项目。
  • 检查RCTReactNativeFactory的配置
    如果你手动配置了RCTReactNativeFactory,要确保它和新架构的TurboModuleRegistry正确配合,不要混用旧架构的桥接逻辑。比如工厂类初始化时要传入正确的moduleRegistry实例,而不是旧的RCTBridge对象。

备注:内容来源于stack exchange,提问作者추성우

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.13 17:13:21