一种基于安卓系统的双屏显示方法及电子设备与流程

文档序号:15736448发布日期:2018-10-23 21:33阅读:338来源:国知局

本发明涉及界面显示领域,尤其涉及一种基于安卓系统的双屏显示方法及电子设备。



背景技术:

安卓(Android)是一种基于Linux的自由及开放源代码的操作系统,主要用于移动设备,如智能手机和平板电脑,目前,虚拟现实设备的系统一般也是基于安卓系统进行开发。

由于采用安卓系统的常规移动设备只需要一个显示界面,而虚拟现实(VR;Virtual Reality)设备需要左右两个显示界面,即左眼显示界面和右眼显示界面,分别提供给用户的左眼和右眼观看,将常规安卓系统运用在VR设备上时,安卓系统原本的显示界面,如:对话框,不能满足VR设备的需求,很多地方需要人为手动的布局左右两个一样的视图,从而将常规安卓系统的单屏显示修改为适应VR设备的双屏显示,目前,开发者只能逐一查找这些地方并修改,这种修改方式需要耗费大量时间,且很有可能导致失误或者漏掉某些地方。

可将,现有技术中存在,在将安卓系统的单屏显示修改为适应VR设备的双屏显示时,需要耗费大量时间,且准确性低的技术问题。



技术实现要素:

本发明的目的是提供一种基于安卓系统的双屏显示方法及电子设备,用以解决现有技术中存在的,在将安卓系统的单屏显示修改为适应VR设备的双屏显示时,需要耗费大量时间,且准确性低的技术问题。

为了实现上述发明目的,本发明实施例第一方面提供一种基于安卓系统的双屏显示方法,包括:

加载待显示对象的布局文件;

基于所述布局文件进行绘制,生成所述待显示对象的源视图;

复制所述源视图,生成复制视图;

将所述源视图和所述复制视图分别作为电子设备的左眼视图和右眼视图进行显示。

可选的,将所述源视图和所述复制视图分别作为电子设备的左眼视图和右眼视图进行显示,包括:

将所述源视图和所述复制视图按照所述左眼视图和所述右眼视图的预定布局方式添加到视图容器中;

将所述视图容器中的所述源视图和所述复制视图显示在所述电子设备的显示屏上。

可选的,所述方法还包括:

获取用户的瞳距;

根据所述瞳距,设置所述左眼视图和所述右眼视图在所述显示屏上的显示位置,使得所述左眼视图与所述右眼视图之间的距离与所述瞳距匹配。

可选的,所述待显示对象为对话框或浏览器显示界面。

本发明实施例第二方面提供一种电子设备,包括:

加载模块,用于加载待显示对象的布局文件;

绘制模块,用于基于所述布局文件进行绘制,生成所述待显示对象的源视图;

复制模块,用于复制所述源视图,生成复制视图;

显示模块,用于将所述源视图和所述复制视图分别作为电子设备的左眼视图和右眼视图进行显示。

可选的,所述显示模块包括:

添加子模块,用于将所述源视图和所述复制视图按照所述左眼视图和所述右眼视图的预定布局方式添加到视图容器中;

显示子模块,用于将所述视图容器中的所述源视图和所述复制视图显示在所述电子设备的显示屏上。

可选的,所述电子设备还包括:

获取模块,用于获取用户的瞳距;

设置模块,用于根据所述瞳距,设置所述左眼视图和所述右眼视图在所述显示屏上的显示位置,使得所述左眼视图与所述右眼视图之间的距离与所述瞳距匹配。

可选的,所述待显示对象为对话框或浏览器显示界面。

本发明实施例中的一个或者多个技术方案,至少具有如下技术效果或者优点:

本发明实施例的方案中,通过加载待显示对象的布局文件,基于所述布局文件进行绘制,生成所述待显示对象的源视图,然后复制源视图,生成复制视图,并将所述源视图和所述复制视图分别作为电子设备的左视图和右眼视图进行显示。可见,在待显示对象的布局文件为单屏显示文件时,通过复制源视图,生成复制视图,并将源视图和复制视图分别作为VR设备的左眼视图和右眼视图进行显示,可以将单屏显示自动布局成双屏显示,从而解决现有技术存在的,在将安卓系统的单屏显示修改为适应VR设备的双屏显示时,需要耗费大量时间,且准确性低的技术问题,从而节约修改时间,提高准确性。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图:

