安卓如何更改应用图标

5

我真的不知道如何更改应用程序安装时出现的图标,也就是你必须点击的屏幕上的图标。

我做了以下步骤:

  • 我创建了一个新的图标 --> 新建 > 图像资源(mipmap)
  • 我删除了ic_launcher(默认图标)
  • 我将新资源命名为旧图标的名称(ic_launcher)
  • 重新构建
  • 清理项目
  • 使缓存失效并重新启动
  • 安装应用程序

但什么都没有发生。我还是有一个让人烦恼的默认mipmap ic_launcher图标的应用程序。

我真的不知道该怎么做了...

有人可以帮帮我吗?

编辑: 抱歉,我忘了修改清单文件。

<application
    android:allowBackup="true"
    android:icon="@mipmap/ic_launcher"
    android:label="@string/app_name"
    android:supportsRtl="true" >
...
...
</application>

嘿,我卡在了同一个问题上。你能提供解决方案吗?https://dev59.com/XloU5IYBdhLWcg3we2-6 - suku
@suku 抱歉,我忘记做了。我在下面发布了我是如何解决我的问题的,希望能帮到你! - Pier Giorgio Misley
3
这回答解决了你的问题吗?为Android应用设置图标 - Josh Correia
10个回答

8

正如Suke所指出的,我忘记发布这个问题的解决方案了。对不起大家。

在经过许多管理之后,解决方案很容易,它是谷歌的一个解决方案。

这个链接就是你可以为Android项目创建所有图片的地方。

操作步骤:

  • 插入您的图像并选择所有功能
  • 下载它
  • 替换drawable-xxhdpi、drawable xhdpi等文件夹中的所有图像格式,并在mipmap-xxhdpi、mipmap-xhdpi等文件夹中进行相同处理。
  • 在清单中设置android:icon="@drawable/myicon"

这就是我的做法

希望能帮到您


我删除了有关 android:icon 的所有内容,然后从头开始创建,结果它起作用了。 - uzay95

2

我正在尝试,抱歉回复晚了,但是这些天我很忙。 - Pier Giorgio Misley
好的,稍微调整一下就可以了:我下载的zip文件是一个包含各种大小的mipmap文件夹的res文件夹。我必须将所有的mipmap文件夹重命名为drawable文件夹,现在它可以工作了。你知道为什么如果我引用一个mipmap图标,它不会改变,但如果我指向一个Drawable图标,它会改变吗? - Pier Giorgio Misley
是的,我知道,因为你的图标文件放在drawable文件夹中,如果你想要在mipmap文件夹中显示,则需要进行以下操作。 首先将文件ic_launncher(myIcon)放置在mipmap文件夹中,然后用以下代码替换manifests文件中的代码: 你只需要在mainfests文件中@符号后面替换文件夹名称即可。 - Muhammad Kashif Arif
用你的zip文件中的res文件夹替换你的应用程序res文件夹,然后你以前的mipmap代码就可以工作了。更多细节请查看我的新答案。 - Muhammad Kashif Arif

2

https://romannurik.github.io/AndroidAssetStudio/icons-launcher.html#foreground.space.trim=1&foreground.space.pad=0&foreColor=607d8b%2C0&crop=0&backgroundShape=square&backColor=ffffff%2C100&effects=none

使用上述提供的链接生成图标并下载zip文件后,从zip文件中提取res文件夹,然后用这个res文件夹覆盖你应用程序的res文件夹(例如将其粘贴到位置C:\ MyApplicaton \ app \ src \ main),这样你的代码中就会使用新的图标。

android:icon="@mipmap/ic_launcher"

将会起作用。
注意:通过覆盖res文件夹,它只会添加或覆盖mipmap文件夹,旧的文件夹将保持原样。

或者

你必须用上面给出的方法,根据图标大小在所有mipmap文件夹中替换ic_launcher图标为新的ic_launcher。

然后它就会起作用。

文件夹名称如下:

mipmap-hdpi

mipmap-mdpi

mipmap-xhdpi

mipmap-xxhdpi

然后按照以下代码,它将会起作用。

   <application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true" >
 ...
 ...
 </application>

我没有使用上述工具的理由,因为Android Studio本身会让你选择图片(除非你想要真正自定义的东西)。这个答案的重要部分是格式 - 现代版本使用mipmap而不是原始的-drawable。非常注意它在清单中的开放Activity标签中。虽然它允许你将其粘贴到此之外,但它将被忽略。 - Sasquatch

1
如果您仍然看到默认的Android图标,可以简单地修复它... 您可以使用此工具生成所有大小的图标。 https://appicon.co/ 在应用程序资源文件夹中解压缩mipmap调整大小的文件。 然后在/mipmap-anydpi-v26/文件夹中删除两个XML文件。
现在在清单文件中,在标记中,为android:icon和android:roundIcon设置您的图标。

1
在清单文件中,在 中添加 android:icon="@drawable/Icon",确保图标存在于文件夹中。

1

您可以在清单文件中的<application>标签下设置应用程序图标:

<application
    android:icon="@drawable/myIcon" >
</application>

那么,只需确保您的资源文件夹(hdpi、xhdpi等)中有一个文件(例如myIcon.png)即可。


你尝试过使用独特的名称吗?不确定是否使用“ic_launcher”名称会给你带来麻烦(保留字,也许?) - Rein S
1
ic_launcher只是默认名称。我会仔细检查确保在所有密度下使用相同的图标。 - phxhawke
抱歉回复晚了,但我最近很忙。我的图标都有相同的名称,我已经检查过了。我使用“图像资源”创建它们以确保它们是相同的,并进行了检查。:( - Pier Giorgio Misley

1

首先将 icon.png 文件粘贴到 drawable 文件夹中,然后按照下面的代码进行修改

    <application
          android:allowBackup="true"
          android:icon="@mipmap/icon"
          android:label="@string/app_name"
          android:supportsRtl="true" >

    </application>

抱歉回复晚了,这些天我很忙,我正在尝试着解决它 :) - Pier Giorgio Misley

1
正如其他人所指出的那样,我使用this link创建了一个图标。在我的情况下,我不得不将以下两个参数都调整为我在res中添加的图标名称。
<application
        android:icon="@mipmap/ic_launcher"
        android:roundIcon="@mipmap/ic_launcher">
</application>

0

如果您没有卸载旧图标的应用程序并在其上进行升级,则由于缓存,它可能会显示旧图标。强制停止应用程序可能有所帮助。


谢谢回复。我尝试了,卸载了应用程序并重新安装,但仍然不起作用 :( - Pier Giorgio Misley

0
还要确保使用新值更新android:roundIcon="@mipmap/ic_launcher_round",这适用于较新版本的Android。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接