【技术实现步骤摘要】
一种竖屏安卓应用适配PC显示器的方法
[0001]本专利技术属于在桌面操作系统上运行移动应用的开发
,具体涉及一种竖屏安卓应用适配PC显示器的方法。
技术介绍
[0002]Linux或Windows等桌面操作系统上的安卓兼容环境(下文简称安卓兼容环境)是一种在Linux或Windows操作系统上运行安卓应用的技术,对丰富操作系统应用生态有着重要的意义。通常是通过安卓兼容环境与安卓应用显示单元的配合实现安卓应用在桌面操作系统中的显示与使用,安卓应用显示单元位于桌面操作系统端。例如,运行于Linux系统上的安卓兼容环境一般由Host端和Guest端组成,Host端运行于Linux系统上,主要包括安卓容器和用户交互窗口,安卓容器的作用是从Linux系统中隔离出部分内核资源来支撑Guest端运行,Guest端主要包括特殊定制的安卓应用框架和安卓运行时库等,安卓应用都运行在Guest端。用户在Linux操作系统使用安卓应用时,安卓应用的窗口的实现方式为:Linux系统的窗口将句柄发送给运行于安卓容器中的安卓系统,由安卓系统渲染得 ...
【技术保护点】
【技术特征摘要】
1.一种竖屏安卓应用适配PC显示器的方法,其特征在于,具体包括以下步骤:步骤1、在桌面操作系统中创建具有与PC显示界面相同尺寸的、具有滚动条的应用容器窗口,所述应用容器窗口的宽为w1、高为h1;安卓应用的宽为w、高为h;在安卓兼容环境中建立虚拟显示窗口用于绘制安卓应用,所述虚拟显示窗口的宽w
vw
为 w1、高h
vw
为h*( w1/ w);步骤2、安卓应用显示单元获取应用容器窗口相对于虚拟显示窗口的偏移量,根据偏移量计算得到应用容器窗口的左上角和右下角在虚拟显示窗口内的坐标,并将应用容器窗口左上角坐标和右下角坐标作为关键坐标发送至安卓兼容环境内,安卓兼容环境根据所述关键坐标信息刷新DecorView;步骤3、在安卓兼容环境内,当虚拟显示窗口进行布局刷新时,检测所述关键坐标是否发生变化,若发生变化,则执行步骤4;否则,刷新DecorView,执行步骤3;步骤4、安卓兼容环境关闭vsync信号,遍历虚拟显示窗口的视图树中的所有视图,根据视图的属性及与应用容器窗口的位置关系,确定是否将该视图加入待刷新列表,再根据所述关键坐标更新待刷新列表中所有视图中的最小左上角坐标和最大右下角坐标,所述最小左上角坐标和最大右下角坐标确定最大矩形;若视图全部未出现在应用容器窗口内时,则不将该视图加入待刷新列表中;步骤5、将所述最大矩形所包含的视图刷新到安卓兼容环境的当前系统最新Layer列表中,遍历所述当前系统最新Layer列表将位于应用容器窗口之外的Layer从所述当前系统最新Layer列表中删除后,由当前系统最新Layer列表中的Layer构成混合Layer列表;步骤6、安卓兼容环境将OpenGL的观察矩阵设定为仅覆盖应用容器窗口,再将所述混合Layer列表中的所有Layer绘制到应用容器窗口内,形成待刷新OpenGL数据,将所述待刷新Open...
【专利技术属性】
技术研发人员:温研,
申请(专利权)人:北京麟卓信息科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。