Android - mipmap 和 drawable 的区别?

drawable主要用于普通图像资源,按3:4:6:8:12:16比例缩放适应不同密度屏幕。mipmap专为启动图标设计,考虑图标可能被放大,需提供更高密度版本以保证清晰度,推荐存放应用图标。在mipmap下,所有密度的资源都会保留在APK中,方便启动器选择最佳分辨率图标。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.drawable

在这里插入图片描述
六种主要密度之间的 3:4:6:8:12:16 缩放比。例如,如果您有一个可绘制位图资源,它在中密度屏幕上的大小为 48x48 像素,那么它在其他各种密度的屏幕上的大小应该为:

  • 36x36 (0.75x) - 低密度 (ldpi)
  • 48x48(1.0x 基准)- 中密度 (mdpi)
  • 72x72 (1.5x) - 高密度 (hdpi)
  • 96x96 (2.0x) - 超高密度 (xhdpi)
  • 144x144 (3.0x) - 超超高密度 (xxhdpi)
  • 192x192 (4.0x) - 超超超高密度 (xxxhdpi)
2.mipmap

只存放 png 和 webp 格式的启动图标

与其他所有位图资源一样,对于应用图标,您也需要提供特定于密度的版本。不过,某些应用启动器显示的应用图标会比设备的密度级别所要求的大差不多 25%。

例如,如果设备的密度存储分区为 xxhdpi,而您提供的最大应用图标密度级别为 drawable-xxhdpi,则启动器应用会放大此图标,这会导致它看起来不太清晰。因此,您应在 mipmap-xxxhdpi 目录中提供一个密度更高的启动器图标,而后启动器便可改用 xxxhdpi 资源。

由于应用图标可能会像这样放大,因此您应将所有应用图标都放在 mipmap 目录中,而不是放在 drawable 目录中。与 drawable 目录不同,所有 mipmap 目录都会保留在 APK 中,即使您构建特定于密度的 APK 也是如此。这样,启动器应用便可选取要显示在主屏幕上的最佳分辨率图标。

3.总结

1.mipmap是专门针对启动图标进行优化的目录,建议只存放应用图标
2.drawable 会在aab包的情况下自动舍弃其他密度,项目中的其他图片资源存放在 drawable
3.目前新建的项目 mipmap 文件夹下的图标都是.webp的启动图标,不再限制于.png

资料

(clwater)Android中drawable和mipmap到底有什么区别
(google)支持不同的像素密度

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值