解决Android修改APP图标无效的问题
先说结论:这是图标适配的问题
问题描述
这是我一开始的修改方式:
修改图标后,在夜神模拟器及MIUI(Android 9)真机中正常,但在AndroidStudio默认模拟器及EMUI(Android 8.0.0)真机中修改无效。如下图:
MIUI(Android 9)真机
EMUI(Android 8.0.0)真机
AndroidStudio默认模拟器
解释原因
可以发现,方形图标可以正常显示,圆形图标则是默认图标。这是由于现在Android新建项目后会自动设置两个图标,icon和roundIcon。一个是普通图标,一个是圆形图标。但roundIcon是一个只适用在Android 7.1系统上的过渡版本,很快就被8.0系统的应用图标适配所替代了。
解决方法
首先说一下,Google官方推荐应用图标放在mipmap目录下。
方法一(入门新手)
很简单,将icon和roundIcon都修改一下就可以了。
方法二(入门新手)
由于activity的优先级高于application,所以我们在activity上添加即可。
方法三(标准方案,适配性好)
首先我们应该先知道,从Android 8.0开始,应用图标分为了前景层和背景层。因此我们要将前景和背景分离,前景用来显示Logo,背景用来衬托。
1. 在Android Studio中按Ctrl+Shift+A,输入Image Asset打开Asset Studio编辑器
2. 先选择前景,正常应该用SVG格式的图标,这里我们练习可以用.jpg等格式。
3. 拖动Resize,调整至合适大小
4. 设置背景,这里我就直接设置成白色了。
5. 点击Next,可能会提示会覆盖文件,继续Finish即可
6. 可以看到mipmap中的图标文件已被替换,并且做好了适配。
到此已经适配完成,效果如下图:
EMUI(Android 8.0.0)真机
MIUI(Android 9)真机