I want to get real resolution of screen on Android Honeycomb.
Here\'s my code
Display display = getWindowManager().getDefaultDisplay();
int w = displ
A function to get the screen size at API11 level minimum; also includes methods for higher level APIs (change function to use the selected API, its function call and its return object type):
public int getScreenOrientation()
{
int nOrientation = Configuration.ORIENTATION_UNDEFINED;
try
{
DisplayMetrics displayMetrics = null;
WindowManager windowManager = (WindowManager) context.getSystemService(Context.WINDOW_SERVICE);
if(windowManager != null)
{
Display defaultDisplay = windowManager.getDefaultDisplay();
if(defaultDisplay != null)
{
defaultDisplay.getMetrics(displayMetrics);//API11
//defaultDisplay.getRectSize(rectGet);//API13
//defaultDisplay.getSize(pointGet);//API13
//defaultDisplay.getCurrentSizeRange(pointGet,pointGet);//API16
//defaultDisplay.getRealSize(pointGet);//API17
//defaultDisplay.getRealMetrics(displayMetrics);//API17
if((displayMetrics.widthPixels == displayMetrics.heightPixels) || (displayMetrics.widthPixels < displayMetrics.heightPixels))
{
nOrientation = Configuration.ORIENTATION_PORTRAIT;
}
else
{
nOrientation = Configuration.ORIENTATION_LANDSCAPE;
}
}
}
}
catch(Exception e)
{
showMessage(false,"Error","[getScreenOrientation]: " + e.toString());
}
return nOrientation;
}
Note: Configuration.ORIENTATION_SQUARE is deprecated, so here it is replaced to default to ORIENTATION_PORTRAIT.