到底改如何区分android的平板、电视、手机

在没有出现android电视之前,如果要区分平板和手机有很多种方法:

方法1:看是否有通话功能

 1 public boolean isTabletDevice() {
 2         TelephonyManager telephony = (TelephonyManager) mContext.getSystemService(Context.TELEPHONY_SERVICE);
 3         int type = telephony.getPhoneType();
 4         if (type == TelephonyManager.PHONE_TYPE_NONE) {
 5             Log.i("is Tablet!");
 6         } else {
 7             Log.i("is phone!");
 8         }
 9         return false;
10     }

方法2:通过判断屏幕尺寸,此方法中认为尺寸大于6寸的都是平板(不太靠谱,总有一天会有大于6寸的手机的出现)

 1 /**
 2       * 检测是平板(电视)还是手机
 3       * @return
 4       */
 5      private boolean isPad() {
 6
 7          DisplayMetrics dm = new DisplayMetrics();
 8          getWindowManager().getDefaultDisplay().getMetrics(dm);
 9          int width=dm.widthPixels;
10          int height=dm.heightPixels;
11          int dens=dm.densityDpi;
12          double wi=(double)width/(double)dens;
13          double hi=(double)height/(double)dens;
14          double x = Math.pow(wi,2);
15          double y = Math.pow(hi,2);
16          CommonUtils.LogWuwei(tag, "width is "+wi+" height is "+hi);
17          double screenInches = Math.sqrt(x+y);
18
19          CommonUtils.LogWuwei(tag, "screenInches is "+screenInches);
20
21         // MsgUtils.SendSingleMsg(splash.handlerTools,"screenInches is "+screenInches , HandlerUtils.SHOW_NORMAL_TOAST);
22
23          // 大于6尺寸则为Pad
24          if (screenInches >= 6.0) {
25           return true;
26          }
27
28          return false;
29         }
30
31      

现在的平板手机的出现,更是让方法2不再使用。

回到问题的本质,为什么要区分平板和手机?

区分的目的是为了区分针对不同的设备带来最佳的用户体验,那么对于大于6寸的android设备将其处理为平板是无可厚非的。

时间: 2024-10-12 19:04:55

到底改如何区分android的平板、电视、手机的相关文章

Android 使用ContentProvider扫描手机中的图片,仿微信显示本地图片效果

首先我们先看第一个界面吧,使用将手机中的图片扫描出来,然后根据图片的所在的文件夹将其分类出来,并显示所在文件夹里面的一张图片和文件夹中图片个数,我们根据界面元素(文件夹名, 文件夹图片个数,文件夹中的一张图片)使用一个实体对象ImageBean来封装这三个属性 package com.example.imagescan; /** * GridView的每个item的数据对象 * * @author len * */ public class ImageBean{ /** * 文件夹的第一张图片路

Android开发之控制手机音频

本实例通过MediaPlayer播放一首音乐并通过AudioManager控制手机音频,关于AudioManager的详解可参照:Android开发之AudioManager(音频管理器)详解 程序运行效果图: 实例代码: package com.jph.audiomanagerdemo; import android.media.AudioManager; import android.media.MediaPlayer; import android.os.Bundle; import an

Android中如何让手机屏幕不待机

在Android中,申请WakeLock可以让你的进程持续执行即使手机进入睡眠模式,比较实用的是比如后台有网络功能,可以保证操作持续进行. 方法: 在操作之前加入             PowerManager pm = (PowerManager) mContext.getSystemService(Context.POWER_SERVICE);             wakeLock = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, Con

android的一些常用手机信息获取

Android中与电话功能相关的类是 TelephonyManager ,此类中定义了很多常量,以下分类说明 获取以下信息需要在AndroidManifest.xml中指定权限 一. 数据连接状态 获取数据连接状态:int getDataState() 获取数据活动状态:int getDataActivity() 常用的有这几个: int DATA_ACTIVITY_IN 数据连接状态:活动,正在接受数据 int DATA_ACTIVITY_OUT 数据连接状态:活动,正在发送数据 int DA

如何判断设备是平板还是手机

现在市场是的手机尺寸一般都是小于6寸的,而平板一般是大于6寸的,所以可以通过计算设备的尺寸来判断设备是平板还是手机. 判断代码如下: public static boolean isTablet(Activity activity){ DisplayMetrics dm = new DisplayMetrics(); activity.getWindowManager().getDefaultDisplay().getMetrics(dm); double diagonalPixels = Ma

获取android的SDK或者手机目录路径

获取android的SDK或者手机目录路径 Google为我们提供了API来获取SDK或者手机目录路径: 1.获取SD卡目录 File file1 = Environment.getExternalStorageDirectory(); 2.获取手机内部存储空间的file目录 File file2 = getFilesDir(); 3.获取内部存储空间的缓存目录 File file3 = getCacheDir(); 4.检查SD是否被挂载 String state = Environment.

android 安卓APP获取手机设备信息和手机号码的代码示例

下面我从安卓开发的角度,简单写一下如何获取手机设备信息和手机号码 准备条件:一部安卓手机.手机SIM卡确保插入手机里.eclipse ADT和android-sdk开发环境 第一步:新建一个android工程(JinshanTest), 并需要在工程的AndroidManifest.xml文件中,添加权限 <uses-permission android:name="android.permission.READ_PHONE_STATE"/> 图例: 第二步:新建一个工具类

【源码分享下载】每日更新之Android项目源码---手机天气预报系统

Android项目源码---手机天气预报系统 服务分类: 其他 使用服务: 其他 功能分类: 生活 支持平台: Android 运行环境: Android 开发语言: Java 开发工具: Eclipse 源码大小: 6.17MB 下载地址:http://www.devstore.cn/code/info/104.html 源码简介 本项目是一个天气预报项目源码,可以设置城市.可以更换应用内背景图片.自带天气widget小组件等,天气信息由m.weather.com.cn提供.比较适合新手学习和

Android(安卓)手机登陆Exchange 2013邮箱帐号的配置

Android(安卓)手机登陆Exchange 2013邮箱帐号的配置 本博文介绍Android(安卓)手机配置Exchange 2013邮箱帐号,由于Android手机种类和固件版本太多,这里介绍比较通用的三星S5830的配置,请看步骤: 1.直接在应用程序中选择“电子邮件”,然后进入“设置电子邮件”界面如下, 输入邮箱地址和密码,点击“下一步”, 2.选择POP3帐户或IMAP(当然,选择这两种类型的提前是Exchange服务器已经启用了POP3或IMAP的服务), 3.在接收服务器设置界面