CN108280798A - 一种浏览器内核渲染显示的方法和装置 - Google Patents
一种浏览器内核渲染显示的方法和装置 Download PDFInfo
- Publication number
- CN108280798A CN108280798A CN201611259515.9A CN201611259515A CN108280798A CN 108280798 A CN108280798 A CN 108280798A CN 201611259515 A CN201611259515 A CN 201611259515A CN 108280798 A CN108280798 A CN 108280798A
- Authority
- CN
- China
- Prior art keywords
- gpu
- information
- target terminal
- renderer path
- renderer
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/20—Processor architectures; Processor configuration, e.g. pipelining
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/005—General purpose rendering architectures
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Graphics (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种浏览器内核渲染显示的方法和装置,属于计算机技术领域。所述方法包括:获取目标终端的图形处理器GPU信息;获取根据预设的GPU信息与渲染路径的对应关系确定的所述目标终端的GPU信息对应的渲染路径;当接收到待显示的页面数据时,根据所述目标终端的GPU信息对应的渲染路径,调用GPU指令集合中的指令,对所述页面数据进行浏览器内核渲染显示处理。采用本发明,可以避免出现页面数据显示异常的情况。
Description
技术领域
本发明涉及计算机技术领域,特别涉及一种浏览器内核渲染显示的方法和装置。
背景技术
随着终端技术的发展,手机、计算机等终端的用途越来越广泛,已经成为了人们日常工作、生活中最重要的工具之一。人们可以在终端上安装浏览器,通过浏览器显示页面数据,以在互联网中进行网页浏览。为了显示页面数据,终端中会配置有GPU(GraphicsProcessing Unit,图形处理器),并存储有用于控制GPU进行显示处理的GPU指令集合,浏览器中则会预先存储指令调用顺序(一般称为渲染路径)。
当浏览器接收到需要进行显示的页面数据时,浏览器可以按照预先存储的渲染路径,调用GPU指令集合中的指令,GPU则会根据该渲染路径执行相应的指令,以显示该页面数据。在实际中,浏览器使用的渲染路径中,可能会包含该GPU支持存在缺陷的指令,导致页面数据显示异常。为了解决这个问题,发布浏览器的技术人员会收集已发布的浏览器反馈的异常信息,然后对异常信息进行分析,确定可能是由于某些型号的GPU对某个指令支持存在缺陷,而导致页面数据显示异常。技术人员可以对包含该指令的渲染路径进行修改,将修改后的渲染路径存储到最新的浏览器的应用程序中,然后进行发布。用户则可以下载最新发布的浏览器的应用程序,以正常的浏览网页。
在实现本发明的过程中,发明人发现现有技术至少存在以下问题:
用户需要下载最新发布的浏览器的应用程序,才能正常的浏览网页,而用户更新浏览器的周期通常较长,这样会导致更新渲染路径的及时性比较差,容易出现页面数据显示异常的情况。
发明内容
为了解决现有技术的问题,本发明实施例提供了一种浏览器内核渲染显示的方法和装置。所述技术方案如下:
第一方面,提供了一种浏览器内核渲染显示的方法,所述方法包括:
获取目标终端的图形处理器GPU信息;
获取根据预设的GPU信息与渲染路径的对应关系确定的所述目标终端的GPU信息对应的渲染路径;
当接收到待显示的页面数据时,根据所述目标终端的GPU信息对应的渲染路径,调用GPU指令集合中的指令,对所述页面数据进行浏览器内核渲染显示处理。
第二方面,提供了一种浏览器内核渲染显示的方法,所述方法包括:
接收目标终端发送的渲染路径请求,所述渲染路径请求中携带有所述目标终端的GPU信息;
根据预先存储的GPU信息与渲染路径的对应关系,确定所述目标终端的GPU信息对应的渲染路径;
向所述目标终端发送所述目标终端的GPU信息对应的渲染路径,用于所述目标终端在接收到待显示的页面数据时,根据所述目标终端的GPU信息对应的渲染路径,调用GPU指令集合中的指令,对所述页面数据进行浏览器内核渲染显示处理。
第三方面,提供了一种浏览器内核渲染显示的装置,所述装置包括:
第一获取模块,用于获取目标终端的图形处理器GPU信息;
第二获取模块,用于获取根据预设的GPU信息与渲染路径的对应关系确定的所述目标终端的GPU信息对应的渲染路径;
显示模块,用于当接收到待显示的页面数据时,根据所述目标终端的GPU信息对应的渲染路径,调用GPU指令集合中的指令,对所述页面数据进行浏览器内核渲染显示处理。
第四方面,提供了一种浏览器内核渲染显示的装置,所述装置包括:
接收模块,用于接收目标终端发送的渲染路径请求,所述渲染路径请求中携带有所述目标终端的GPU信息;
确定模块,用于根据预先存储的GPU信息与渲染路径的对应关系,确定所述目标终端的GPU信息对应的渲染路径;
发送模块,用于向所述目标终端发送所述目标终端的GPU信息对应的渲染路径,用于所述目标终端在接收到待显示的页面数据时,根据所述目标终端的GPU信息对应的渲染路径,调用GPU指令集合中的指令,对所述页面数据进行浏览器内核渲染显示处理。
本发明实施例提供的技术方案带来的有益效果是:
本发明实施例中,可以获取目标终端的GPU信息,然后获取目标终端的GPU信息对应的渲染路径,这样,在接收到待显示的页面数据时,可以根据适用于目标终端的GPU的渲染路径,调用GPU指令集合中的指令,然后对页面数据进行浏览器内核渲染显示处理,避免出现页面数据显示异常的情况。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种浏览器内核渲染显示的方法流程图;
图2是本发明实施例提供的一种浏览器内核渲染显示的方法流程图;
图3是本发明实施例提供的一种浏览器内核渲染显示的方法流程图;
图4是本发明实施例提供的一种浏览器内核渲染显示的装置结构示意图;
图5是本发明实施例提供的一种浏览器内核渲染显示的装置结构示意图;
图6是本发明实施例提供的一种浏览器内核渲染显示的装置结构示意图;
图7是本发明实施例提供的一种浏览器内核渲染显示的装置结构示意图;
图8是本发明实施例提供的一种终端的结构示意图;
图9是本发明实施例提供的一种终端的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
本发明实施例提供了一种浏览器内核渲染显示的方法,该方法可以由终端侧实现,也可以由终端和服务器两侧共同实现。由终端侧实现该方法时,该方法的执行主体可以是终端,也可以是终端中安装的应用程序,如某浏览器的应用程序。由终端和服务器两侧共同实现该方法时,该服务器可以是某应用程序的后台服务器,如某浏览器的应用程序的后台服务器。
其中,终端中通常会配置有GPU(Graphics Processing Unit,图形处理器),并可以存储用于控制GPU进行显示处理的GPU指令集合,如OpenGL ES(Open Graphics Libraryfor Embedded Systems,嵌入式系统的开放式图形库)。终端中还可以预先存储至少一种指令调用顺序(即渲染路径),对于执行主体为终端中安装的应用程序的情况,渲染路径可以存储在该应用程序中,例如,可以存储在某浏览器的内核程序中。
当用户想要浏览网页时,用户可以在终端开启该应用程序,打开某网站的网页。终端接收到对应该网页的开启指令后,可以向服务器发送对应该页面的数据请求,服务器则可以将对应的页面数据发送给该终端。终端接收到待显示的页面数据后,可以根据本地的GPU对应的渲染路径,调用GPU指令集合中的指令,对页面数据进行浏览器内核渲染显示处理,从而避免页面数据显示异常的情况。
下面将结合具体实施方式,以执行主体为终端为例,对图1所示的处理流程进行详细的说明,内容可以如下:
步骤101,获取目标终端的GPU信息。
在实施中,目标终端中可以存储该GPU对应的GPU信息。GPU信息可以是用于反映GPU属性的信息,如GPU的型号、GPU的生产厂商和OpenGL ES的版本信息等。目标终端可以在达到预设获取周期时,获取本地的GPU信息(为了便于描述,可称为目标GPU信息)。或者,对于执行主体为目标终端中安装的应用程序的情况,可以是在该应用程序开启的情况下,获取目标终端的GPU信息(即目标GPU信息)。
步骤102,获取根据预设的GPU信息与渲染路径的对应关系确定的目标终端的GPU信息对应的渲染路径。
在实施中,目标终端获取渲染路径的方式可以有两种:
方式一、目标终端可以向服务器发送携带有目标终端的GPU信息的渲染路径请求,以使服务器根据服务器预先存储的GPU信息与渲染路径的对应关系,确定目标终端的GPU信息对应的渲染路径;接收服务器发送的目标终端的GPU信息对应的渲染路径。详见图2的处理流程,此处暂不赘述。
方式二、目标终端可以根据本地预先存储的GPU信息与渲染路径的对应关系,确定目标终端的GPU信息对应的渲染路径。详见图3的处理流程,此处暂不赘述。
无论采用上述哪种方式,该对应关系均可以是GPU信息与可用渲染路径的对应关系,也可以是GPU信息与不可用渲染路径的对应关系。相应的,目标终端可以获取目标GPU信息对应的可用渲染路径,也可以获取目标GPU信息对应的不可用渲染路径。其中,可用渲染路径包含的指令均为GPU支持的指令,不可用渲染路径包含的指令中存在GPU不支持的指令。
步骤103,当接收到待显示的页面数据时,根据目标终端的GPU信息对应的渲染路径,调用GPU指令集合中的指令,对页面数据进行浏览器内核渲染显示处理。
在实施中,用户可以在目标终端开启目标应用程序,如某浏览器,进而可以在目标应用程序中打开某网站的网页。目标终端接收到对应某网页的开启指令后,可以向服务器发送对应该页面的数据请求,服务器接收到该数据请求后,可以将对应的页面数据发送给目标终端。对于目标终端获取目标GPU信息对应的可用渲染路径的情况,目标终端接收到待显示的页面数据后,可以在可用渲染路径中,选取待使用的渲染路径,然后根据选取的渲染路径调用GPU指令集合中的指令,对页面数据进行浏览器内核渲染显示处理。
对于目标终端获取目标GPU信息对应的不可用渲染路径的情况,目标终端接收到待显示的页面数据后,可以在本地存储的渲染路径中,确定不可用渲染路径以外的渲染路径,得到可用渲染路径,然后再进行后续处理。
另外,目标终端中还可以存储有备用的渲染路径,备用的渲染路径可以技术人员预设的适用于各种GPU的渲染路径,如果目标终端在上述对应关系中,未查找到目标GPU信息对应的渲染路径,则可以将备用的渲染路径作为目标GPU信息对应的渲染路径,当接收到待显示的页面数据时,根据备用的渲染路径,调用GPU指令集合中的指令,对页面数据进行浏览器内核渲染显示处理。
可选的,目标终端可以在目标GPU信息对应的渲染路径中,选择适用于待显示的页面数据的渲染路径相应的处理过程可以如下:根据待显示的页面数据的类型和目标终端的GPU信息对应的渲染路径,确定待使用的渲染路径;根据待使用的渲染路径,调用GPU指令集合中的指令。
在实施中,目标终端接收到待显示的页面数据后,可以确定待显示的页面数据的类型。其中,待显示的页面数据的类型可以包括文字类型、图片类型、视频类型和游戏类型等。目标终端确定页面数据的类型的方式可以是多种多样的,例如,目标终端会接收到对应某网页的开启指令,目标终端可以确定该网页的类型(如页面游戏类或小说类),根据该网页的类型,确定待显示的页面数据的类型。例如,页面游戏类的网页,对应的页面数据的类型为游戏类型;小说类的网页,对应的页面数据的类型为文字类型。或者,服务器发送的页面数据中可以携带有待显示的页面数据的类型标识,目标终端可以待显示的页面数据的类型标识,确定待显示的页面数据的类型。
对于目标终端获取目标GPU信息对应的可用渲染路径的情况,目标终端确定待显示的页面数据的类型后,可以根据预先存储的页面数据的类型与渲染路径的对应关系,在目标GPU信息对应的可用渲染路径中,确定待显示的页面数据的类型对应的渲染路径(即待使用的渲染路径),然后可以根据待使用的渲染路径,调用GPU指令集合中的指令。例如,待显示的页面数据的类型为文字类型,对应的可用渲染路径为A、D,目标GPU信息对应的可用渲染路径为A、B、C,则可以确定待使用的渲染路径为A。
另外,目标终端中也可以存储页面数据的类型与可用指令的对应关系,其中,某页面数据的类型对应的可用指令,可以是显示该类型的页面数据的效果最佳的指令。目标终端确定待显示的页面数据的类型后,可以根据该对应关系,确定待显示的页面数据的类型对应的可用指令,然后可以在目标GPU信息对应的可用渲染路径中,确定包含该可用指令的渲染路径,得到待使用的渲染路径。例如,待显示的页面数据的类型为文字类型,对应的可用指令为a,目标GPU信息对应的可用渲染路径为A、B、C,其中,渲染路径B中包含指令a,则可以确定待使用的渲染路径为B。
对于目标终端获取目标GPU信息对应的不可用渲染路径的情况,目标终端可以在本地存储的渲染路径中,确定不可用渲染路径以外的渲染路径,得到可用渲染路径,然后再进行后续处理。
本发明实施例还提供了一种浏览器内核渲染显示的方法,该方法可以由终端和服务器共同实现,如图2所示,该方法的处理流程可以包括如下的步骤:
步骤201,目标终端获取本地的GPU信息。
该步骤的具体处理过程可以参见上述步骤101。
步骤202,目标终端向服务器发送渲染路径请求。
在实施中,目标终端获取到目标GPU信息后,可以向服务器发送渲染路径请求,渲染路径请求中可以携带有目标GPU信息。另外,目标终端还可以获取目标应用程序的版本信息,目标应用程序的版本信息可以是用于显示页面数据的应用程序的版本信息,如某浏览器的版本信息。相应的,渲染路径请求中还可以携带有目标应用程序的版本信息。由于不同版本的目标应用程序中存储的渲染路径是不同的,因此,目标终端可以将目标应用程序的版本信息发送给服务器,以便服务器根据目标终端的GPU信息和目标终端的目标应用程序的版本信息,来确定渲染路径,从而提高服务器确定渲染路径的准确度。
步骤203,服务器接收目标终端发送的渲染路径请求,渲染路径请求中携带有目标终端的GPU信息。
在实施中,服务器可以接收目标终端发送的渲染路径请求,然后可以对渲染路径请求进行解析,获取其中的目标终端的GPU信息。
步骤204,服务器根据预先存储的GPU信息与渲染路径的对应关系,确定目标终端的GPU信息对应的渲染路径。
在实施中,服务器中可以预先存储GPU信息与渲染路径的对应关系,该对应关系可以由技术人员设置。对于同一型号的GPU,不同生产厂商生产出的GPU所支持的指令可以是不同的,而且,不同终端存储的GPU指令集合(如OpenGL ES)也可以是不同的。当终端检测到渲染发生异常时,终端可以反馈异常信息(或崩溃信息)给服务器,异常信息(或崩溃信息)可以包括该终端中的GPU信息,以及发生异常或崩溃时使用的渲染路径。技术人员可以对各终端反馈的异常信息(或崩溃信息)进行分析,确定不同的版本的OpenGL ES下,不同GPU能够使用的渲染路径,从而设置GPU信息与渲染路径的对应关系。该对应关系可以为GPU的型号、GPU的生产厂商、OpenGL ES的版本信息与渲染路径的对应关系。
服务器中可以存储GPU信息与可用渲染路径的对应关系,也可以存储GPU信息与不可用渲染路径的对应关系。相应的,服务器可以确定目标GPU信息对应的可用渲染路径,也可以确定目标GPU信息对应的不可用渲染路径。
可选的,对于渲染路径请求中还携带有目标终端中的目标应用程序的版本信息的情况,相应的,步骤204的处理过程可以如下:根据预先存储的GPU信息、目标应用程序的版本信息与渲染路径的对应关系,以及目标终端的GPU信息和目标终端中的目标应用程序的版本信息,确定对应的渲染路径。
在实施中,服务器可以对渲染路径请求进行解析,获取目标应用程序的版本信息。由于不同版本的目标应用程序中存储的渲染路径是不同的,因此,技术人员可以预先设置GPU信息、目标应用程序的版本信息与渲染路径的三者对应关系。服务器获取到目标终端的GPU信息,以及目标终端中目标应用程序的版本信息后,可以在上述对应关系中,查找对应的渲染路径,以便进行后续处理。例如,根据目标终端中的浏览器的版本信息,服务器确定目标终端的浏览器中存储有标识为A、B、C、D、E的五种渲染路径,服务器根据目标终端的GPU信息,在这五种渲染路径中,确定目标终端的GPU所支持的渲染路径,如A、B、C。
步骤205,服务器向目标终端发送目标终端的GPU信息对应的渲染路径。
在实施中,服务器确定目标终端的GPU信息对应的渲染路径后,可以向目标终端发送确定出的渲染路径。服务器可以向目标终端发送渲染路径的标识,如A、B、C;或者,服务器也可以向目标终端发送渲染路径的具体内容,具体内容可以包括渲染路径包括的各指令的标识,以及各指令的调用顺序,还可以包括各指令的具体内容。服务器中还可以存储有备用的渲染路径,备用的渲染路径可以技术人员预设的适用于各种GPU的渲染路径,如果服务器在上述对应关系中,未查找到目标GPU信息对应的渲染路径,则可以将备用的渲染路径发送给目标终端,以使目标终端可以正常显示页面数据。
另外,渲染路径请求中还可以携带有目标终端的终端标识,以及目标终端最近一次请求渲染路径的时间信息。当服务器接收到目标终端发送的渲染路径请求后,服务器可以根据该时间信息,以及最近一次更新目标GPU信息对应的渲染路径的时间信息,确定目标终端上一次接收到渲染路径之后,目标GPU信息对应的渲染路径是否发生更新。如果发生更新,则可以执行步骤204~205;如果未发生更新,则可以向目标终端发送预设的回复消息,以通知目标终端无需更新渲染路径,或者,可以不回复目标终端,目标终端在预设时长内未接收到服务器的回复消息,则可以判断无需更新渲染路径。
步骤206,目标终端接收服务器发送的目标终端的GPU信息对应的渲染路径。
在实施中,服务器向目标终端发送目标GPU信息对应的渲染路径后,目标终端可以接收到该服务器发送的渲染路径,并对接收到的渲染路径进行存储,以便进行后续处理。
步骤207,当接收到待显示的页面数据时,目标终端根据本地的GPU信息对应的渲染路径,调用GPU指令集合中的指令,对页面数据进行浏览器内核渲染显示处理。
该步骤的具体处理过程可以参见上述步骤103。
本发明实施例还提供了一种浏览器内核渲染显示的方法,该方法可以由终端实现,如图3所示,该方法的处理流程可以包括如下的步骤:
步骤301,获取目标终端的GPU信息。
该步骤的具体处理过程可以参见上述步骤101。
步骤302,根据本地预先存储的GPU信息与渲染路径的对应关系,确定目标终端的GPU信息对应的渲染路径。
在实施中,如上所述,技术人员可以对各终端反馈的异常信息(或崩溃信息)进行分析,得到不同的版本的OpenGL ES下,不同GPU能够使用的渲染路径,从而设置GPU信息与渲染路径的对应关系。技术人员可以将GPU信息与渲染路径的对应关系存储在终端中,或者,技术人员可以将该对应关系存储在目标应用程序的安装包中,目标终端下载并安装目标应用程序后,可以获取该对应关系,并进行存储。目标终端可以存储GPU信息与可用渲染路径的对应关系(相当于白名单),也可以存储GPU信息与不可用渲染路径的对应关系(相当于黑名单)。相应的,目标终端可以确定目标GPU信息对应的可用渲染路径,也可以确定目标GPU信息对应的不可用渲染路径。
步骤303,当接收到待显示的页面数据时,根据目标终端的GPU信息对应的渲染路径,调用GPU指令集合中的指令,对页面数据进行浏览器内核渲染显示处理。
该步骤的具体处理过程可以参见上述步骤103。
本发明实施例中,可以获取目标终端的GPU信息,然后获取目标终端的GPU信息对应的渲染路径,这样,在接收到待显示的页面数据时,可以根据适用于目标终端的GPU的渲染路径,调用GPU指令集合中的指令,然后对页面数据进行浏览器内核渲染显示处理,避免出现页面数据显示异常的情况。
基于相同的技术构思,本发明实施例还提供了一种浏览器内核渲染显示的装置,如图4所示,该装置包括:
第一获取模块410,用于获取目标终端的图形处理器GPU信息;
第二获取模块420,用于获取根据预设的GPU信息与渲染路径的对应关系确定的所述目标终端的GPU信息对应的渲染路径;
显示模块430,用于当接收到待显示的页面数据时,根据所述目标终端的GPU信息对应的渲染路径,调用GPU指令集合中的指令,对所述页面数据进行浏览器内核渲染显示处理。
可选的,如图5所示,所述第二获取模块420,包括:
发送子模块421,用于向服务器发送携带有所述目标终端的GPU信息的渲染路径请求,以使所述服务器根据所述服务器预先存储的GPU信息与渲染路径的对应关系,确定所述目标终端的GPU信息对应的渲染路径;
接收子模块422,用于接收所述服务器发送的所述目标终端的GPU信息对应的渲染路径。
可选的,所述渲染路径请求中还携带有所述目标终端中的目标应用程序的版本信息。
可选的,所述第二获取模块420,用于:
根据本地预先存储的GPU信息与渲染路径的对应关系,确定所述目标终端的GPU信息对应的渲染路径。
可选的,如图6所示,所述显示模块430,包括:
确定子模块431,用于根据所述待显示的页面数据的类型和所述目标终端的GPU信息对应的渲染路径,确定待使用的渲染路径;
调用子模块432,用于根据所述待使用的渲染路径,调用GPU指令集合中的指令。
可选的,所述GPU信息至少包括GPU的型号、GPU的生产厂商和OpenGL ES的版本信息。
基于相同的技术构思,本发明实施例还提供了一种浏览器内核渲染显示的装置,如图7所示,该装置包括:
接收模块710,用于接收目标终端发送的渲染路径请求,所述渲染路径请求中携带有所述目标终端的GPU信息;
确定模块720,用于根据预先存储的GPU信息与渲染路径的对应关系,确定所述目标终端的GPU信息对应的渲染路径;
发送模块730,用于向所述目标终端发送所述目标终端的GPU信息对应的渲染路径,用于所述目标终端在接收到待显示的页面数据时,根据所述目标终端的GPU信息对应的渲染路径,调用GPU指令集合中的指令,对所述页面数据进行浏览器内核渲染显示处理。
可选的,所述渲染路径请求中还携带有所述目标终端中的目标应用程序的版本信息;
所述确定模块720,用于:
根据预先存储的GPU信息、目标应用程序的版本信息和渲染路径的对应关系,以及所述目标终端的GPU信息和所述目标终端中的目标应用程序的版本信息,确定对应的渲染路径。
可选的,所述GPU信息至少包括GPU的型号、GPU的生产厂商和OpenGL ES的版本信息。
本发明实施例中,可以获取目标终端的GPU信息,然后获取目标终端的GPU信息对应的渲染路径,这样,在接收到待显示的页面数据时,可以根据适用于目标终端的GPU的渲染路径,调用GPU指令集合中的指令,然后对页面数据进行浏览器内核渲染显示处理,避免出现页面数据显示异常的情况。
需要说明的是:上述实施例提供的浏览器内核渲染显示的装置在进行浏览器内核渲染显示时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的浏览器内核渲染显示的装置与浏览器内核渲染显示的方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
请参考图8,其示出了本发明实施例所涉及的终端的结构示意图,该终端可以用于实施上述实施例中提供的浏览器内核渲染显示的方法。具体来讲:
终端900可以包括RF(Radio Frequency,射频)电路110、包括有一个或一个以上计算机可读存储介质的存储器120、输入单元130、显示单元140、传感器150、音频电路160、WiFi(wireless fidelity,无线保真)模块170、包括有一个或者一个以上处理核心的处理器180、以及电源190等部件。本领域技术人员可以理解,图8中示出的终端结构并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
RF电路110可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,交由一个或者一个以上处理器180处理;另外,将涉及上行的数据发送给基站。通常,RF电路110包括但不限于天线、至少一个放大器、调谐器、一个或多个振荡器、用户身份模块(SIM)卡、收发信机、耦合器、LNA(Low Noise Amplifier,低噪声放大器)、双工器等。此外,RF电路110还可以通过无线通信与网络和其他设备通信。所述无线通信可以使用任一通信标准或协议,包括但不限于GSM(Global System of Mobile communication,全球移动通讯系统)、GPRS(General Packet Radio Service,通用分组无线服务)、CDMA(CodeDivision Multiple Access,码分多址)、WCDMA(Wideband Code Division MultipleAccess,宽带码分多址)、LTE(Long Term Evolution,长期演进)、电子邮件、SMS(ShortMessaging Service,短消息服务)等。
存储器120可用于存储软件程序以及模块,处理器180通过运行存储在存储器120的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器120可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据终端900的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器120可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器120还可以包括存储器控制器,以提供处理器180和输入单元130对存储器120的访问。
输入单元130可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。具体地,输入单元130可包括触敏表面131以及其他输入设备132。触敏表面131,也称为触摸显示屏或者触控板,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触敏表面131上或在触敏表面131附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触敏表面131可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器180,并能接收处理器180发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触敏表面131。除了触敏表面131,输入单元130还可以包括其他输入设备132。具体地,其他输入设备132可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
显示单元140可用于显示由用户输入的信息或提供给用户的信息以及终端900的各种图形用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。显示单元140可包括显示面板141,可选的,可以采用LCD(Liquid Crystal Display,液晶显示器)、OLED(Organic Light-Emitting Diode,有机发光二极管)等形式来配置显示面板141。进一步的,触敏表面131可覆盖显示面板141,当触敏表面131检测到在其上或附近的触摸操作后,传送给处理器180以确定触摸事件的类型,随后处理器180根据触摸事件的类型在显示面板141上提供相应的视觉输出。虽然在图8中,触敏表面131与显示面板141是作为两个独立的部件来实现输入和输入功能,但是在某些实施例中,可以将触敏表面131与显示面板141集成而实现输入和输出功能。
终端900还可包括至少一种传感器150,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板141的亮度,接近传感器可在终端900移动到耳边时,关闭显示面板141和/或背光。作为运动传感器的一种,重力加速度传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于终端900还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
音频电路160、扬声器161,传声器162可提供用户与终端900之间的音频接口。音频电路160可将接收到的音频数据转换后的电信号,传输到扬声器161,由扬声器161转换为声音信号输出;另一方面,传声器162将收集的声音信号转换为电信号,由音频电路160接收后转换为音频数据,再将音频数据输出处理器180处理后,经RF电路110以发送给比如另一终端,或者将音频数据输出至存储器120以便进一步处理。音频电路160还可能包括耳塞插孔,以提供外设耳机与终端900的通信。
WiFi属于短距离无线传输技术,终端900通过WiFi模块170可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图8示出了WiFi模块170,但是可以理解的是,其并不属于终端900的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
处理器180是终端900的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器120内的软件程序和/或模块,以及调用存储在存储器120内的数据,执行终端900的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器180可包括一个或多个处理核心;优选的,处理器180可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器180中。
终端900还包括给各个部件供电的电源190(比如电池),优选的,电源可以通过电源管理系统与处理器180逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源190还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
尽管未示出,终端900还可以包括摄像头、蓝牙模块等,在此不再赘述。具体在本实施例中,终端900的显示单元是触摸屏显示器,终端900还包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行述一个或者一个以上程序包含用于该终端用于执行上述浏览器内核渲染显示的方法的指令。
本发明实施例中,可以获取目标终端的GPU信息,然后获取目标终端的GPU信息对应的渲染路径,这样,在接收到待显示的页面数据时,可以根据适用于目标终端的GPU的渲染路径,调用GPU指令集合中的指令,然后对页面数据进行浏览器内核渲染显示处理,避免出现页面数据显示异常的情况。
图9是本发明实施例提供的服务器的结构示意图。该服务器600可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(central processingunits,CPU)622(例如,一个或一个以上处理器)和存储器632,一个或一个以上存储应用程序642或数据644的存储介质630(例如一个或一个以上海量存储设备)。其中,存储器632和存储介质630可以是短暂存储或持久存储。存储在存储介质630的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器622可以设置为与存储介质630通信,在服务器600上执行存储介质630中的一系列指令操作。
服务器600还可以包括一个或一个以上电源626,一个或一个以上有线或无线网络接口650,一个或一个以上输入输出接口658,一个或一个以上键盘656,和/或,一个或一个以上操作系统641,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等等。
服务器600可以包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于该服务器用于执行上述浏览器内核渲染显示的方法的指令。
本发明实施例中,可以获取目标终端的GPU信息,然后获取目标终端的GPU信息对应的渲染路径,这样,在接收到待显示的页面数据时,可以根据适用于目标终端的GPU的渲染路径,调用GPU指令集合中的指令,然后对页面数据进行浏览器内核渲染显示处理,避免出现页面数据显示异常的情况。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (18)
1.一种浏览器内核渲染显示的方法,其特征在于,所述方法包括:
获取目标终端的图形处理器GPU信息;
获取根据预设的GPU信息与渲染路径的对应关系确定的所述目标终端的GPU信息对应的渲染路径;
当接收到待显示的页面数据时,根据所述目标终端的GPU信息对应的渲染路径,调用GPU指令集合中的指令,对所述页面数据进行浏览器内核渲染显示处理。
2.根据权利要求1所述的方法,其特征在于,所述获取根据预设的GPU信息与渲染路径的对应关系确定的所述目标终端的GPU信息对应的渲染路径,包括:
向服务器发送携带有所述目标终端的GPU信息的渲染路径请求,以使所述服务器根据所述服务器预先存储的GPU信息与渲染路径的对应关系,确定所述目标终端的GPU信息对应的渲染路径;
接收所述服务器发送的所述目标终端的GPU信息对应的渲染路径。
3.根据权利要求2所述的方法,其特征在于,所述渲染路径请求中还携带有所述目标终端中的目标应用程序的版本信息。
4.根据权利要求1所述的方法,其特征在于,所述获取根据预设的GPU信息与渲染路径的对应关系确定的所述目标终端的GPU信息对应的渲染路径,包括:
根据本地预先存储的GPU信息与渲染路径的对应关系,确定所述目标终端的GPU信息对应的渲染路径。
5.根据权利要求1-4任一所述的方法,其特征在于,所述根据所述目标终端的GPU信息对应的渲染路径,调用GPU指令集合中的指令,包括:
根据所述待显示的页面数据的类型和所述目标终端的GPU信息对应的渲染路径,确定待使用的渲染路径;
根据所述待使用的渲染路径,调用GPU指令集合中的指令。
6.根据权利要求1-5任一所述的方法,其特征在于,所述GPU信息至少包括GPU的型号、GPU的生产厂商和嵌入式系统的开放式图形库OpenGL ES的版本信息。
7.一种浏览器内核渲染显示的方法,其特征在于,所述方法包括:
接收目标终端发送的渲染路径请求,所述渲染路径请求中携带有所述目标终端的GPU信息;
根据预先存储的GPU信息与渲染路径的对应关系,确定所述目标终端的GPU信息对应的渲染路径;
向所述目标终端发送所述目标终端的GPU信息对应的渲染路径,用于所述目标终端在接收到待显示的页面数据时,根据所述目标终端的GPU信息对应的渲染路径,调用GPU指令集合中的指令,对所述页面数据进行浏览器内核渲染显示处理。
8.根据权利要求7所述的方法,其特征在于,所述渲染路径请求中还携带有所述目标终端中的目标应用程序的版本信息;
所述根据预先存储的GPU信息与渲染路径的对应关系,确定所述目标终端的GPU信息对应的渲染路径,包括:
根据预先存储的GPU信息、目标应用程序的版本信息和渲染路径的对应关系,以及所述目标终端的GPU信息和所述目标终端中的目标应用程序的版本信息,确定对应的渲染路径。
9.根据权利要求7或8任一所述的方法,其特征在于,所述GPU信息至少包括GPU的型号、GPU的生产厂商和OpenGL ES的版本信息。
10.一种浏览器内核渲染显示的装置,其特征在于,所述装置包括:
第一获取模块,用于获取目标终端的图形处理器GPU信息;
第二获取模块,用于获取根据预设的GPU信息与渲染路径的对应关系确定的所述目标终端的GPU信息对应的渲染路径;
显示模块,用于当接收到待显示的页面数据时,根据所述目标终端的GPU信息对应的渲染路径,调用GPU指令集合中的指令,对所述页面数据进行浏览器内核渲染显示处理。
11.根据权利要求10所述的装置,其特征在于,所述第二获取模块,包括:
发送子模块,用于向服务器发送携带有所述目标终端的GPU信息的渲染路径请求,以使所述服务器根据所述服务器预先存储的GPU信息与渲染路径的对应关系,确定所述目标终端的GPU信息对应的渲染路径;
接收子模块,用于接收所述服务器发送的所述目标终端的GPU信息对应的渲染路径。
12.根据权利要求11所述的装置,其特征在于,所述渲染路径请求中还携带有所述目标终端中的目标应用程序的版本信息。
13.根据权利要求10所述的装置,其特征在于,所述第二获取模块,用于:
根据本地预先存储的GPU信息与渲染路径的对应关系,确定所述目标终端的GPU信息对应的渲染路径。
14.根据权利要求10-13任一所述的装置,其特征在于,所述显示模块,包括:
确定子模块,用于根据所述待显示的页面数据的类型和所述目标终端的GPU信息对应的渲染路径,确定待使用的渲染路径;
调用子模块,用于根据所述待使用的渲染路径,调用GPU指令集合中的指令。
15.根据权利要求10-14任一所述的装置,其特征在于,所述GPU信息至少包括GPU的型号、GPU的生产厂商和OpenGL ES的版本信息。
16.一种浏览器内核渲染显示的装置,其特征在于,所述装置包括:
接收模块,用于接收目标终端发送的渲染路径请求,所述渲染路径请求中携带有所述目标终端的GPU信息;
确定模块,用于根据预先存储的GPU信息与渲染路径的对应关系,确定所述目标终端的GPU信息对应的渲染路径;
发送模块,用于向所述目标终端发送所述目标终端的GPU信息对应的渲染路径,用于所述目标终端在接收到待显示的页面数据时,根据所述目标终端的GPU信息对应的渲染路径,调用GPU指令集合中的指令,对所述页面数据进行浏览器内核渲染显示处理。
17.根据权利要求16所述的装置,其特征在于,所述渲染路径请求中还携带有所述目标终端中的目标应用程序的版本信息;
所述确定模块,用于:
根据预先存储的GPU信息、目标应用程序的版本信息和渲染路径的对应关系,以及所述目标终端的GPU信息和所述目标终端中的目标应用程序的版本信息,确定对应的渲染路径。
18.根据权利要求16或17任一所述的装置,其特征在于,所述GPU信息至少包括GPU的型号、GPU的生产厂商和OpenGL ES的版本信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611259515.9A CN108280798B (zh) | 2016-12-30 | 2016-12-30 | 一种浏览器内核渲染显示的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611259515.9A CN108280798B (zh) | 2016-12-30 | 2016-12-30 | 一种浏览器内核渲染显示的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108280798A true CN108280798A (zh) | 2018-07-13 |
CN108280798B CN108280798B (zh) | 2021-02-12 |
Family
ID=62800323
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611259515.9A Active CN108280798B (zh) | 2016-12-30 | 2016-12-30 | 一种浏览器内核渲染显示的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108280798B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020132833A1 (en) * | 2018-12-24 | 2020-07-02 | Intel Corporation | Methods and apparatus to process machine learning model in multi-process web browser environment |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102368249A (zh) * | 2011-09-26 | 2012-03-07 | 奇智软件(北京)有限公司 | 一种ie内核浏览器的页面下载控制方法和系统 |
CN103077239A (zh) * | 2013-01-10 | 2013-05-01 | 上海电力学院 | 基于云渲染的iFrame 嵌入式Web3D系统 |
CN103198505A (zh) * | 2013-04-23 | 2013-07-10 | 四三九九网络股份有限公司 | 一种基于gpu渲染游戏角色及角色换装的方法和装置 |
CN103617191A (zh) * | 2013-11-07 | 2014-03-05 | 北京奇虎科技有限公司 | 使用硬件加速实现浏览器渲染的方法和浏览器 |
US20150206269A1 (en) * | 2012-01-23 | 2015-07-23 | Google Inc. | Rendering content on computing systems |
US20160350721A1 (en) * | 2013-08-22 | 2016-12-01 | Core De Vie, Llc | Behaviorally informed scheduling systems and methods |
CN106227649A (zh) * | 2016-07-08 | 2016-12-14 | 北京奇虎科技有限公司 | 一种测试应用页面过度渲染的方法和装置 |
-
2016
- 2016-12-30 CN CN201611259515.9A patent/CN108280798B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102368249A (zh) * | 2011-09-26 | 2012-03-07 | 奇智软件(北京)有限公司 | 一种ie内核浏览器的页面下载控制方法和系统 |
US20150206269A1 (en) * | 2012-01-23 | 2015-07-23 | Google Inc. | Rendering content on computing systems |
CN103077239A (zh) * | 2013-01-10 | 2013-05-01 | 上海电力学院 | 基于云渲染的iFrame 嵌入式Web3D系统 |
CN103198505A (zh) * | 2013-04-23 | 2013-07-10 | 四三九九网络股份有限公司 | 一种基于gpu渲染游戏角色及角色换装的方法和装置 |
US20160350721A1 (en) * | 2013-08-22 | 2016-12-01 | Core De Vie, Llc | Behaviorally informed scheduling systems and methods |
CN103617191A (zh) * | 2013-11-07 | 2014-03-05 | 北京奇虎科技有限公司 | 使用硬件加速实现浏览器渲染的方法和浏览器 |
CN106227649A (zh) * | 2016-07-08 | 2016-12-14 | 北京奇虎科技有限公司 | 一种测试应用页面过度渲染的方法和装置 |
Non-Patent Citations (1)
Title |
---|
牛津 等: "《网页浏览器内核的比较研究》", 《微计算机应用》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020132833A1 (en) * | 2018-12-24 | 2020-07-02 | Intel Corporation | Methods and apparatus to process machine learning model in multi-process web browser environment |
Also Published As
Publication number | Publication date |
---|---|
CN108280798B (zh) | 2021-02-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104780164B (zh) | 一种运行游戏客户端的方法和装置 | |
CN104965721B (zh) | 一种对应用程序进行更新的方法及装置 | |
CN103544033B (zh) | 应用程序回退方法、装置及相关设备 | |
CN106933525B (zh) | 一种显示图像的方法和装置 | |
CN104636047B (zh) | 对列表中的对象进行操作的方法、装置及触屏终端 | |
CN106502906B (zh) | 一种测试应用程序的方法和装置 | |
CN104252341B (zh) | 应用程序的换肤方法、装置及应用程序的客户端设备 | |
US20170147187A1 (en) | To-be-shared interface processing method, and terminal | |
CN104869465B (zh) | 视频播放控制方法和装置 | |
CN106547844B (zh) | 一种用户界面的处理方法和装置 | |
CN104965722B (zh) | 一种显示信息的方法及装置 | |
CN103488939A (zh) | 一种提示用户的方法、装置及终端 | |
CN104571979B (zh) | 一种实现分屏视图的方法和装置 | |
CN105389259B (zh) | 一种进行应用程序测试的方法、装置及系统 | |
CN106131930A (zh) | 一种WiFi网络接入控制方法、装置和终端 | |
WO2015007232A1 (en) | Method, device and mobile terminal for checking message | |
CN106126411A (zh) | 一种对被测程序代码进行测试的方法和装置 | |
CN106371749A (zh) | 一种终端控制的方法和装置 | |
CN106303605B (zh) | 一种发送通知消息的方法、装置和系统 | |
CN106713608A (zh) | 应用的功能状态修改方法、装置及终端 | |
US10298590B2 (en) | Application-based service providing method, apparatus, and system | |
CN106951139A (zh) | 消息提示框显示方法及装置 | |
CN104346028B (zh) | 地址栏显示方法、装置和移动终端 | |
CN105808043A (zh) | 一种终端应用的设置方法和移动终端 | |
CN103677944A (zh) | 一种制作锁屏界面的方法、装置及终端设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |