当我使用flutter create命令创建应用程序时,flutter标志将用作两个平台的应用程序图标。
如果我想改变应用程序的图标,我是否应该去两个平台的目录并替换那里的图像?我说的平台目录是myapp/ios/Runner/Assets.xcassets/AppIcon。apppiconset用于iOS, myapp/android/app/src/main/res用于android。
或者可以将图像定义为颤振资产和图标以某种方式生成?
当我使用flutter create命令创建应用程序时,flutter标志将用作两个平台的应用程序图标。
如果我想改变应用程序的图标,我是否应该去两个平台的目录并替换那里的图像?我说的平台目录是myapp/ios/Runner/Assets.xcassets/AppIcon。apppiconset用于iOS, myapp/android/app/src/main/res用于android。
或者可以将图像定义为颤振资产和图标以某种方式生成?
当前回答
没有任何包装
安卓
使用Android Asset Studio在Flutter项目的根目录中创建一个自适应启动器图标。 将生成的启动器图标文件添加到项目的android/app/src/main/res/mipmap-*/目录下。 编辑android/app/src/main/AndroidManifest.xml文件,并在标签下面添加如下一行:
<应用android:图标= " @mipmap / ic_launcher”>
运行flutter build apk命令生成带有新启动器图标的apk。
iOS
使用应用程序图标生成器在Flutter项目的根目录中创建自适应应用程序图标。 将生成的应用图标文件添加到项目的ios/Runner/Assets.xcassets/AppIcon。appiconset /目录中。 编辑ios/Runner/Info. conf文件。Plist文件,并在标签下面添加以下一行:
<key>CFBundleIconName</key>
<string>AppIcon</string>
运行flutter build ios命令生成带有新启动器图标的IPA。
其他回答
Flutter Launcher Icons已设计用于帮助快速生成Android和iOS的启动器图标:https://pub.dartlang.org/packages/flutter_launcher_icons
将包添加到您的pubspec中。yaml文件(在Flutter项目中)来使用它 pubspec之内。yaml文件指定图标的路径,你希望使用的应用程序,然后选择是否要使用图标的iOS应用程序,Android应用程序或两者。 运行包 瞧!默认的启动器图标现在已经替换为您的自定义图标
我希望在GitHub README中添加一个视频来演示它
演示如何运行该工具的视频可以在这里找到。
如果有人想提出改进建议/报告错误,请将其作为一个问题添加到GitHub项目中。
更新:截至2018年1月24日星期三,您应该能够创建新的图标,而不覆盖颤振项目中旧的现有启动器图标。
更新2:从v0.4.0(2018年6月8日)开始,你可以为Android图标指定一个图像,为iOS图标指定一个单独的图像。
更新3:截至v0.5.2(2018年6月20日),您现在可以为您的Flutter项目的Android应用程序添加自适应启动器图标
flutter_launcher_icons: ^ 0.11.0
将此添加到你的pubspec中。yaml文件
dev_dependencies:
flutter_launcher_icons: "^0.11.0"
flutter_icons:
android: "launcher_icon"
ios: true
image_path: "assets/icon/icon.png"
min_sdk_android: 21 # android min sdk min:16, default 21
# optionally, as transparency is not allowed on app store
# remove_alpha_ios: true
添加后,运行以下命令
$颤振酒吧得到
$ flutter pub运行flutter_launcher_icons:main
您必须将Flutter图标文件替换为您自己的图像。这个网站将帮助你把你的png转换成各种大小的启动器图标:
https://romannurik.github.io/AndroidAssetStudio/icons-launcher.html
像本地开发人员一样设置启动器图标
我在使用和理解flutter_launcher_icons包时遇到了一些麻烦。如果你是面向Android或iOS平台创造应用,你将如何做到这一点。一旦你做过几次,这是非常快速和简单的。
安卓
Android启动器图标有前景层和背景层。
(图片来自Android文档)
为Android创建启动器图标最简单的方法是使用Android Studio中提供的Asset Studio。你甚至不需要离开颤振项目。(VS Code用户,在这一步你可以考虑使用Android Studio。这真的非常方便,熟悉另一个IDE也无妨。)
右键单击项目大纲中的android文件夹。进入新建>图像资产。(尝试右键单击android/app文件夹,如果你没有看到图像资产作为一个选项。更多建议请参见下面的评论。)现在你可以选择一个图像来创建你的启动器图标。
注意:我通常使用1024x1024像素的图像,但你当然应该这样做 不要使用比512x512更小的东西。如果你正在使用Gimp或Inkscape,你 应该有两个图层,一个为前景,一个为 背景。前景图像应该有透明的区域 背景层显示通过。
(这里的狮子剪纸)
这将取代当前的启动器图标。你可以在mipmap文件夹中找到生成的图标:
如果您希望手动创建启动器图标,请参阅此回答以获得帮助。
最后,确保AndroidManifest中的启动器图标名称与上面所调用的相同(默认为ic_launcher):
application android:icon="@mipmap/ic_launcher"
在模拟器中运行应用程序,确认启动器图标已成功创建。
iOS
我以前总是手动调整iOS图标的大小,但如果你用的是Mac, Mac应用商店里有一个免费的应用程序,叫做Icon Set Creator。你给它一个图像(至少1024x1024像素),它会吐出你需要的所有大小(加上内容)。json文件)。感谢你对建议的回答。
iOS图标不应该有任何透明度。点击这里查看更多指南。
创建图标集后,启动Xcode(假设你有一台Mac),并使用它打开Flutter项目中的ios文件夹。然后转到Runner > Assets。xcassets并删除AppIcon项。
然后右键单击并选择Import....选择刚才创建的图标集。
就是这样。确认图标是通过在模拟器中运行应用程序创建的。
如果你没有Mac…
您仍然可以手工创建所有图像。在Flutter项目中,转到ios/Runner/Assets.xcassets/AppIcon.appiconset。
您需要的图像大小是文件名中的大小相乘。例如,Icon-App-29x29@3x.png将是29乘以3,即87像素的平方。您需要保持相同的图标名称,或者编辑JSON文件。
没有任何包装
安卓
使用Android Asset Studio在Flutter项目的根目录中创建一个自适应启动器图标。 将生成的启动器图标文件添加到项目的android/app/src/main/res/mipmap-*/目录下。 编辑android/app/src/main/AndroidManifest.xml文件,并在标签下面添加如下一行:
<应用android:图标= " @mipmap / ic_launcher”>
运行flutter build apk命令生成带有新启动器图标的apk。
iOS
使用应用程序图标生成器在Flutter项目的根目录中创建自适应应用程序图标。 将生成的应用图标文件添加到项目的ios/Runner/Assets.xcassets/AppIcon。appiconset /目录中。 编辑ios/Runner/Info. conf文件。Plist文件,并在标签下面添加以下一行:
<key>CFBundleIconName</key>
<string>AppIcon</string>
运行flutter build ios命令生成带有新启动器图标的IPA。