我目前正在尝试使用我的Android应用支持更大范围的设备。然而,即使在阅读了Android Dev Guide对此问题的评论之后,我也不确定为什么我应该为ldpi,mdpi和hdpi提供不同的图形。
我知道图像会自动缩放,所以我只能提供hdpi图形,然后让设备完成剩下的工作。如果设备能够降低扩展质量吗?这会是性能问题吗?现在我更担心将APK大小乘以三。
答案 0 :(得分:5)
我可以想到两个原因:
答案 1 :(得分:2)
我猜想必须在性能和尺寸之间做出平衡的决定。如果您只提供hdpi图形,那么操作系统自然必须使用一些资源来缩小它以用于较低分辨率的设备。但是如果同时提供hdpi,mdpi和ldpi图形,则需要更多空间。
然而,在我看来,你担心将APK大小乘以3并不太重要。首先,如果你无论如何提供一个hdpi图形,添加一个mdpi和ldpi图形(两者都小于hdpi图形大小(大约有3:4:6 scaling ratio))会增加大小,但远不是三倍(更接近双倍)。其次,图形并不构成所有的APK大小,因此图像数量增加三倍也不会使APK大小增加三倍。最后:由于Android现在支持应用程序到SD,因此应用程序的大小并不像早期版本那么重要。
答案 2 :(得分:0)
如果缩放质量会降低 设备做到了吗?
这是我做这件事的原因之一。对于大多数图像,我认为内置的缩放器会做得很好。但是,大多数图标(启动器图标,通知图标)由于尺寸小而特定于像素。在这些情况下,手动制作较小的版本会比自动缩放产生更清晰的结果。
答案 3 :(得分:0)
原因在于,如果您想在hdpi设备中显示某些内容(每英寸的像素密度更高),则需要更多像素来表示相同的视觉尺寸。
你可以让操作系统缩放图像,但它可能看起来很模糊。