所以,我几乎已经完成了我的Android应用程序使用Flutter,现在我刚刚创建了图标使用Android工作室工具(右键单击“res”文件夹-〉新-〉图像资产...)。到目前为止一切顺利,但现在我有一个艰难的时间试图找出如何把应用程序图标在加载屏幕上。我目前所做的是:
在res/values下创建一个styles.xml文件:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="LaunchTheme" parent="@android:style/Theme.Black.NoTitleBar">
<item name="android:windowBackground">@drawable/launch_background</item>
</style>
</resources>
在res/drawable中创建一个launch_background. xml文件:
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" android:gravity="center">
<item android:drawable="@android:color/holo_green_light" />
<item>
<bitmap android:src="@mipmap/ic_launcher" />
</item>
</layer-list>
但是资产@mipmap/ic_launcher
没有解析...我完全不知道如何正确地指定它!
在AndroidManifest.xml中,我将主题定义为android:theme="@style/LaunchTheme"
,将图标定义为android:icon="@mipmap/ic_launcher"
......由于图标在安装后被应用程序正确使用,我不明白为什么manisfest中的问题得到解决,而另一个文件中的问题没有得到解决......我应该做什么?
3条答案
按热度按时间58wvjzkj1#
我喜欢Eric简单的回答,另外,flutter.dev网站上有详细的文档,说明如何在没有附加包的情况下完成此操作。
https://flutter.dev/docs/development/ui/splash-screen/android-splash-screen
ve7v8dk22#
因此,经过几次尝试,我使用以下配置解决了:
样式.xml:
启动_背景.xml:
相关的区别是我现在使用了一个可绘制的图标而不是位图。目前,它在发布模式(
flutter clean && flutter run --release
)下工作得很好,即使在调试模式下,在主Flutter部件实际呈现之前的几毫秒内会出现黑屏。zf9nrax13#
您可以使用开发依赖项包:https://pub.dev/packages/flutter_native_splash
添加
pubspec.yaml
声明你的图标启动器和颜色
他们说:
flutter pub get
flutter pub run flutter_native_splash:create