Thursday, January 2, 2014

How to Get Android Phone Display Density and Ratio

Get Android Phone Display Density and Ratio

This post about how to get display density for different type of  android  phone.
Android have different kind of device resolution based on the resolution we need an image
See the Below example Different resolution ratio.


ldpi = 1:0.75
mdpi = 1:1
hdpi = 1:1.5
xhdpi = 1:2
xxhdpi = 1:3
xxxhdpi = 1:4

For example
 mdpi   (320*1)*(50*1)       =  320 *50(1 : 1)
ldpi (320*0.75)*(50*0.75)  =  240 * 37.5(1 : 0.75)
hdpi (320*1.5)*(50*1.5)    = 480 *75 (1:1.5)
xhdpi (320*2)*(50*2)        =  640 * 100(1:2)
xxhdpi (320*3)*(50*3)      =  960 * 150(1:3)

get Device Display Density

private void checkDeviceDensity(){
              int dpiDensity = getResources().getDisplayMetrics().densityDpi;
              switch(dpiDensity){
           case DisplayMetrics.DENSITY_LOW:
             
              Log.e("sdk", "::::DENSITY_LOW::::");
               //Do sth for LDPI-screen devices
               break;
           case DisplayMetrics.DENSITY_MEDIUM:
               //Do sth for MDPI-screen devices
              Log.e("sdk", "::::DENSITY_MEDIUM::::" +adwidth +adheight);
               break;
           case DisplayMetrics.DENSITY_HIGH:
               //Do sth for HDPI-screen devices
              Log.e("sdk", "::::DENSITY_HIGH::::");
               break;
           case DisplayMetrics.DENSITY_XHIGH:
               //Do sth for XHDPI-screen devices
              Log.e("sdk", "::::DENSITY_XHIGH::::");
               break
           case DisplayMetrics.DENSITY_XXHIGH:
               //Do sth for XHDPI-screen devices
              Log.e("sdk", "::::DENSITY_XXHIGH::::");
               break;
           case DisplayMetrics.DENSITY_XXXHIGH:
               //Do sth for XHDPI-screen devices
              Log.e("sdk", "::::DENSITY_XXXHIGH::::");
               break;
       }
       }





Check out this may be help you

Related Posts Plugin for WordPress, Blogger...