Android 判断当前设备是手机还是平板

Android开发需要适配手机和平板,有些需求实现时就要求判断设备是手机还是平板。
网上很多说通过设备尺寸、DPI、版本号、是否具备电话功能等进行判断,不过都不算太精确。
这里分享一个简洁给力的方法(官方用法):

技术分享
/**
 * 判断当前设备是手机还是平板,代码来自 Google I/O App for Android
 * @param context
 * @return 平板返回 True,手机返回 False
 */
public static boolean isPad(Context context) {
    return (context.getResources().getConfiguration().screenLayout
            & Configuration.SCREENLAYOUT_SIZE_MASK) 
            >= Configuration.SCREENLAYOUT_SIZE_LARGE;
}
技术分享

令附上是否具备电话功能判断方法(现在部分平板也可以打电话):

技术分享
public static boolean isPad(Activity activity) {
    TelephonyManager telephony = (TelephonyManager)activity.getSystemService(Context.TELEPHONY_SERVICE);
    if (telephony.getPhoneType() == TelephonyManager.PHONE_TYPE_NONE) {
        return true;
    }else {
        return false;
    }
}
技术分享

至于设备尺寸、分辨率、版本号,以目前手机来看,个人认为精度太差了,不建议使用。


其他精彩文章文章

android学习笔记(41)android选项菜单和子菜单(SubMenu )

android学习笔记(40)Notification的功能与用法

android学习笔记(42)android使用监听器来监听菜单事件

android学习笔记(43)android创建单选菜单和复选菜单

 jQuery教程(12)-ajax操作之基于请求加载数据

 jQuery教程(13)-ajax操作之追加 HTML

更多关于android开发文章


郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。