Flutter应用图标异常求助:Android端显示黑图标、iOS端显示不符
Flutter应用图标异常求助:Android端显示黑图标、iOS端显示不符
我太懂你这种图标出问题的闹心了——Android端显示黑图标,iOS端的图标还和预想的不一样,而且重新生成图标也没搞定,真的头疼!
先把你的问题情况和当前配置整理一下:
你使用flutter_launcher_icons工具配置了应用图标,配置代码如下:
flutter_launcher_icons: android: "launcher_icon" ios: true image_path: "assets/icon/app_icon.png" min_sdk_android: 21
iOS端的异常图标显示如下:
iOS端异常图标
给你几个针对性的排查和解决步骤,你可以挨个试试:
- 检查原始图标文件:先确认
assets/icon/app_icon.png本身没问题——得用透明背景的PNG格式,分辨率至少1024x1024px,别是损坏或者格式错误的图。要是原图就有问题,生成后的系统图标肯定会出岔子。 - 清缓存后重新生成:旧缓存很容易搞事情,按这个流程来:
- 手动删掉项目根目录下的
build文件夹 - 执行
flutter clean命令清理Flutter缓存 - 重新运行
flutter pub run flutter_launcher_icons:main生成图标
- 手动删掉项目根目录下的
- Android端细节排查:
- 去
android/app/src/main/res目录下,看看各个mipmap文件夹里的launcher_icon是不是正常的,有没有变成黑块 - 打开
AndroidManifest.xml,确认里面的android:icon属性是@mipmap/launcher_icon,别写错名称了
- 去
- iOS端额外检查:
- 打开Xcode,找到项目里的
Assets.xcassets,查看AppIcon下的各个尺寸图标是不是都生成正确了,有没有缺失或者显示异常的 - Xcode的缓存也经常坑人,你可以用快捷键Cmd+Shift+K清理Build Folder,然后重新编译运行
- 打开Xcode,找到项目里的
- 更新依赖版本:要是你的
flutter_launcher_icons版本太老,可能和当前Flutter版本不兼容,去pubspec.yaml里把它更到最新稳定版,执行flutter pub get后再重新生成图标
要是这些步骤都试过还没解决,你可以补充下当前用的Flutter版本、flutter_launcher_icons版本,这样能更精准地排查问题~
备注:内容来源于stack exchange,提问作者yunus