图1为本发明实施例提供的基于安卓系统的双屏显示方法的流程图;

图2为本发明实施例提供的电子设备的功能模块示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明实施例中,电子设备可以为VR设备,AR(Augmented Reality;增强现实)设备等。双屏显示是指电子设备显示的视图包括左眼视图和右眼视图,分别提供给用户的左眼和右眼观看。电子设备可以包括一个显示屏,在该显示屏的一部分区域上显示左眼视图,另一部分区域上显示右眼视图;电子设备也可以包括两个显示屏,在一个显示屏上显示左眼视图,在另一个显示屏上显示右眼视图。

本发明实施例中,双屏显示方法可以基于安卓系统,也可以基于苹果系统或微软系统等,本发明对此不作限制。

请参考图1,图1为本发明实施例提供的基于安卓系统的双屏显示方法的流程图,该方法包括以下步骤。

步骤10,加载待显示对象的布局文件。

在步骤10中,待显示对象可以为对话框、浏览器显示界面等等。其中,对话框是指在显示屏上弹出的一个可以让用户做出一个选择,或者输入额外信息的界面,一个对话框并不会占满整个显示屏幕;浏览器显示界面是指设备运行浏览器时,浏览器的窗口显示界面。

待显示对象的布局文件可以是安卓系统自带的布局文件,安卓系统自带的布局文件均为单屏显示文件,待显示对象的布局文件也可以是VR设备的系统开发者添加的单屏显示文件,本发明对此不作限制。

步骤11,基于所述布局文件进行绘制,生成所述待显示对象的源视图。

在步骤11中,系统将布局文件中包括的一个或多个图层绘制出来,生成源视图。举例来讲,假设待显示对象为对话框,对话框包括可以包括多个图层,分别为对话框的顶部名称、中间的信息和底部的按钮,则在绘制时,系统将对话框的名称、信息和按钮绘制出来,从而生成对话框的源视图。

步骤12,复制所述源视图,生成复制视图。

在具体实施过程中,可以在步骤11进行源视图绘制时,添加监听函数,获取缓存图片,缓存图片即源视图,然后,定义一个Imageview,设置Imageview的图片资源为步骤11中获取的缓存图片,则Imageview的功能是复制源视图绘制后生成的视图。举例来讲,沿用上述待显示对象为对话框的例子,对话框的源视图中包括名称、信息和按钮,则复制视图中也包括名称、信息和按钮。

步骤13,将所述源视图和所述复制视图分别作为电子设备的左眼视图和右眼视图进行显示。

具体的,在通过步骤11和步骤12生成源视图和复制视图后,可以将源视图作为左眼视图进行显示,并将复制视图作为右眼视图进行显示;或者将源视图作为右眼视图进行显示,将复制视图作为左眼视图进行显示,从而适应VR设备的双屏显示。

可见,通过上述方案,可以将安卓系统自带的布局文件,即单屏显示文件,或VR设备的开发者添加的单屏显示文件自动布局为双屏显示文件,以提供给VR设备进行显示,开发者不需要逐一查找安卓系统自带的单屏显示文件,并进行修改,从而节约修改时间,提高准确性。

需要说明的是,在手动修改安卓系统的单屏显示文件时,手动布局的左眼视图和右眼视图是一样的,本发明实施例的方案中,通过复制源视图,并将源视图和复制视图分别作为左眼视图和右眼视图进行显示,和逐一对单屏显示文件进行修改的显示效果是一样的。

在具体实施过程中,步骤13包括将所述源视图和所述复制视图按照所述左眼视图和所述右眼视图的预定布局方式添加到视图容器中,然后,将所述视图容器中的所述源视图和所述复制视图显示在所述电子设备的显示屏上。

本发明实施例中,视图(view)是一个数据结构,视图中存储了显示屏幕上一个特定的区域的布局和内容属性的数据,视图容器(ViewGroup)就是视图的容器,通过视图容器可将视图添加进来。则本发明实施例中,可以将源视图和复制视图按照左眼视图和右眼视图对应的预定布局方式添加到视图容器中,预订布局方式可以为:容器左边放置源视图,容器右边放置复制视图,则在显示时将源视图作为左眼视图进行显示,复制视图作为右眼视图进行显示;或者,预定布局方式也可以为:容器右边放置源视图,容器左边放置复制视图,则在显示时将源视图作为右眼视图进行显示,复制视图作为左眼视图进行显示。

