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

React Native iOS编译报错:无法加载RCTVibration.framework的Info.plist

解决方案

方案1:扩展静态库适配范围

问题根源是你开启了use_frameworks!后,仅对权限、RNScreens类pod设置了静态库编译,RCTVibration等React原生核心pod默认按动态框架编译,缺失对应的Info.plist配置。
修改Podfile中的pre_install代码块,把React相关的所有pod也加入静态库编译判定逻辑:

pre_install do |installer|
  Pod::Installer::Xcode::TargetValidator.send(:define_method, :verify_no_static_framework_transitive_dependencies) {}

  installer.pod_targets.each do |pod|
    # 新增React相关前缀的pod判定规则
    is_react_pod = pod.name.start_with?('RCT', 'React', 'FBReact')
    if pod.name.eql?('RNPermissions') || pod.name.start_with?('Permission-') || pod.name.eql?('RNScreens') || is_react_pod
      def pod.build_type;
        Pod::BuildType.static_library # >= 1.9
      end
    end
  end
end

修改完成后执行以下操作再编译:

  • 执行 pod deintegrate && pod install --repo-update
  • 按Command+Shift+K清理Xcode构建文件夹后重新编译

方案2:全局指定静态链接框架

如果你没有必须用动态框架的特殊依赖,可以直接替换原来的use_frameworks!为全局静态链接配置:

use_frameworks! :linkage => :static

修改后同样执行pod更新、清理构建缓存的操作即可。

补充校验

如果修改后仍然报错,可以手动打开Xcode的Pods项目,找到RCTVibration对应的target,检查Build Settings中的Info.plist File配置项,为空的话手动填入$(inherited)即可。

内容的提问来源于stack exchange,提问作者luck99

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 08:15:03