K2Mini双屏异显开发说明

K2mini是一个特殊的双屏自助终端设备,两块屏幕可以自由设置主副屏,您可以参考以下代码对设备副屏进行适配, 保障您的业务正常进行:

双屏功能:
双屏使用的是Presentation类来实现双屏异显:
首先是权限
创建一个类继承Presentation
publicclassTextDisplayextendsPresentation


获得真实存在的副屏

publicDisplaygetPresentationDisplays(){
DisplayManagermDisplayManager=(DisplayManager)get
SystemService(Context.DISPLAY_SERVICE);
displays=mDisplayManager.getDisplays();
for(inti=0;i‹displays.length;i++){
Log.e(TAG,“屏幕”+displays[i]);
if((displays[i].getFlags()&Display.FLAG_SECURE)!=0
&&(displays[i].getFlags()&Display.FLAG_SUPPORTS_PR
OTECTED_BUFFERS)!=0
&&(displays[i].getFlags()&Display.FLAG_PRESENTATION)
!=0){
Log.e(TAG,“第一个真实存在的副屏屏幕”+displays[i]);
returndisplays[i];
}
}
returnnull;
}

显示副屏

textDisplay=newTextDisplay(this,getPresentationDisplays());

textDisplay.show();

特殊说明:
如果希望主屏Activity返回桌面后,副屏View仍然显示,可
以使用如下代码完成:

getWindow()/*副屏的
Window*/.setType(WindowManager.LayoutParams.TYPE_SY
STEM_OVERLAY);

注意:普通应用添加此类型Window时,需要使用如下代码申请权限

if(!Settings.canDrawOverlays(this)){
Toast.makeText(this,"请同意显示窗口权限",To
ast.LENGTH_SHORT).show();
startActivity(newIntent(Settings.ACTION_MAN
AGE_OVERLAY_PERMISSION));
}