然后,将所述视图容器中的所述源视图和所述复制视图显示在所述电子设备的显示屏上。具体的,系统应用程序调用SurfaceFlinger服务,并与SurfaceFlinger服务进行通信,从而将视图容器中的数据(包括源视图和复制视图)渲染到系统的硬件帧缓冲区上,然后VR设备将帧缓冲区中的数据显示到显示屏上。其中,SurfaceFlinger服务是指安卓系统的系统服务,负责管理安卓系统的帧缓冲区,即显示屏幕。

本发明实施例中,为了使得电子设备最终显示的左眼视图和右眼视图适应用户的瞳距,减缓用户的视觉疲劳,所述方法还包括:获取用户的瞳距,并根据所述瞳距,设置所述左眼视图和所述右眼视图在所述显示屏上的显示位置,使得所述左眼视图与所述右眼视图之间的距离与所述瞳距匹配。

其中,用户的瞳距可以为VR设备中预先设置的值,也可以为在用户佩戴VR设备之后,通过拍摄人眼图像和图像分析计算获得的值;然后,根据瞳距值,设置左眼视图和右眼视图在显示屏上的显示位置,使得左眼视图和右眼视图之间的距离与用户的瞳距相同,从而达到减缓用户视觉疲劳的技术效果。其中,左眼视图与所述右眼视图之间的距离是指,左眼视图的中心点和右眼视图的中心点之间的距离。

在具体实施过程中,可以设置左眼视图和右眼视图在显示屏中的偏移值,偏移值可以为向左偏移的值或者向右偏移的值,从而对左眼视图和右眼视图在显示屏上的显示位置进行设置。当然,也可以直接设置左眼视图和右眼视图在显示屏上的坐标位置,从而对左眼视图和右眼视图在显示屏上的显示位置进行设置,本发明对此不做限制。

基于同一发明构思,本发明实施例还提供一种电子设备,如图2所示,包括:

加载模块20,用于加载待显示对象的布局文件;

绘制模块21,用于基于所述布局文件进行绘制,生成所述待显示对象的源视图;

复制模块22,用于复制所述源视图,生成复制视图;

显示模块23,用于将所述源视图和所述复制视图分别作为电子设备的左眼视图和右眼视图进行显示。

可选的,所述显示模块23包括:

添加子模块,用于将所述源视图和所述复制视图按照所述左眼视图和所述右眼视图的预定布局方式添加到视图容器中;

显示子模块,用于将所述视图容器中的所述源视图和所述复制视图显示在所述电子设备的显示屏上。

可选的,所述电子设备还包括:

获取模块,用于获取用户的瞳距;

设置模块,用于根据所述瞳距,设置所述左眼视图和所述右眼视图在所述显示屏上的显示位置,使得所述左眼视图与所述右眼视图之间的距离与所述瞳距匹配。

可选的,所述待显示对象为对话框或浏览器显示界面。

本发明实施例中的一个或者多个技术方案,至少具有如下技术效果或者优点:

本发明实施例的方案中,通过加载待显示对象的布局文件,基于所述布局文件进行绘制,生成所述待显示对象的源视图,然后复制源视图,生成复制视图,并将所述源视图和所述复制视图分别作为电子设备的左视图和右眼视图进行显示。可见,在待显示对象的布局文件为单屏显示文件时,通过复制源视图,生成复制视图,并将源视图和复制视图分别作为VR设备的左眼视图和右眼视图进行显示,可以将单屏显示自动布局成双屏显示,从而解决现有技术存在的,在将安卓系统的单屏显示修改为适应VR设备的双屏显示时,需要耗费大量时间,且准确性低的技术问题,从而节约修改时间,提高准确性。

本说明书中公开的所有特征,或公开的所有方法或过程中的步骤,除了互相排斥的特征和/或步骤以外,均可以以任何方式组合。

本说明书(包括任何附加权利要求、摘要和附图)中公开的任一特征,除非特别叙述,均可被其他等效或具有类似目的的替代特征加以替换。即,除非特别叙述,每个特征只是一系列等效或类似特征中的一个例子而已。

本发明并不局限于前述的具体实施方式。本发明扩展到任何在本说明书中披露的新特征或任何新的组合,以及披露的任一新的方法或过程的步骤或任何新的组合。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1