有没有设备抽象dpi和屏幕尺寸的列表?

19

据我了解,设备的匹配dpi和尺寸限定符不是基于实际屏幕属性(物理dpi和尺寸),而是根据设备制造商预定义的内容。

是否有不同设备的抽象dpi/尺寸列表?


2
是的:http://blog.blundell-apps.com/list-of-android-devices-with-pixel-density-buckets/ 请随意评论您的设备。 - Blundell
7个回答

29
我认为有些误解。这不是制造商可以随意选择的自由环境。确实,他们在选择密度方面有一些灵活性,但不多——最终密度与物理屏幕分辨率结合在一起明确地导致一个屏幕桶,映射的方式由平台指定。所选的密度几乎总是符合设备实际DPI预期的密度。制造商可能会通过提高密度来推动它——这会导致屏幕上的UI更大,并且很可能移动到较小的屏幕大小桶中——但这非常罕见。
因此,320x240的屏幕只能是小型低密度屏幕。没有别的。
480x320屏幕的设备普遍都是正常大小的中等密度。
480x800(或x852)屏幕的设备在绝大多数情况下是正常大小的高密度屏幕。有一些像Dell Streak这样具有大型480x800屏幕的罕见设备,这些是中等密度屏幕和大桶。您可以通过屏幕大小来判断设备是否是这样。 :}
搭载qHD屏幕的设备无法升级到xhdpi桶(试试看,您会得到一个过于小而无法兼容的屏幕),因此这些仍然是高密度屏幕,也仍然是正常大小,因为它们没有足够大,以至于要放在大桶中。换句话说,这只是另一个带有稍微多一点布局空间的手机屏幕。
您看到的10英寸平板电脑分辨率为1280x800或1280x720。这些是mdpi屏幕,处于xlarge桶中。
Android 3.2支持7英寸的屏幕,通常为1024x720 mdpi。这些最终进入大尺寸桶中。
当然,您可以想象许多其他屏幕,但我不知道有哪些设备正在使用它们,并且鉴于我们已经涵盖了小、正常、大和xlarge,他们实际上并没有什么特别之处。例如,640x480像素的手机大小屏幕将是hdpi密度和小屏幕桶。

2
这里有一篇新发布的博客文章,可能会提供更多有用的信息:http://android-developers.blogspot.com/2011/07/new-tools-for-managing-screen-sizes.html - hackbod
1
有没有办法获取设备的实际ppi(或者至少是物理屏幕尺寸(英寸或毫米)来计算实际ppi)?我还没有找到方法... - ashughes
1
忘记在DisplayMetrics中提及xdpi和ydpi,但它们不返回正确的值... - ashughes
是的,不要使用xdpi和ydpi,它们不可靠。很抱歉目前没有办法获取物理dpi。 - hackbod
1
@hackbod 非常有用的回答,我根据您的回答设计了我的应用程序,考虑了不同设备的尺寸和dpi,现在在很多设备上都运行得非常“流畅”。唯一的例外是三星Galaxy Note:它的桶是xlarge,dpi比hdpi更高。[来自http://www.gsmarena.com/samsung_galaxy_note-4135.php]。您对此有何看法? - user517491
显示剩余2条评论

6

我需要抽象的密度(ldpi/mdpi/hdpi),而不是实际的物理像素密度。 - Fixpoint
例如,哪些设备保证具有“小”屏幕尺寸?(这样我就可以请求它们来测试我的应用程序) - Fixpoint
1
HTC WildFire的屏幕较小,像素密度低。 - louiscoquio
ASUS Eee Pad即将拥有ldpi xlarge屏幕,但据我所知它尚未发布。它的实际dpi约为160。 - Michael

3

3

它包含实际大小,而不是抽象的限定符。 - Fixpoint
页面已被删除! - AbdulMomen عبدالمؤمن

2

这些尺寸数据来自维基百科,如果想更好地理解像素密度,请查看Teehan+Lax的这篇优秀文章。

屏幕尺寸


1

我在Android开发者网站上找到了这个答案

  • LDPI = 120dpi
  • MDPI = 160dpi
  • HDPI = 240dpi
  • XHDPI = 320dpi
  • XXHDPI = 480dpi

0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接