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

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

最近解决这个问题:如何区分 使用的是手机还是平板?

网上找到如下的解决办法:

怎样通过程序 判断 用户使用的是手机还是平板电脑?

DisplayMetrics dm;
dm = new DisplayMetrics();
this.getWindowManager().getDefaultDisplay().getMetrics(dm);
// 得到屏幕的宽
int  intScreenX = dm.widthPixels;
// 得到屏幕的高
int intScreenY = dm.heightPixels;
这个只能得到分辨率,像素的
像一些 手机 现在就有 960 *640 的了
7寸的平板 有些是 1024*600
而 后面新出来的像 HTC 的 手机,分辨率 已经上 1000 了
分辨率这条路走不通
查 系统版本 也走不通
平板有些还用的 2.3 的
三星手机的 4.0 的都马上出来了
需要的功能其实很简单,就是打开一个网页,如果是 手机,就打开 迷你的,比如 WAP
如果是 平板,估计就打开 WWW 的了
其实要的功能就纳闷简单,判断一下屏幕实际尺寸(英寸),7寸及以上(其实>6 就可以了,看个人)就认为是 平板了,就直接打开大网页了~~~

得到长宽,勾股定理 得到对角线,OK~~~

DisplayMetrics dm;                dm = new DisplayMetrics();                getWindowManager().getDefaultDisplay().getMetrics(dm);                // 得到屏幕的宽(像素)                int screenX = dm.widthPixels;                // 得到屏幕的高(像素)                int screenY = dm.heightPixels;                // 每英寸的像素点                int dpi = dm.densityDpi;                // 得到屏幕的宽(英寸)                float a = screenX / dpi;                // 得到屏幕的高(英寸)                float b = screenY / dpi;                // 勾股定理                double screenIn = Math.sqrt((a * a) + (b * b));
通过测量身边的几个设备得出以下参数:

华为mediapad     x=800 y=1216 dpi=213   a=3  b=5 screenIn=5.8

小米1s                  x=480  y=850   dpi=240   a=2  b=3 screenIn=3.6

小米2                    x=720  y=1280   dpi=320   a=2  b=4 screenIn=4.47

摩托罗拉MZ606  x=800 y=1232  dpi=160   a=5  b=7 screenIn=8.6

我觉得screenIn 大于等于5就是平板了 应该可以了

有机会拿三星平板测试

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

你可能感兴趣的文章
NHibernate学习[1]
查看>>
NHibernate异常:No persister for的解决办法
查看>>
Nhibernate的第一个实例
查看>>
NHibernate示例
查看>>
nid修改oracle11gR2数据库名
查看>>
NIFI1.21.0/NIFI1.22.0/NIFI1.24.0/NIFI1.26.0_2024-06-11最新版本安装_采用HTTP方式_搭建集群_实际操作---大数据之Nifi工作笔记0050
查看>>
NIFI1.21.0_java.net.SocketException:_Too many open files 打开的文件太多_实际操作---大数据之Nifi工作笔记0051
查看>>
NIFI1.21.0_Mysql到Mysql增量CDC同步中_日期类型_以及null数据同步处理补充---大数据之Nifi工作笔记0057
查看>>
NIFI1.21.0_Mysql到Mysql增量CDC同步中_补充_插入时如果目标表中已存在该数据则自动改为更新数据_Postgresql_Hbase也适用---大数据之Nifi工作笔记0058
查看>>
NIFI1.21.0_Mysql到Mysql增量CDC同步中_补充_更新时如果目标表中不存在记录就改为插入数据_Postgresql_Hbase也适用---大数据之Nifi工作笔记0059
查看>>
NIFI1.21.0_NIFI和hadoop蹦了_200G集群磁盘又满了_Jps看不到进程了_Unable to write in /tmp. Aborting----大数据之Nifi工作笔记0052
查看>>
NIFI1.21.0_Postgresql和Mysql同时指定库_指定多表_全量同步到Mysql数据库以及Hbase数据库中---大数据之Nifi工作笔记0060
查看>>
NIFI1.21.0最新版本安装_连接phoenix_单机版_Https登录_什么都没改换了最新版本的NIFI可以连接了_气人_实现插入数据到Hbase_实际操作---大数据之Nifi工作笔记0050
查看>>
NIFI1.21.0最新版本安装_配置使用HTTP登录_默认是用HTTPS登录的_Https登录需要输入用户名密码_HTTP不需要---大数据之Nifi工作笔记0051
查看>>
NIFI1.21.0通过Postgresql11的CDC逻辑复制槽实现_指定表多表增量同步_增删改数据分发及删除数据实时同步_通过分页解决变更记录过大问题_02----大数据之Nifi工作笔记0054
查看>>
NIFI1.21.0通过Postgresql11的CDC逻辑复制槽实现_指定表多表增量同步_增加修改实时同步_使用JsonPath及自定义Python脚本_03---大数据之Nifi工作笔记0055
查看>>
NIFI1.21.0通过Postgresql11的CDC逻辑复制槽实现_指定表多表增量同步_插入修改删除增量数据实时同步_通过分页解决变更记录过大问题_01----大数据之Nifi工作笔记0053
查看>>
NIFI1.21.0通过Postgresql11的CDC逻辑复制槽实现_指定表或全表增量同步_实现指定整库同步_或指定数据表同步配置_04---大数据之Nifi工作笔记0056
查看>>
NIFI1.23.2_最新版_性能优化通用_技巧积累_使用NIFI表达式过滤表_随时更新---大数据之Nifi工作笔记0063
查看>>
NIFI从MySql中增量同步数据_通过Mysql的binlog功能_实时同步mysql数据_根据binlog实现update数据实时同步_实际操作05---大数据之Nifi工作笔记0044
查看>>