一种android显示系统动态设置调整的方法技术方案

技术编号:18425998 阅读:25 留言:0更新日期:2018-07-12 01:55
本发明专利技术提供一种android显示系统动态设置调整的方法,实现基于Android系统设备渲染原理和输入设备匹配机制,根据当前显示系统的方向,通过算法实现系统软件设置和硬件显示方向动态调整,改变显示设备的显示方向,比如横屏竖屏、反向横屏竖屏。

A method of dynamic setting adjustment for Android display system

This invention provides a method of dynamic setting adjustment of Android display system to realize the principle of equipment rendering based on Android system and the matching mechanism of input equipment. According to the direction of current display system, the system software setting and the direction of hardware display are dynamically adjusted, and the display direction of the display device is changed, such as the horizontal screen. Vertical screen, reverse horizontal screen vertical screen.

【技术实现步骤摘要】
一种android显示系统动态设置调整的方法
本专利技术涉及一种android显示系统动态设置调整的方法,其特征在于系统不需要重启就能改变设备显示方向。通过算法实现系统软件设置和硬件显示方向动态调整,改变显示设备的显示方向,比如横屏竖屏、反向横屏竖屏。
技术介绍
在现有技术中,android显示系统在开机初始化以后就固定下来了,虽然可以通过修改参数来配置,但是仍然需要重启设备来重新初始化整个显示系统,增加设备部署时间或者无法满足需要动态调整的应用场景。
技术实现思路
本专利技术提供一种android显示系统动态设置调整的方法,实现基于Android系统设备渲染原理和输入设备匹配机制,根据当前显示系统的方向,通过算法实现系统软件设置和硬件显示方向动态调整,改变显示设备的显示方向,比如横屏竖屏、反向横屏竖屏。为了达到专利技术目的,本专利技术采用如下技术方案:一种android显示系统动态设置调整的方法,使系统按动态调整显示系统;所述显示系统动态设置,通过算法实现系统软件设置和硬件显示方向动态调整,改变显示设备的显示方向,比如横屏竖屏、反向横屏竖屏。一种android显示系统动态设置调整的方法,包括以下步骤:步骤一,获取当前硬件层渲染设备显示方向和当前设备目标显示信息;步骤二,使用如下方法计算新的参数:①硬件渲染为横屏,软件目标显示参数不变;②硬件渲染为竖屏,软件目标为横屏的,参数映射为反向横屏;③硬件渲染为竖屏,软件目标为竖屏的,参数映射为反向竖屏;④硬件渲染为竖屏,软件目标为反向横屏的,参数映射为横屏;⑤硬件渲染为竖屏,软件目标为反向竖屏的,参数映射为竖屏;⑥硬件渲染为反向横屏,软件目标为横屏的,参数映射为反向横屏;⑦硬件渲染为反向横屏,软件目标为竖屏的,参数映射为反向竖屏;⑧硬件渲染为反向横屏,软件目标为反向横屏的,参数映射为横屏;⑨硬件渲染为反向横屏,软件目标为反向竖屏的,参数映射为竖屏;⑩硬件渲染为反向竖屏,软件目标为横屏的,参数映射为横屏;⑪硬件渲染为反向竖屏,软件目标为竖屏的,参数映射为竖屏;⑫硬件渲染为反向竖屏,软件目标为反向横屏的,参数映射为反向横屏;⑬硬件渲染为反向竖屏,软件目标为反向竖屏的,参数映射为反向竖屏。步骤三,将新的参数传递给WindowManagerService,刷新整个系统window界面。步骤四,将新的参数传递给surfaceflinger,更新渲染层方向。步骤五,将新的参数传递给InputReader,更新输入设备(例如触摸屏)的匹配方向。步骤六,保存新的参数到system.prop,以备在设备重启之后保留设置值。附图说明此处所说明的附图用来提供对本专利技术的进一步理解,构成本专利技术的一部分,本专利技术的示意性实施例及其说明用于解释本专利技术,并不构成对本专利技术的不当限定。在附图中:图1为本专利技术方法的流程框图。具体实施方式为了使本专利技术所要解决的技术问题、技术方案及有益效果更加清楚、明白,以下结合附图和实施例,对本专利技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本专利技术,并不用于限定本专利技术。Linux内核提供了统一的framebuffer显示驱动,设备节点/dev/graphics/fb*或者/dev/fb*,以fb0表示第一个显示屏。Android的HAL层提供了Gralloc,分为fb和gralloc两个设备。设备fb负责打开内核中的framebuffer以及提供post、setSwapInterval等操作,设备gralloc则负责管理帧缓冲区的分配和释放。上层只能通过Gralloc访问帧缓冲区,这样一来就实现了有序的封装保护。由于OpenGLES是一个通用的函数库,在不同的平台系统上需要被“本地化”——即把它与具体平台上的窗口系统建立起关联,这样才能保证它正常工作。从FramebufferNativeWindow就是将OpenGLES在Android平台上本地化窗口。OpenGL或者OpenGLES更多的只是一个接口协议,实现上既可以采用软件,也能依托于硬件。EGL通过读取egl.cfg配置文件,根据用户的设定来动态加载libagl(软件实现)或者libhgl(硬件实现)。然后上层才可以正常使用各种glXXX接口。SurfaceFlinger中持有一个GraphicPlane成员变量mGraphicPlanes来描述“显示屏”;GraphicPlane类中又包含了一个DisplayHardware对象实例(mHw)。DisplayHardware在初始化时还将调用eglInitialize、eglCreateWindowSurface等接口,并利用EGL完成对OpenGLES环境的搭建。由于本方案的目标是实现动态调整,设备不经过重新启动。所以硬件渲染层并不会在配置新参数以后重新初始化。这样就需要通过系统在软件层面上进行处理,实现新的显示方向。下面为一个android显示系统动态设置调整的方法:(1)获取当前硬件层渲染设备显示方向和当前设备目标显示信息。在设备初始化过程中,通过在底层和应用层中添加相关代码,截取设备信息并保存;(2)根据硬件参数和软件目标参数计算出系统当前需要映射的显示参数。使用如下方法计算新的参数;①硬件渲染为横屏,软件目标显示参数不变;②硬件渲染为竖屏,软件目标为横屏的,参数映射为反向横屏;③硬件渲染为竖屏,软件目标为竖屏的,参数映射为反向竖屏;④硬件渲染为竖屏,软件目标为反向横屏的,参数映射为横屏;⑤硬件渲染为竖屏,软件目标为反向竖屏的,参数映射为竖屏;⑥硬件渲染为反向横屏,软件目标为横屏的,参数映射为反向横屏;⑦硬件渲染为反向横屏,软件目标为竖屏的,参数映射为反向竖屏;⑧硬件渲染为反向横屏,软件目标为反向横屏的,参数映射为横屏;⑨硬件渲染为反向横屏,软件目标为反向竖屏的,参数映射为竖屏;⑩硬件渲染为反向竖屏,软件目标为横屏的,参数映射为横屏;⑪硬件渲染为反向竖屏,软件目标为竖屏的,参数映射为竖屏;⑫硬件渲染为反向竖屏,软件目标为反向横屏的,参数映射为反向横屏;⑬硬件渲染为反向竖屏,软件目标为反向竖屏的,参数映射为反向竖屏;(3)将新的参数传递给WindowManagerService,刷新整个系统window界面;(4)将新的参数传递给surfaceflinger,更新渲染层方向;(5)将新的参数传递给InputReader,更新输入设备(例如触摸屏)的匹配方向;(6)保存新的参数到system.prop,以备在设备重启之后保留设置值。本专利技术能够实现android显示系统动态设置调整的功能。上述说明示出并描述了本专利技术的优选实施例,如前所述,应当理解本专利技术并非局限于本文所披露的形式,不应看作是对其他实施例的排除,而可用于各种其他组合、修改和环境,并能够在本文所述专利技术构想范围内,通过上述教导或相关领域的技术或知识进行改动。而本领域人员所进行的改动和变化不脱离本专利技术的精神和范围,则都应在本专利技术所附权利要求的保护范围内。本文档来自技高网...

