Flutter 启动iOS工程找不到Flutter库

前因

开发flutter项目时,单独用Xcode打开iOS项目工程,会出现Flutter/Flutter.h file not found 报错。但是直接跑项目是可以正常运行,不管是使用Android studio还是Xcode运行都是没问题。如果不需要在原生上面进行编码,此问题似乎也无伤大雅,如果要进行原生交互,总不能让我字符串编码!!!!!

解决方案

很明显,就是Xcode工程中没有识别到Flutter库,看下对应的目录下,确实没有Flutter库。对比正常工程,发现iOS/Flutter文件目录中缺少了Flutter.xcframework 、App.xcframework 。既然没有,那么就自己生成一个。

1、重新创建一个新的Flutter工程,cd到文件夹目录下

lua 复制代码
flutter create flutterdemo

2、cd 到创建的flutter工程目录下

bash 复制代码
cd flutterdemo

3、生成framework

css 复制代码
flutter build ios-framework --no-debug --no-profile --release --output=xcframework

4、复制xcframework文件夹到有问题的flutter项目根目录(和ios同级) 5、打开Xcode项目Build Phases > Link Binary With Libraries添加依赖,点击+,选择Add Ohter-> Add Files,选中上面的Flutter.xcframework文件夹。 最终效果:

6、Build Setting > Framework Search Paths 添加路径

shell 复制代码
$(SRCROOT)/../xcframework/Release/Flutter.xcframework

至此,问题已解决。

其他问题

在Flutter开发中,经常会用到一些原生插件,这些插件由于是通过pod管理的,经常会出现找不到什么文件,之类的报错。 常见的操作:

bash 复制代码
flutter clean

rm -Rf ios/Pods
rm -Rf ios/.symlinks
rm -Rf ios/Flutter/Flutter.framework
rm -Rf ios/Flutter/Flutter.podspec

rm ios/Podfile

flutter run

使用命令行移除pod库,然后重新拉取pod库,在此期间最好将Android Studio和Xcode 关闭,如果Xcode没关闭可能会弹出Xcode弹窗,记得选择Read From Disk。

相关推荐
茶底世界之下15 小时前
Metal 冷启动并发下,Pipeline Cache 为什么必须合并在途编译
ios·swift
weixin_4038101316 小时前
用 Python 调 EasyClick iOS 免越狱脚本:开放接口对接步骤与参数
ios·iphone
weixin_4038101318 小时前
EasyClick iOS 免越狱自动化脚本怎么写:从环境判断到跑通第一个脚本
运维·ios·自动化
weixin_4038101319 小时前
不用越狱也能批量控制 iPhone:EasyClick iOS 免越狱脚本实战
ios·iphone
恋猫de小郭19 小时前
Android CLI 支持 AI Agent 通过 Device Streaming 调试云真机
android·前端·flutter
weixin_4038101320 小时前
iOS 自动化脚本怎么输入文字:代理、输入法与快捷指令三级方案
运维·ios·自动化
m0_738185822 天前
Flutter 鸿蒙化实战:flutter_scankit 适配 OpenHarmony,华为 ScanKit 扫码
flutter·华为·harmonyos·鸿蒙
黑科技iOS上架2 天前
双引擎解决oc/swift开发引用加固难题
开发语言·ios·swift·审核·ios混淆·执行程序差异化
事圆则缓2 天前
Flutter 开发鸿蒙实战:从 OpenHarmony 适配版到 HAP 构建与插件接入
flutter·华为·harmonyos
天空之城--2 天前
Android一周动态:Android 18首次官宣、Compose Material3 1.4转正(5趋势+5资讯)
android·人工智能·flutter·架构·android jetpack