Flutter多Flavors环境下运行Development报错:找不到「AppIcon-development」启动图标集
Flutter多Flavors环境下运行Development报错:找不到「AppIcon-development」启动图标集
这种Flavors配置迁移的坑真的太磨人了!我之前在团队迁移开发环境的时候也踩过几乎一模一样的问题,给你分享几个我亲测有效的排查和解决步骤,应该能帮你搞定:
1. 先锁死Scheme和Build Configuration的关联正确性
打开Xcode,通过Product > Scheme > Edit Scheme进入Development Scheme的编辑页面,切换到Run > Info标签页,务必确认Build Configuration选的是你对应development的配置(比如Debug-development)。
接着到项目Target的Build Settings里,搜索Asset Catalog App Icon Set Name,展开这个配置项,重点检查Debug-development(或你命名的development对应配置)的取值是不是严格等于AppIcon-development——别搞混了其他环境的配置项(比如Debug-production)。
2. 清掉Xcode的缓存“垃圾”
这是解决Xcode资源识别问题的黄金偏方:
- 先执行
Product > Clean Build Folder(快捷键Cmd+Shift+K)清理编译缓存 - 打开Xcode偏好设置(
Cmd+,),切换到Locations标签,找到Derived Data,点击右边的箭头打开文件夹,直接删掉整个项目对应的Derived Data文件夹 - 重启Xcode,再尝试编译运行
3. 强制让Xcode重新索引图标资源
虽然你说没有拼写错误,但Xcode有时候会抽风,对已存在的资源“视而不见”:
- 右键
Assets.xcassets选择Show in Finder,确认AppIcon-development图标集确实存在,且里面的所有尺寸图标都完整 - 回到Xcode,先删掉Assets.xcassets里的
AppIcon-development,然后右键Assets.xcassets>Add Files to "Runner",重新把Finder里的AppIcon-development拖进来,让Xcode重新识别这个资源
4. 用Flutter命令直接指定Flavor运行,排查隐藏错误
有时候Xcode的GUI提示会掩盖真实错误,试试在终端里直接运行:
flutter run --flavor development -t lib/main_development.dart
看看会不会输出更详细的错误信息,或者有没有其他配置同步的问题。
5. 直接复用旧Mac上的Scheme配置文件
手动重建Scheme很容易漏掉一些隐藏配置,最稳妥的办法是从旧Mac上把Scheme配置文件拷贝过来:
- 在旧Mac上,找到项目的
ios/Runner.xcodeproj/xcshareddata/xcschemes文件夹(如果看不到,需要显示隐藏文件) - 把里面的
Development.xcscheme和Production.xcscheme(如果有的话)拷贝到新Mac的对应目录里 - 重启Xcode,直接用旧的Scheme运行,大概率能解决问题
内容来源于stack exchange
相关产品推荐
相关产品推荐

