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

Flutter构建iOS时缺失GeneratedPluginRegistrant.h文件求助

解决Flutter iOS构建时GeneratedPluginRegistrant.h缺失的问题

可行修复步骤

1. 强制生成Flutter iOS配置文件

执行以下命令触发Flutter生成包括注册文件在内的核心配置文件,无需完成完整构建:

flutter build ios --config-only

2. 检查Xcode头文件搜索路径

打开ios/Runner.xcworkspace,进入Runner Target的Build Settings:

  • 找到Header Search Paths选项
  • 确保已包含以下路径(若缺失则手动添加):
    $(inherited)
    "${SRCROOT}/Flutter"
    "${SRCROOT}/Pods/Headers/Public"
    

3. 彻底清理重置构建环境

执行这套完整的清理重置流程,消除缓存或残留文件的影响:

# 清理Flutter项目缓存
flutter clean
# 删除iOS侧Pod相关残留文件
rm -rf ios/Pods ios/Podfile.lock ios/Runner.xcworkspace
# 重新获取Flutter依赖
flutter pub get
# 重置iOS Pod依赖
cd ios
pod deintegrate
pod install
cd ..

4. 调整Podfile兼容性配置

若项目非必须使用模块化框架,可临时注释以下两行配置,部分插件对该配置存在兼容问题:

# use_frameworks!
# use_modular_headers!

修改后重新执行pod install,再尝试构建。

5. 手动创建注册文件

若上述方法均无效,可手动创建缺失文件:

  • 在ios/Runner目录下创建GeneratedPluginRegistrant.h:
    #import <Foundation/Foundation.h>
    #import <Flutter/Flutter.h>
    
    NS_ASSUME_NONNULL_BEGIN
    
    @interface GeneratedPluginRegistrant : NSObject
    + (void)registerWithRegistry:(NSObject<FlutterPluginRegistry>*)registry;
    @end
    
    NS_ASSUME_NONNULL_END
    
  • 同目录下创建GeneratedPluginRegistrant.m:
    #import "GeneratedPluginRegistrant.h"
    
    @implementation GeneratedPluginRegistrant
    + (void)registerWithRegistry:(NSObject<FlutterPluginRegistry>*)registry {
        // 后续构建时Flutter会自动填充插件注册代码
    }
    @end
    

创建完成后重新执行flutter build ios即可。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.17 09:09:58