android - 我无法将启动画面中的默认 flutter 图标更改为我在 flutter 中选择的图像

标签 android flutter

我的 launch_background.xml

    <?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item>
        <bitmap android:gravity="fill" android:src="@drawable/background"/>
    </item>
</layer-list>

我在 drawable-v21 中的 launch_background.xml

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item>
        <bitmap android:gravity="fill" android:src="@drawable/background"/>
    </item>
</layer-list>

我的安卓 list :

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.my_app">
    <uses-permission android:name="android.permission.INTERNET" />
   <application
        android:label="my_app"
        android:name="${applicationName}"
        android:icon="@mipmap/ic_launcher">
        <activity
            android:name=".MainActivity"
            android:theme="@style/LaunchTheme"
            android:exported="true"
            android:launchMode="singleTop"
            android:configChanges="orientation|keyboardHidden|keyboard|screenSize|smallestScreenSize|locale|layoutDirection|fontScale|screenLayout|density|uiMode"
            android:hardwareAccelerated="true"
            android:windowSoftInputMode="adjustResize">
            <!-- Specifies an Android theme to apply to this Activity as soon as
                 the Android process has started. This theme is visible to the user
                 while the Flutter UI initializes. After that, this theme continues
                 to determine the Window background behind the Flutter UI. -->
            <meta-data
              android:name="io.flutter.embedding.android.NormalTheme"
              android:resource="@style/NormalTheme"
              />
            <intent-filter>
                <action android:name="android.intent.action.MAIN"/>
                <category android:name="android.intent.category.LAUNCHER"/>
            </intent-filter>
        </activity>
        <!-- Don't delete the meta-data below.
             This is used by the Flutter tool to generate GeneratedPluginRegistrant.java -->
        <meta-data
            android:name="flutterEmbedding"
            android:value="2" />
    </application>
    
</manifest>

我可以更改背景颜色,但图像始终是 android:icon="@mipmap/ic_launcher">。无论我做什么(在 Android 上)。

最佳答案

问题的根源是you need to set <item name="android:windowSplashScreenAnimatedIcon">@drawable/...</item>在你的values-v31/styles.xml文件。然而,flutter_native_splash 2.1.0刚刚添加了新的配置参数,用于在 Android 12 中自动设置启动画面图标的图标:

  android_12:
    # The image parameter sets the splash screen icon image.  If this parameter is not specified,
    # the app's launcher icon will be used instead.
    # Please note that the splash screen will be clipped to a circle on the center of the screen.
    # App icon with an icon background: This should be 960×960 pixels, and fit within a circle
    # 640 pixels in diameter.
    # App icon without an icon background: This should be 1152×1152 pixels, and fit within a circle
    # 768 pixels in diameter.
    #image: assets/android12splash.png

    # App icon background color.
    #icon_background_color: "#111111"

    # The image_dark parameter and icon_background_color_dark set the image and icon background
    # color when the device is in dark mode. If they are not specified, the app will use the
    # parameters from above.
    #image_dark: assets/android12splash-invert.png
    #icon_background_color_dark: "#eeeeee"

完全披露:我维护这个包。

关于android - 我无法将启动画面中的默认 flutter 图标更改为我在 flutter 中选择的图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71366271/

相关文章:

dart - 多次打开页面错误

android - 我希望在打开应用程序后关闭通知

android - ShapeableImageView 的笔画被边框切割

java - 添加雷达图,在 Android 上编程

flutter - 将 map 与AssetImage一起使用

flutter - 为什么没有定义 ChangeNotifierProvider 类?

Flutter:在 Android 上获取本地 IP 地址

Android撤销 View 动画

android - Button.setTextPosition(Label.LEFT);渲染错误

flutter - 单击IconButton()时删除单击效果