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

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_20172379/article/details/88713247

/**

  • 判断当前设备是手机还是平板,代码来自 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;
    }

通过计算设备尺寸大小的方法来判断是手机还是平板:

/**

  • 判断是否为平板
  • @return
    */
    private boolean isPad() {
    WindowManager wm = (WindowManager) getSystemService(Context.WINDOW_SERVICE);
    Display display = wm.getDefaultDisplay();
    // 屏幕宽度
    float screenWidth = display.getWidth();
    // 屏幕高度
    float screenHeight = display.getHeight();
    DisplayMetrics dm = new DisplayMetrics();
    display.getMetrics(dm);
    double x = Math.pow(dm.widthPixels / dm.xdpi, 2);
    double y = Math.pow(dm.heightPixels / dm.ydpi, 2);
    // 屏幕尺寸
    double screenInches = Math.sqrt(x + y);
    // 大于6尺寸则为Pad
    if (screenInches >= 6.0) {
    return true;
    }
    return false;
    }

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

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;
}
}

猜你喜欢

转载自blog.csdn.net/qq_20172379/article/details/88713247
今日推荐