基于此仪表板https://developer.android.com/about/dashboards/:92%的Android设备是“正常尺寸与hdpi-xxhdpi密度”
不幸的是,这些信息无助于理解这些设备的近似分辨率。当我在不同的网站上挖掘以了解屏幕尺寸和密度的概念时,我发现了以下概念:
正常屏幕至少为470dp x 320dp
大屏幕至少640dp x 480dp
xlarge屏幕至少为960dp x 720dp
由于xxxhdpi指的是x4规模,我希望如下:
具有xxhdpi密度的普通屏幕将<1880x1280像素(典型值为1920x1080?)
xxhdpi密度大的屏幕将<2560x1920像素(典型值为2560x1440)
但后来我找到了这张桌子-https://material.io/tools/devices/
它根本不适合。例如:
如您所见,具有相同屏幕的设备会进入不同的存储桶。
任何人都能说出我的假设有什么问题吗?
我需要这个的原因是因为我开发了Android游戏,我想优化它。我对艺术的参考分辨率是2732 x 2048(移动设备的最大分辨率)。我想为通常的1920x1080和更低的分辨率构建单独的APK,因此它将节省用户设备上的磁盘空间和RAM。
在构建Android应用程序时,了解DPI(每英寸点数)值非常重要,但是如果您不确定用户使用的移动设备,则dpi可能会有所不同,因此,PPI的概念(Pixel Per Inch)发挥作用。您的假设问题是,在考虑PPI和DPI时,始终保留DPI并选择PPI,因为它会给您一个准确的结果。这两款手机都有不同的PPI,因此,与xxhdpi相比,Nexus6P的xxxhdpi上升了。注4
XXXHDPI =每平方英寸额外超高点数。
XXHDPI =每平方英寸额外的超高点数。
请注意其中一个'额外'的完整形式。
drawable-xxhdpi, 480 PPI (3 x 160 PPI)
drawable-xxxhdpi, 640 PPI (4 x 160 PPI)
正如您所看到的那样,PPI会有所不同,因此,Nexus 6P的PPI介于该范围之间。