在某些版本的 android 上显示 flutter 应用程序图标的问题

问题描述

我有一个 Flutter 应用程序,在其中我使用 android studio 附带的图像资产工具在项目的 android 文件夹下生成了应用程序图标。在某些版本的 android 上,但是这个图标或 Flutter 的认图标都没有显示,这似乎告诉我这不仅仅是我提供的图标的问题,我反而得到了认的绿色 android:

enter image description here

enter image description here

上面的截图来自一个 android 5 模拟器(虽然现在已经很老了,它仍然在技术上受到 Flutter 的支持,所以我想测试一下),我在运行 android 7 的物理设备上遇到了同样的问题,但图标似乎在上面的任何版本上看起来都很好。我注意到的另一件事是多任务菜单中没有出现应用程序名称,但我不确定这是否是一个完全无关的问题。

如果有人能帮助我那就太好了,因为我无法弄清楚我需要在项目中放置哪些其他图标,因为我认为我已经涵盖了所有选项。谢谢。

编辑 - 这是我的应用程序的 android 清单:

root_dir\
  CMakeLists.txt
  libs\
    CMakeLists.txt
    level_1_lib\
      CMakeLists.txt
      file_using_cuda_lib.cpp
      cuda_library\
        CMakeLists.txt
        cuda_library.cu
        cuda_library.h

Res 文件夹:

enter image description here

解决方法

按照以下步骤在 Android Studio 中更改/自定义启动器徽标,

*在项目视图中展开项目根文件夹

*右键单击应用程序文件夹

*在上下文菜单中,转到 New->Image Asset

*在出现的弹出窗口中选择您想要的新徽标(图像/剪贴画/文本)。

*如果您选择了图像单选按钮(这是默认选择),如果您单击 3 个按钮以显示路径树来定位您的 .png 图像文件,您很可能没有看到它,因此,将它从 Windows 资源管理器(如果是 Windows)拖放到树中,它就会出现并准备好被选中。

**不要忘记在 manifest 中设置新图标的位置:在 android:icon 中将 drawable 替换为 minimap –

..........Mipmap 解决方案: enter image description here 正如你可以看到这个快照,我为每个版本设置了 Mipmap,你也可以遵循这个, 您必须为 anydpi-v26 创建一个 XML 文件

`<?xml version="1.0" encoding="utf-8"?>


<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
    <background android:drawable="@color/ic_launcher_background"/>
    <foreground android:drawable="@mipmap/ic_launcher_foreground"/>
</adaptive-icon>`