您需要先获取该软件包,然后运行以下命令更改图标。
$ flutter pub pub run flutter_launcher_icons:main
在 pubspec.yaml 中添加 flutter_launcher_icons: ^0.7.3 插件代码。
在 pubspec.yaml : 中:
flutter_icons:
image_path_android: "images/logoapp.png"
image_path_ios: "images/logoapp.png"
android: true
ios: true
运行命令:flutter pub get
运行命令:flutter pub pub run flutter_launcher_icons:main
运行命令:flutter clean
运行命令:flutter run
这对我有用。
按照以下步骤操作即可更改现在的图标。
我没有使用flutter_launcher_icons
,而是在Android项目中仅使用了Image Asset Studio。似乎在某些情况下,它没有更新我的自适应图标。
为了解决这个问题,我打开了Android模块(在Flutter视图中右键单击android/
文件夹,然后选择Flutter | 在Android Studio中打开Android模块)。然后,打开res/
文件夹并删除所有看起来像foreground.xml
的内容。根据我的理解,这是作为自适应图标的一部分由Image Asset Studio生成的。
然后通过Image Asset Studio重新创建自适应图标。
此时我的Flutter缓存已经损坏,所以我必须运行flutter pub cache repair
(我之所以提到这一点是因为也许这就是问题的解决方法,但我怀疑)。运行应用程序,然后你会发现图标已经更新。
对我来说,文件夹drawable-v24
是个问题。将其中的foreground.xml
删除后,它就可以工作了。
更新应用程序图标有两种方法:
1)第一种方法
dev_dependencies:
flutter_test:
sdk: flutter
flutter_launcher_icons: "^0.7.5"
flutter_icons:
image_path: "icon/appicon.png"
android: true
ios: true
运行这两个命令
flutter pub get
flutter pub run flutter_launcher_icons:main
2) 如果上述方法不起作用,那么可以尝试以下解决方案(在本地更改)
您可以从“图像资产”中更改应用程序图标,在项目结构的主文件夹上右键单击,然后选择“新建”->“图像资产”,现在只需选择您的图标并完成它,Android Studio将为您生成所有必要的图标。
同样,您也可以更改iOS应用程序图标:
iOS -> Runner -> Assets.xcassets -> Appicon.appiconset
然后使用您的新图标替换原有图标即可。
就是这样!
如果您在VS Code中更改flutter图标时遇到问题,请转到android / app / build.gradle。然后更改以下两个属性的值:
// minSdkVersion 26
// targetSdkVersion 30
然后进行相同的过程。
只需运行以下代码 然后运行您的应用程序。
ios/Runner/Assets.xcassets/AppIcon.appiconset
下有一个Contents.json
文件,其中包含以前的png文件的名称,这些名称与替换在该文件夹中的新文件不匹配。首先在pubspec.yaml文件中添加flutter_launcher_icons: ^0.8.1代码插件
在pubspec.yaml文件中:
flutter_icons: image_path_android:"images/logoapp.png" image_path_ios:"images/logoapp.png" android:true ios:true
检查iOS-Folder->Runner->Assets.xcassets->AppIcon.appiconset: 如果有重复的,请将其删除。
运行以下命令:flutter pub get 运行以下命令:flutter pub pub run flutter_launcher_icons:main 运行以下命令:flutter clean 运行以下命令:flutter run
这对我起作用了。
flutter pub get
和flutter pub pub run flutter_launcher_icons:main
命令吗? - Jerome Escalante