Flutter启动图标未更新排查:用flutter_launcher_icons仍显示旧图标
Flutter 启动图标替换后不生效的排查方案
问题背景
我下载了一个Flutter示例应用项目,想要更换启动图标,操作流程如下:
- 安装
flutter_launcher_icons包,在pubspec.yaml中添加配置:
dev_dependencies: flutter_test: sdk: flutter flutter_launcher_icons: "^0.11.0" flutter_icons: android: true ios: true image_path: "assets/icon/logo.png" remove_alpha_ios: true min_sdk_android: 21
- 执行命令:
flutter pub get flutter pub run flutter_launcher_icons
- 控制台返回成功提示:
════════════════════════════════════════════ FLUTTER LAUNCHER ICONS (v0.11.0) ════════════════════════════════════════════ • Creating default icons Android • Overwriting the default Android launcher icon with a new icon • Overwriting default iOS launcher icon with new icon Creating Icons for Web... ⚠️Requirements failed for platform Web. Skipped Creating Icons for Windows... ⚠️Windows config is not provided or windows.generate is false. Skipped... ⚠️Requirements failed for platform Windows. Skipped Creating Icons for MacOS... ⚠️Requirements failed for platform MacOS. Skipped ✓ Successfully generated launcher icons
但安装应用后,仍显示旧启动图标。
可能的原因及解决办法
- 缓存干扰
- Android:执行
flutter clean清理项目构建缓存,再重新构建安装。部分设备桌面 launcher 会缓存图标,可重启设备或清除应用的桌面缓存。 - iOS:关闭Xcode,删除
~/Library/Developer/Xcode/DerivedData目录下的缓存文件,重新打开项目构建运行;也可重启设备刷新桌面图标缓存。
- Android:执行
- 图标文件或路径异常
- 确认
assets/icon/logo.png路径正确、文件存在,建议使用分辨率不低于1024x1024的PNG格式图片,避免文件损坏。可替换一张正常的测试图标重新生成验证。
- 确认
- Android 配置冲突
- 检查
android/app/src/main/AndroidManifest.xml中application标签的icon属性,确认是否指向生成的@mipmap/ic_launcher;若项目有flavor配置,需确保插件覆盖了对应flavor的图标资源。
- 检查
- iOS 资源未正确替换
- 打开Xcode查看
ios/Runner/Assets.xcassets中的AppIcon,确认新图标是否已替换所有尺寸占位;同时检查Info.plist里的CFBundleIconFiles、CFBundlePrimaryIcon配置是否指向正确的图标资源。
- 打开Xcode查看
内容的提问来源于stack exchange,提问作者Roj ALi
相关产品推荐
相关产品推荐

