博客
关于我
如何区分 使用的是手机还是平板?
阅读量:609 次
发布时间:2019-03-12

本文共 508 字,大约阅读时间需要 1 分钟。

如何通过程序判断用户使用的是手机还是平板?

在解决这个问题时,我们首先尝试通过获取屏幕分辨率来区分手机和平板。通过获取屏幕宽度和高度的像素值,并结合每英寸的像素点数(DPI),我们可以计算出屏幕的实际尺寸。然而,经过多次测试和数据分析,我们发现仅凭分辨率无法有效地区分手机和平板,因为不同型号的设备分辨率差异较大,且部分手机和平板的分辨率重叠较多。

因此,我们转而尝试通过屏幕尺寸来判断设备类型。通过使用勾股定理计算屏幕对角线的长度,我们可以更直观地了解设备的实际尺寸。以下是我们测试的部分设备数据:

  • 华为MediaPad:宽度800像素,高度1216像素,DPI213。计算得到屏幕尺寸为5.8英寸。
  • 小米1S:宽度480像素,高度850像素,DPI240。计算得到屏幕尺寸为3.6英寸。
  • 小米2:宽度720像素,高度1280像素,DPI320。计算得到屏幕尺寸为4.47英寸。
  • 摩托罗拉MZ606:宽度800像素,高度1232像素,DPI160。计算得到屏幕尺寸为8.6英寸。

通过以上数据分析,我们发现屏幕对角线长度大于等于5英寸的设备通常被归类为平板电脑。这种方法简单有效,能够满足用户在大多数场景下的需求。

转载地址:http://yxmxz.baihongyu.com/

你可能感兴趣的文章
Netty WebSocket客户端
查看>>
Netty工作笔记0011---Channel应用案例2
查看>>
Netty工作笔记0014---Buffer类型化和只读
查看>>
Netty工作笔记0050---Netty核心模块1
查看>>
Netty工作笔记0084---通过自定义协议解决粘包拆包问题2
查看>>
Netty常见组件二
查看>>
netty底层源码探究:启动流程;EventLoop中的selector、线程、任务队列;监听处理accept、read事件流程;
查看>>
Netty核心模块组件
查看>>
Netty框架的服务端开发中创建EventLoopGroup对象时线程数量源码解析
查看>>
Netty源码—2.Reactor线程模型一
查看>>
Netty源码—4.客户端接入流程一
查看>>
Netty源码—4.客户端接入流程二
查看>>
Netty源码—5.Pipeline和Handler一
查看>>
Netty源码—6.ByteBuf原理二
查看>>
Netty源码—7.ByteBuf原理三
查看>>
Netty源码—7.ByteBuf原理四
查看>>
Netty源码—8.编解码原理二
查看>>
Netty源码解读
查看>>
Netty的Socket编程详解-搭建服务端与客户端并进行数据传输
查看>>
Netty相关
查看>>