【技术保护点】
1.一种android显示系统动态设置调整的方法,其特征在于系统不需要重启就能改变设备显示方向;所述显示系统动态设置,通过算法实现系统软件设置和硬件显示方向动态调整,改变显示设备的显示方向,比如横屏竖屏、反向横屏竖屏。

【技术特征摘要】
1.一种android显示系统动态设置调整的方法,其特征在于系统不需要重启就能改变设备显示方向;所述显示系统动态设置,通过算法实现系统软件设置和硬件显示方向动态调整,改变显示设备的显示方向,比如横屏竖屏、反向横屏竖屏。2.根据权利要求1所述的android显示系统动态设置调整的方法,包括以下步骤:步骤一,获取当前硬件层渲染设备显示方向和当前设备目标显示信息;步骤二,使用如下方法计算新的参数:①硬件渲染为横屏,软件目标显示参数不变;②硬件渲染为竖屏,软件目标为横屏的,参数映射为反向横屏;③硬件渲染为竖屏,软件目标为竖屏的,参数映射为反向竖屏;④硬件渲染为竖屏,软件目标为反向横屏的,参数映射为横屏;⑤硬件渲染为竖屏,软件目标为反向竖屏的,参数映射为竖屏;⑥硬件渲染为反向横屏,软件目标为横屏的,参数映射为反向横屏;⑦硬件渲染为反...

【专利技术属性】
技术研发人员:唐仕斌王志强谢慧煌
申请(专利权)人:厦门四信通信科技有限公司
类型:发明
国别省市:福建,35

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1