起源
1、ui图

1、我们把这套UI放在了mipmap的不同文件夹下。 2、manifest文件的application节点下设置app的icon为该图片
**
2、运行结果
(1)google的 pixel2 手机模拟器上(android 8.0)
(2)vivo z1 (android 9.0)
(3)红米 note6(android 8.0)
发现问题: 1、google的pixel2 上图标适配有问题 2、安卓9.0上图标显示有问题
解决
1、显示默认安卓图标的解决方案
先看看安卓的mipmap目录:
其他的目录我们都知道了,但是这个v26 是啥呢?其实Android 8.0或以上系统的手机,都会使用这个目录下的ic_launcher来作为图标。(知道为啥我们9.0手机为啥显示默认图片了吧,即使你指定设置了app的图标)
(1)解决方式1
直接删除v26文件夹(简单粗暴)
(2)解决方式2
适配一套v26的xxx.xml资源(参考下文图标适配方案)
2、图标适配
安卓8.0以后google规定了app图标组成
前景foreground(我们自己提供,下参考图中的白色安卓机器人头像)
背景background(我们自己提供,下参考图中的蓝色网格背景)
mask(手机厂商提供,下参考图中的透明覆盖物即为面具,不同厂商面具可能不同,有圆的,方的等等)
图解参考
所以我们只需要提供前景背景即可
(1)开始适配-使用studio的image Assets工具
ctrl shift +a 打开工具(window)

(2)取来一张图片设置前景
1,2为文件命名。 3、为我们桌面上的一张图片。
(3)设置背景
背景我随便设置了白色
(4)点击finish
(5)生成结果
这时我们设置为生成的my_icon就行了
结果:
ps:问题1使用我们的图标适配方案也能解决,因为图标适配在v26中也会生成对应的xml
end
详细适配参考:https://blog.csdn.net/guolin_blog/article/details/79417483#commentsedit
多亏了郭神的分享,我在这里也简单的动手写下 。。。。。。。加深记忆。
