app在手机上运行时,默认打开时是全屏的,所以获取的窗口尺寸为手机的屏幕尺寸
如果手机连接到大屏上(如华为手机,锤子手机等),打开的app不一定是全屏的,获取的窗口尺寸就不是全屏尺寸,
下面介绍一直方法,可以判断是否全屏
WindowManager mWm = (WindowManager)this.getSystemService(Context.WINDOW_SERVICE);
int mFullScreenSizeWidth = mWm.getDefaultDisplay().getMode().getPhysicalWidth();
int mFullScreenSizeHeight = mWm.getDefaultDisplay().getMode().getPhysicalHeight();
Point mDisplaySize = new Point();
int windowWidth = mWm.getDefaultDisplay().getSize(mDisplaySize);
if (mDisplaySize.x == mFullScreenSizeWidth && mDisplaySize.y == mFullScreenSizeHeight) {
//全屏逻辑
}
注意: getPhysicalWidth() 和 getPhysicalHeight() 获取的全屏宽高不一定是大屏幕的物理分辨率,只是app全屏运行时 surface的宽高,真正显示时,还需要 downScale或者upScale。