CN109740092B - 浏览器系统、消息处理方法、电子设备、装置及存储介质 - Google Patents
浏览器系统、消息处理方法、电子设备、装置及存储介质 Download PDFInfo
- Publication number
- CN109740092B CN109740092B CN201811603379.XA CN201811603379A CN109740092B CN 109740092 B CN109740092 B CN 109740092B CN 201811603379 A CN201811603379 A CN 201811603379A CN 109740092 B CN109740092 B CN 109740092B
- Authority
- CN
- China
- Prior art keywords
- browser
- command parameters
- browsing request
- rendering process
- message processing
- 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.)
- Active
Links
Images
Landscapes
- User Interface Of Digital Computer (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种浏览器消息处理方法,包括:浏览器渲染进程对预设多个命令参数进行解析,所述命令参数是指用户事先编写的用以模拟用户通过外设输入的各种控制浏览器的命令的代码信息;浏览器主进程对解析后的参数进行识别得到目标浏览请求;所述浏览器主进程将所述目标浏览请求传递给所述浏览器渲染进程;所述浏览器渲染进程根据所述目标浏览请求渲染生成对应的网页数据;所述浏览器渲染进程将所述网页数据通知给所述浏览器主进程。本发明还公开了一种无浏览器窗口的浏览器系统、电子设备、浏览器消息处理装置及存储介质。本发明能够在无浏览器窗口的情况下,模拟用户输入的消息来触发浏览器消息处理装置。
Description
技术领域
本发明涉及互联网技术领域,尤其涉及一种无浏览器窗口的浏览器系统、消息处理方法、电子设备、装置及存储介质。
背景技术
随着互联网技术的飞速发展,人们越来越多的通过浏览器浏览网页来获取各种消息。目前的浏览器中,用户的输入主要是由用户点击鼠标、键盘,触摸屏幕,操作滚动球等输入外设来触发,用户通过这些输入外设输入相应的指令,再经过窗口系统转义之后进行消息的分发,分发给对应的浏览器窗口,浏览器窗口收到消息后,把消息发送到指定的消息处理控件进行处理。
但是,有一些操作系统中是没有浏览器窗口系统的,例如,提供大数据存储的功能的设备,用户的所有输入是无法传递给浏览器窗口的,也不会触发浏览器窗口中的消息处理系统,后续的浏览器操作更无从谈起。
因此,有必要提供一种解决在无窗口系统的情况下,发送用户输入的消息来触发浏览器消息处理装置的技术问题。
发明内容
本发明的主要目的在于提供浏览器系统、消息处理方法、电子设备、装置及存储介质,旨在解决在无浏览器窗口的情况下,模拟用户输入的消息来触发浏览器消息处理装置的技术问题。
为实现上述目的,本发明第一方面提供一种无浏览器窗口的浏览器系统,包括浏览器主进程和浏览器渲染进程,
所述浏览器渲染进程包括:扩展模拟输入接口,用于获取用户输入的命令参数并解析所述命令参数,所述命令参数是指用户事先编写的用以模拟用户通过外设输入的各种控制浏览器的命令的代码信息;
所述浏览器主进程包括:模拟输入识别单元,用于接收所述扩展模拟输入接口发送的命令参数并进行识别为目标浏览请求;
所述浏览器渲染进程根据所述目标浏览请求生成对应的网页数据。
为实现上述目的,本发明第二方面提供一种利用无浏览器窗口的浏览器系统进行消息处理的方法,应用于电子设备中,所述方法包括:
所述浏览器渲染进程对预设多个命令参数进行解析;
所述浏览器主进程对解析后的参数进行识别得到目标浏览请求;
所述浏览器主进程将所述目标浏览请求传递给所述浏览器渲染进程;
所述浏览器渲染进程根据所述目标浏览请求渲染生成对应的网页数据;
所述浏览器渲染进程将所述网页数据通知给所述浏览器主进程。
优选的,所述预设多个命令参数通过以下一种或组合的方式进行获取:
获取默认存储于所述电子设备中的所述多个命令参数;
获取其他设备发送的所述多个命令参数并由所述电子设备进行存储。
优选的,在所述浏览器渲染进程对预设多个命令参数进行解析之前,所述方法还包括:
侦测到预设的对所述多个命令参数进行解析的触发指令时,通过所述扩展模拟输入接口获取所述预设多个命令参数。
优选的,所述预设的对所述多个命令参数进行解析的触发指令通过以下一种或者多种组合的方式进行触发:
达到预设触发时间时触发;
接收到其他设备发送的所述多个命令参数时触发;
接收到其他设备发送的触发指令时触发。
优选的,所述浏览器主进程将所述目标浏览请求传递给所述浏览器渲染进程包括:
所述浏览器主进程调用主UI线程,通过所述主UI线程将所述目标浏览请求发送给所述浏览器渲染进程,其中,所述主UI线程的优先级在所述浏览器主进程所包括的线程的优先级中最高。
优选的,在所述浏览器渲染进程将所述网页数据通知给所述浏览器主进程之后,所述方法还包括:
所述浏览器主进程将所述网页数据发送给其他设备进行显示。
为实现上述目的,本发明第三方面提供一种电子设备,所述电子设备包括存储器和处理器,所述存储器上存储有可在所述处理器上运行的浏览器消息处理程序,所述浏览器消息处理程序被所述处理器执行时实现所述浏览器消息处理方法。
为实现上述目的,本发明第四方面提供一种浏览器消息处理装置,运行于电子设备中,所述电子设备的浏览器系统包括浏览器主进程和浏览器渲染进程,所述装置包括:
解析模块,用于通过浏览器渲染进程对预设多个命令参数进行解析,所述命令参数是指用户事先编写的用以模拟用户通过外设输入的各种控制浏览器的命令的代码信息;
识别模块,用于通过所述浏览器主进程对解析后的参数进行识别得到目标浏览请求;
传递模块,用于通过所述浏览器主进程将所述目标浏览请求传递给所述浏览器渲染进程;
渲染模块,用于通过所述浏览器渲染进程根据所述目标浏览请求渲染生成对应的网页数据;
通知模块,用于通过所述浏览器渲染进程将所述网页数据通知给所述浏览器主进程。
为实现上述目的,本发明进一步提供一种计算机可读存储介质,所述计算机可读存储介质上存储有浏览器消息处理程序,所述浏览器消息处理程序可被一个或者多个处理器执行,以实现所述的浏览器消息处理方法。
本发明实施例所述的无浏览器窗口的浏览器系统、消息处理方法、电子设备、装置及存储介质,通过使用多个命令参数模拟用户的多个输入,经过浏览器渲染进程对多个命令参数进行解析后,调用浏览器主进程中的模拟输入识别单元对解析后的参数进行识别得到目标浏览请求,从而实现了模拟用户通过外设等输入消息并传递给浏览器消息处理装置的过程,事件驱动模型就等于引入了新的事件入口,用命令参数输入代替了鼠标和键盘的输入,即用编码的方式代替了真实的鼠标键盘等外设的输入,使得在无浏览器窗口的系统中,用户也能与浏览器系统进行交互。
附图说明
图1为现有技术中在有浏览器窗口系统的情况下的浏览器消息处理的架构示意图;
图2为本发明第一实施例的无浏览器窗口的浏览器系统的架构示意图;
图3为本发明第二实施例的浏览器消息处理方法的流程示意图;
图4为本发明第三实施例的浏览器消息处理装置的功能模块示意图;
图5为本发明第四实施例揭露的电子设备的内部结构示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
需要说明的是,在本发明中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。
为便于更清楚的了解本发明的技术方案,现结合图1所示的架构示意图简单的介绍下现有技术中有浏览器窗口的浏览器系统是如何处理用户通过外设输入的消息的。
用户通过外设输入消息。用户可以通过外部输入设备(简称为外设),例如,鼠标、键盘等,向有浏览器窗口的浏览器页面发送消息。
驱动接收用户输入的消息,将消息传递给浏览器窗口系统进行处理。
浏览器窗口系统将处理过的消息传递给浏览器窗口。
浏览器主进程接收到消息后,通过浏览器消息处理装置将消息传递给浏览器渲染进程中的webkit引擎。
webkit引擎调用webkit消息处理引擎处理接收到的消息。
webkit消息处理引擎调用事件响应模块进行消息的响应。
浏览器渲染进程发送反馈消息至浏览器主进程中的事件处理应答响应,告诉浏览器主进程消息已处理完毕,同时向浏览器主进程发送处理过的消息。
以上是一个典型的事件驱动系统,每接收用户输入的消息,浏览器做出响应用户操作的动作,由于用户输入的消息对应的处理级别较高,会得到优先处理,所以在有窗口系统的操作系统中这种设计有着很好的用户体验。
但是对于没有窗口的操作系统,则无法通过驱动接收消息并将消息传递给窗口系统进行处理。
实施例一
参照图2,图2为本发明第一实施例的无浏览器窗口的浏览器系统的架构示意图。
本实施例中,无浏览器窗口的浏览器系统2至少包括:浏览器主进程10和浏览器渲染进程20。
所述浏览器主进程10主要负责协调及主控,例如,负责与用户交互,负责各个页面的管理,负责网络资源的管理与下载等。
所述浏览器渲染进程20即通常所述的浏览器内核,主要作用为页面渲染,脚本执行,事件处理等。
所述浏览器渲染进程20可以包括:扩展模拟输入接口201。
所述浏览器主进程10可以包括:模拟输入识别单元101。
其中,所述扩展模拟输入接口201是浏览器中的扩展接口,通过该扩展模拟输入接口201可以获取用户输入的命令参数,并可以解析所述命令参数。所述命令参数是指用户事先编写的用以模拟用户通过外设输入的各种控制浏览器的命令的代码信息。所述模拟输入识别单元101用于接收所述扩展模拟输入接口201发送的命令参数并进行识别为目标浏览请求。后续所述浏览器渲染进程根据所述目标浏览请求生成对应的网页数据。
在其他实施例中,所述浏览器主进程10还可以包括:浏览器消息处理装置及事件处理应答响应模块;所述浏览器渲染进程20还可以包括:webkit引擎,webkit消息处理引擎,JavaScript事件响应等。关于所述浏览器消息处理模块、所述事件处理应答响应模块、所述webkit引擎、所述webkit消息处理引擎及所述JavaScript事件响应,为现有技术,本文在此不再详细赘述。
在本实施例提供的浏览器消息处理的架构中,没有浏览器窗口系统和驱动。而是通过获取用以模拟用户各种输入的命令参数,在浏览器渲染进程20中增加扩展模拟输入接口201来解析所述命令参数,在浏览器主进程10中增加模拟输入识别单元101将所述命令参数转化为浏览器渲染进程能够识别的浏览请求,便能够实现在无浏览器窗口的操作系统中模拟用户输入的消息并进行处理的功能。
下面结合图3所示的流程图具体阐述本发明实施例中提供的如何实现在无窗口的操作系统中浏览器的消息处理的功能。
实施例二
图3为本发明第二实施例的浏览器消息处理方法的流程示意图。所述浏览器消息处理方法包括以下步骤,根据不同的需求,该流程图中步骤的顺序可以改变,某些步骤可以省略。
S31:浏览器渲染进程对预设多个命令参数进行解析。
所述浏览器消息处理方法主要应用于无浏览器窗口的操作系统中,比如,玩客云。当然本发明所提供的浏览器消息处理方法也可以适用于有浏览器窗口的操作系统中,比如Internet Explorer系列的浏览器和Mozilla系列的浏览器。以下主要以无浏览器窗口的操作系统为例来说明具体实现方式。
本实施例中,所述预设多个命令参数为预先设置的多个命令参数,所述多个命令参数是指用户事先编写的用以模拟用户通过外设输入的各种控制浏览器的命令的代码信息。
优选的,所述预设多个命令参数可以通过以下一种或组合的方式进行获取:
获取默认存储于所述电子设备中的所述多个命令参数;
获取其他设备发送的所述多个命令参数并由所述电子设备进行存储。
将用户预先编写好的多个命令参数默认存储于电子设备中,便于电子设备直接按照默认的方式对所述多个命令参数进行解析,然而这种方式需要事先将模拟用户通过外设的所有输入的命令参数写好。而通过其他设备将用户预先编写的多个命令参数发送至电子设备进行存储,能够更加方便用户根据实际需求调整、修改或者更新多个命令参数,灵活度更高。
优选的,在所述浏览器渲染进程对预设多个命令参数进行解析之前,所述方法还可以包括:
侦测到预设的对所述多个命令参数进行解析的触发指令时,通过扩展模拟输入接口获取所述预设多个命令参数。
本实施例中,可以预先设置触发指令,所述触发指令用以触发对所述预设多个命令参数进行解析。
当侦测到所述触发指令对应的事件发生时,自动触发浏览器渲染进程对所述预设多个命令参数进行解析。
优选的,所述预设的对所述多个命令参数进行解析的触发指令可以通过以下一种或者多种组合的方式进行触发:
达到预设触发时间时触发;
接收到其他设备发送的所述多个命令参数时触发;
接收到其他设备发送的触发指令时触发。
本实施例中,可以预先设置触发时间,达到触发时间时自动触发。还可以针对不同的命令参数设置不同的触发时间,例如第一命令参数的触发时间为第一时间,第二命令参数的触发时间为第二时间。设置不同的触发时间触发不同的命令参数,更加合理,控制的更加精细。可以在接收到其他设备发送的命令参数时进行触发,或者在收到到其他设备发送的触发指令时进行触发,便于用户能够通过其他设备对无浏览器窗口的电子设备进行控制,更加方便。
S32:所述浏览器主进程对解析后的参数进行识别得到目标浏览请求。
本实施例中,电子设备可以预先设置命令参数与浏览请求之间的对应关系,不同的命令参数对应不同的浏览请求,一个命令参数唯一对应一个浏览请求。
当所述浏览器渲染进程对多个命令参数进行解析后,可以将解析后的命令参数发送至浏览器主进程,由浏览器主进程调用模拟输入识别单元识别所述命令参数得到目标浏览请求。
具体的,模拟输入识别单元可以按照预设命令参数及浏览请求之间的对应关系,对解析后的命令参数进行匹配出对应的目标浏览请求。例如,识别得到目标浏览请求可以为:用户通过对网页页面进行点击、滚动等操作而发出的浏览请求,用户通过在地址栏输入网址消息而发出的浏览请求。
需要解释的是,本实施例中提供的模拟输入识别单元相当于现有技术中的浏览器窗口系统,模拟输入识别单元的功能相当于浏览器窗口系统接收用户通过键盘或者鼠标等外设输入的浏览请求,即所述模拟输入识别单元识别命令参数得到目标浏览请求类似于模拟用户通过外设输入的浏览请求,并将目标浏览请求传递给浏览器消息处理模块。
S33:所述浏览器主进程将所述目标浏览请求传递给所述浏览器渲染进程。
本实施例中,在浏览器主进程识别得到目标浏览请求时,通过浏览器消息处理模块将所述目标浏览请求发送给浏览器渲染进程,进而由浏览器渲染进程完成后续的网页绘制、合成等网页数据生成过程。
优选的,所述浏览器主进程将所述目标浏览请求传递给所述浏览器渲染进程包括:
所述浏览器主进程调用主UI线程,通过所述主UI线程将所述目标浏览请求发送给所述浏览器渲染进程,其中,所述主UI线程的优先级在所述浏览器主进程所包括的线程的优先级中最高。
本实施例中,为了提高网页显示的顺滑度,浏览器消息处理模块可以调用主UI线程,通过主UI线程将目标浏览请求发送给浏览器渲染进程,主UI线程的优先级在浏览器主进程所包括的线程的优先级中是最高的,因此,通过主UI线程向浏览器渲染进程发送的目标浏览请求将被优先处理。
S34:所述浏览器渲染进程根据所述目标浏览请求渲染生成对应的网页数据。
本实施例中,浏览器渲染进程接收到浏览器主进程传递过来的目标浏览请求时,进行渲染生成对应所述目标浏览请求的网页数据。
所述浏览器渲染进程调用渲染引擎根据所述目标浏览请求渲染生成对应的网页数据。
主流的渲染引擎包括Trident、Gecko、Webkit,它们分别是IE、火狐和Chrome的内核。一般渲染引擎主要包括HTML解释器、CSS解释器、Javascript引擎、布局、绘图等模块。通过渲染引起渲染生成网页数据的过程为现有技术,本发明在此不做详细赘述。
S35:所述浏览器渲染进程将所述网页数据通知给所述浏览器主进程。
本实施例中,当网页数据生成完毕后,浏览器渲染进程可以将所生成的浏览请求对应的网页数据通知给浏览器主进程,至此完成对浏览请求的响应。
进一步,在所述浏览器渲染进程将所述网页数据通知给所述浏览器主进程之后,所述方法还可以包括:
所述浏览器主进程将所述网页数据发送给其他设备进行显示。
浏览器主进程接收到浏览器渲染进程发送的网页数据,可以使用计算机图形用户界面(Graphical User Interface,GUI)根据所述网页数据合成能够进行显示的网页。
本实施例中,由于电子设备无浏览器窗口,因而无法直接通过电子设备的浏览器主进程显示浏览器渲染进程生成的网页数据,需要通过其他设备显示所述网页数据。
综上所述,本发明实施例提供的浏览器信息处理方法,浏览器渲染进程对预设多个命令参数进行解析;所述浏览器主进程对解析后的参数进行识别得到目标浏览请求;所述浏览器主进程将所述目标浏览请求传递给所述浏览器渲染进程;所述浏览器渲染进程根据所述目标浏览请求渲染生成对应的网页数据;所述浏览器渲染进程将所述网页数据通知给所述浏览器主进程。通过使用多个命令参数模拟用户的多个输入,经过浏览器渲染进程进行解析后,调用浏览器主进程中的模拟输入识别单元对解析后的参数进行识别得到目标浏览请求,从而实现了模拟用户通过外设等输入消息并传递给浏览器消息处理装置的过程,事件驱动模型就等于引入了新的事件入口,用命令参数输入代替了鼠标和键盘的输入,即用编码的方式代替了真实的鼠标键盘等外设的输入,使得在无浏览器窗口的系统中,用户也能与浏览器系统进行交互。
上述图2和图3详细介绍了本发明的浏览器消息处理方法,下面结合第4~5图,分别对实现所述浏览器消息处理方法的软件系统的功能模块以及实现所述浏览器消息处理的硬件装置架构进行介绍。
应该了解,所述实施例仅为说明之用,在专利申请范围上并不受此结构的限制。
实施例三
参阅图4所示,为本发明一实施例揭露的浏览器消息处理装置的功能模块示意图。
在一些实施例中,所述浏览器消息处理装置40运行于电子设备中。所述浏览器消息处理装置40可以包括多个由程序代码段所组成的功能模块。所述浏览器消息处理装置40中的各个程序段的程序代码可以存储于电子设备的存储器中,并由所述至少一个处理器所执行,以执行(详见图2和图3描述)在无浏览器窗口的情况下对消息进行处理。
本实施例中,所述浏览器消息处理装置40根据其所执行的功能,可以被划分为多个功能模块。所述功能模块可以包括:解析模块401、获取模块402、识别模块403、传递模块404、渲染模块405及通知模块406。本发明所称的模块是指一种能够被至少一个处理器所执行并且能够完成固定功能的一系列计算机程序段,其存储在存储器中。在本实施例中,关于各模块的功能将在后续的实施例中详述。
解析模块401,用于通过浏览器渲染进程对预设多个命令参数进行解析。
所述浏览器消息处理方法主要应用于无浏览器窗口的操作系统中,比如,玩客云。当然本发明所提供的浏览器消息处理方法也可以适用于有浏览器窗口的操作系统中,比如Internet Explorer系列的浏览器和Mozilla系列的浏览器。以下主要以无浏览器窗口的操作系统为例来说明具体实现方式。
本实施例中,所述预设多个命令参数为预先设置的多个命令参数,所述多个命令参数是指用户事先编写的用以模拟用户通过外设输入的各种控制浏览器的命令的代码信息。
优选的,所述预设多个命令参数可以通过以下一种或组合的方式进行获取:
获取默认存储于所述电子设备中的所述多个命令参数;
获取其他设备发送的所述多个命令参数并由所述电子设备进行存储。
将用户预先编写好的多个命令参数默认存储于电子设备中,便于电子设备直接按照默认的方式对所述多个命令参数进行解析,然而这种方式需要事先将模拟用户通过外设的所有输入的命令参数写好。而通过其他设备将用户预先编写的多个命令参数发送至电子设备进行存储,能够更加方便用户根据实际需求调整、修改或者更新多个命令参数,灵活度更高。
优选的,在所述解析模块401通过浏览器渲染进程对预设多个命令参数进行解析之前,所述浏览器消息处理装置40还可以包括:
获取模块402,用于侦测到预设的对所述多个命令参数进行解析的触发指令时,通过扩展模拟输入接口获取所述预设多个命令参数。
本实施例中,可以预先设置触发指令,所述触发指令用以触发对所述预设多个命令参数进行解析。
当侦测到所述触发指令对应的事件发生时,自动触发浏览器渲染进程对所述预设多个命令参数进行解析。
优选的,所述预设的对所述多个命令参数进行解析的触发指令可以通过以下一种或者多种组合的方式进行触发:
达到预设触发时间时触发;
接收到其他设备发送的所述多个命令参数时触发;
接收到其他设备发送的触发指令时触发。
本实施例中,可以预先设置触发时间,达到触发时间时自动触发。还可以针对不同的命令参数设置不同的触发时间,例如第一命令参数的触发时间为第一时间,第二命令参数的触发时间为第二时间。设置不同的触发时间触发不同的命令参数,更加合理,控制的更加精细。可以在接收到其他设备发送的命令参数时进行触发,或者在收到到其他设备发送的触发指令时进行触发,便于用户能够通过其他设备对无浏览器窗口的电子设备进行控制,更加方便。
识别模块403,用于通过浏览器主进程对解析后的参数进行识别得到目标浏览请求。
本实施例中,电子设备可以预先设置命令参数与浏览请求之间的对应关系,不同的命令参数对应不同的浏览请求,一个命令参数唯一对应一个浏览请求。
当所述浏览器渲染进程对多个命令参数进行解析后,可以将解析后的命令参数发送至浏览器主进程,由浏览器主进程调用模拟输入识别单元识别所述命令参数得到目标浏览请求。
具体的,模拟输入识别单元可以按照预设命令参数及浏览请求之间的对应关系,对解析后的命令参数进行匹配出对应的目标浏览请求。例如,识别得到目标浏览请求可以为:用户通过对网页页面进行点击、滚动等操作而发出的浏览请求,用户通过在地址栏输入网址消息而发出的浏览请求。
需要解释的是,本实施例中提供的模拟输入识别单元相当于现有技术中的浏览器窗口系统,模拟输入识别单元的功能相当于浏览器窗口系统接收用户通过键盘或者鼠标等外设输入的浏览请求,即所述模拟输入识别单元识别命令参数得到目标浏览请求类似于模拟用户通过外设输入的浏览请求,并将目标浏览请求传递给浏览器消息处理模块。
传递模块404,用于通过所述浏览器主进程将所述目标浏览请求传递给所述浏览器渲染进程。
本实施例中,在浏览器主进程识别得到目标浏览请求时,通过浏览器消息处理模块将所述目标浏览请求发送给浏览器渲染进程,进而由浏览器渲染进程完成后续的网页绘制、合成等网页数据生成过程。
优选的,所述传递模块404通过浏览器主进程将所述目标浏览请求传递给所述浏览器渲染进程包括:
所述浏览器主进程调用主UI线程,通过所述主UI线程将所述目标浏览请求发送给所述浏览器渲染进程,其中,所述主UI线程的优先级在所述浏览器主进程所包括的线程的优先级中最高。
本实施例中,为了提高网页显示的顺滑度,浏览器消息处理模块可以调用主UI线程,通过主UI线程将目标浏览请求发送给浏览器渲染进程,主UI线程的优先级在浏览器主进程所包括的线程的优先级中是最高的,因此,通过主UI线程向浏览器渲染进程发送的目标浏览请求将被优先处理。
渲染模块405,用于通过所述浏览器渲染进程根据所述目标浏览请求渲染生成对应的网页数据。
本实施例中,浏览器渲染进程接收到浏览器主进程传递过来的目标浏览请求时,进行渲染生成对应所述目标浏览请求的网页数据。
所述浏览器渲染进程调用渲染引擎根据所述目标浏览请求渲染生成对应的网页数据。
主流的渲染引擎包括Trident、Gecko、Webkit,它们分别是IE、火狐和Chrome的内核。一般渲染引擎主要包括HTML解释器、CSS解释器、Javascript引擎、布局、绘图等模块。通过渲染引起渲染生成网页数据的过程为现有技术,本发明在此不做详细赘述。
通知模块406,用于通过所述浏览器渲染进程将所述网页数据通知给所述浏览器主进程。
本实施例中,当网页数据生成完毕后,浏览器渲染进程可以将所生成的浏览请求对应的网页数据通知给浏览器主进程,至此完成对浏览请求的响应。
进一步,在所述通知模块406通过浏览器渲染进程将所述网页数据通知给所述浏览器主进程之后,所述浏览器消息处理装置还可以包括:
所述浏览器主进程将所述网页数据发送给其他设备进行显示。
浏览器主进程接收到浏览器渲染进程发送的网页数据,可以使用计算机图形用户界面(Graphical User Interface,GUI)根据所述网页数据合成能够进行显示的网页。
本实施例中,由于电子设备无浏览器窗口,因而无法直接通过电子设备的浏览器主进程显示浏览器渲染进程生成的网页数据,需要通过其他设备显示所述网页数据。
综上所述,本发明实施例提供的浏览器信息处理装置,解析模块通过浏览器渲染进程对预设多个命令参数进行解析;识别模块通过浏览器主进程对解析后的参数进行识别得到目标浏览请求;传递模块通过所述浏览器主进程将所述目标浏览请求传递给所述浏览器渲染进程;渲染模块通过所述浏览器渲染进程根据所述目标浏览请求渲染生成对应的网页数据;通知模块通过所述浏览器渲染进程将所述网页数据通知给所述浏览器主进程。通过使用多个命令参数模拟用户的多个输入,经过浏览器渲染进程进行解析后,调用浏览器主进程中的模拟输入识别单元对解析后的参数进行识别得到目标浏览请求,从而实现了模拟用户通过外设等输入消息并传递给浏览器消息处理装置的过程,事件驱动模型就等于引入了新的事件入口,用命令参数输入代替了鼠标和键盘的输入,即用编码的方式代替了真实的鼠标键盘等外设的输入,使得在无浏览器窗口的系统中,用户也能与浏览器系统进行交互。
实施例四
图5为本发明一实施例揭露的电子设备的内部结构示意图。
在本实施例中,电子设备5可以是固定电子设备,也可以是移动电子设备,可以为有浏览器窗口的电子设备,也可以为无浏览器窗口的电子设备。
所述电子设备5可以包括存储器51、处理器52和总线53。
其中,存储器51至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、磁性存储器、磁盘、光盘等。存储器51在一些实施例中可以是所述电子设备5的内部存储单元,例如所述电子设备5的硬盘。存储器51在另一些实施例中也可以是所述电子设备5的外部存储设备,例如所述电子设备5上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,存储器51还可以既包括所述电子设备5的内部存储单元也包括外部存储设备。存储器51不仅可以用于存储安装于所述电子设备5的应用软件及各类数据,例如浏览器消息处理装置40的代码等及各个模块,例如,解析模块401、获取模块402、识别模块403、传递模块404、渲染模块405及通知模块406,还可以用于暂时地存储已经输出或者将要输出的数据。
处理器52在一些实施例中可以是一中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器或其他数据处理芯片,用于运行存储器51中存储的程序代码或处理数据。
该总线53可以是外设部件互连标准(peripheral component interconnect,PCI)总线或扩展工业标准结构(extended industry standard architecture,EISA)总线等。该总线可以分为地址总线、数据总线、控制总线等。为便于表示,图5中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
进一步地,所述电子设备5还可以包括网络接口,网络接口可选的可以包括有线接口和/或无线接口(如WI-FI接口、蓝牙接口等),通常用于在该电子设备5与其他电子设备之间建立通信连接。
可选地,该电子设备5还可以包括用户接口,用户接口可以包括显示器(Display)、输入单元比如键盘(Keyboard),可选的用户接口还可以包括标准的有线接口、无线接口。可选地,在一些实施例中,显示器可以是LED显示器、液晶显示器、触控式液晶显示器以及OLED(Organic Light-Emitting Diode,有机发光二极管)触摸器等。其中,显示器也可以适当的称为显示屏或显示单元,用于显示在所述电子设备5中处理的消息以及用于显示可视化的用户界面。
图5仅示出了具有组件51-53以及所述浏览器消息处理装置40的所述电子设备5,本领域技术人员可以理解的是,图5示出的结构并不构成对所述电子设备5的限定,既可以是总线型结构,也可以是星形结构,所述电子设备5还可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。其他现有的或今后可能出现的电子产品如可适应于本发明,也应包含在本发明的保护范围以内,并以引用方式包含于此。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。
所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
需要说明的是,上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。并且本文中的术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种无浏览器窗口的浏览器系统,包括浏览器主进程和浏览器渲染进程,其特征在于,
所述浏览器渲染进程包括:扩展模拟输入接口,用于获取其他设备发送的命令参数并达到预设触发时间时解析所述命令参数,所述命令参数是指用户事先编写的用以模拟用户通过外设输入的各种控制浏览器的命令的代码信息;
所述浏览器主进程包括:模拟输入识别单元,用于接收所述扩展模拟输入接口发送的所述命令参数并进行识别为目标浏览请求,所述目标浏览请求为模拟用户通过外设输入的浏览请求;
所述浏览器渲染进程根据所述目标浏览请求生成对应的网页数据并将所述网页数据发送给所述其他设备进行显示。
2.一种利用如权利要求1所述的浏览器系统进行消息处理的方法,应用于电子设备中,其特征在于,所述方法包括:
所述浏览器渲染进程对预设多个命令参数进行解析;
所述浏览器主进程中对解析后的参数进行识别得到目标浏览请求;
所述浏览器主进程将所述目标浏览请求传递给所述浏览器渲染进程;
所述浏览器渲染进程根据所述目标浏览请求渲染生成对应的网页数据;
所述浏览器渲染进程将所述网页数据通知给所述浏览器主进程。
3.如权利要求2所述的方法,其特征在于,所述预设多个命令参数通过以下一种或组合的方式进行获取:
获取默认存储于所述电子设备中的所述多个命令参数;
获取其他设备发送的所述多个命令参数并由所述电子设备进行存储。
4.如权利要求2所述的方法,其特征在于,在所述浏览器渲染进程对预设多个命令参数进行解析之前,所述方法还包括:
侦测到预设的对所述多个命令参数进行解析的触发指令时,通过所述扩展模拟输入接口获取所述预设多个命令参数。
5.如权利要求4所述的方法,其特征在于,所述预设的对所述多个命令参数进行解析的触发指令通过以下一种或者多种组合的方式进行触发:
达到预设触发时间时触发;
接收到其他设备发送的所述多个命令参数时触发;
接收到其他设备发送的触发指令时触发。
6.如权利要求2所述的方法,其特征在于,所述浏览器主进程将所述目标浏览请求传递给所述浏览器渲染进程包括:
所述浏览器主进程调用主UI线程,通过所述主UI线程将所述目标浏览请求发送给所述浏览器渲染进程,其中,所述主UI线程的优先级在所述浏览器主进程所包括的线程的优先级中最高。
7.如权利要求2至6任意一项所述的方法,其特征在于,在所述浏览器渲染进程将所述网页数据通知给所述浏览器主进程之后,所述方法还包括:
所述浏览器主进程将所述网页数据发送给其他设备进行显示。
8.一种电子设备,其特征在于,所述电子设备包括存储器和处理器,所述存储器上存储有可在所述处理器上运行的浏览器消息处理程序,所述浏览器消息处理程序被所述处理器执行时实现如权利要求2-7任一项所述的消息处理方法。
9.一种浏览器消息处理装置,运行于电子设备中,所述电子设备的浏览器系统如权利要求1所述浏览器系统包括浏览器主进程和浏览器渲染进程,其特征在于,所述装置包括:
解析模块,用于通过浏览器渲染进程对预设多个命令参数进行解析,所述命令参数是指用户事先编写的用以模拟用户通过外设输入的各种控制浏览器的命令的代码信息;
识别模块,用于通过所述浏览器主进程对解析后的参数进行识别得到目标浏览请求;
传递模块,用于通过所述浏览器主进程将所述目标浏览请求传递给所述浏览器渲染进程;
渲染模块,用于通过所述浏览器渲染进程根据所述目标浏览请求渲染生成对应的网页数据;
通知模块,用于通过所述浏览器渲染进程将所述网页数据通知给所述浏览器主进程。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有浏览器消息处理程序,所述浏览器消息处理程序可被一个或者多个处理器执行,以实现如权利要求2-7中任一项所述的消息处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811603379.XA CN109740092B (zh) | 2018-12-26 | 2018-12-26 | 浏览器系统、消息处理方法、电子设备、装置及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811603379.XA CN109740092B (zh) | 2018-12-26 | 2018-12-26 | 浏览器系统、消息处理方法、电子设备、装置及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109740092A CN109740092A (zh) | 2019-05-10 |
CN109740092B true CN109740092B (zh) | 2022-02-01 |
Family
ID=66360022
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811603379.XA Active CN109740092B (zh) | 2018-12-26 | 2018-12-26 | 浏览器系统、消息处理方法、电子设备、装置及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109740092B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110532491B (zh) * | 2019-08-19 | 2022-05-06 | 无线生活(杭州)信息科技有限公司 | 前端页面构建方法及装置 |
CN112860982B (zh) * | 2019-11-27 | 2024-05-10 | 阿里巴巴集团控股有限公司 | 数据处理方法、装置、电子设备及计算机存储介质 |
CN112614403A (zh) * | 2020-12-25 | 2021-04-06 | 深圳市小喵科技有限公司 | 硬件仿真方法及装置 |
CN113032705A (zh) * | 2021-03-08 | 2021-06-25 | 广州虎牙科技有限公司 | 浏览器页面数据的处理处理方法、装置、设备及介质 |
CN114238825A (zh) * | 2021-12-06 | 2022-03-25 | 武汉锂钠氪锶科技有限公司 | 一种浏览器窗口状态控制方法及系统 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103577497A (zh) * | 2012-08-10 | 2014-02-12 | 厦门极致互动网络技术有限公司 | 一种网络游戏客户端与网络浏览器双向通讯系统与方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8914813B1 (en) * | 2010-04-09 | 2014-12-16 | Google Inc. | Interfaces to enable cross-browser extensions and applications thereof |
CN103207748B (zh) * | 2012-01-17 | 2016-03-02 | 腾讯科技(深圳)有限公司 | 基于浏览器扩展实现响应的方法及浏览器 |
CN104951287B (zh) * | 2014-03-26 | 2018-09-11 | 可牛网络技术(北京)有限公司 | 一种生成网页的方法及装置 |
CN105204606A (zh) * | 2014-06-11 | 2015-12-30 | 阿里巴巴集团控股有限公司 | 一种利用体感遥控设备控制浏览器的方法、装置及系统 |
CN108984244A (zh) * | 2018-06-12 | 2018-12-11 | 深圳市网心科技有限公司 | 浏览器页面渲染方法、电子装置及计算机可读存储介质 |
-
2018
- 2018-12-26 CN CN201811603379.XA patent/CN109740092B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103577497A (zh) * | 2012-08-10 | 2014-02-12 | 厦门极致互动网络技术有限公司 | 一种网络游戏客户端与网络浏览器双向通讯系统与方法 |
Also Published As
Publication number | Publication date |
---|---|
CN109740092A (zh) | 2019-05-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109740092B (zh) | 浏览器系统、消息处理方法、电子设备、装置及存储介质 | |
CN110020292B (zh) | 网页内容提取方法以及终端设备 | |
US20220067268A1 (en) | Systems and methods for remote dashboard image generation | |
US9026931B2 (en) | Cross-browser “drag-and-drop” library | |
WO2011076505A2 (en) | Improving performance of template based javascript widgets | |
US20170212964A1 (en) | System and method for dynamic content rendering | |
US20140344670A1 (en) | Method and system for on-demand delivery of predefined in-context web content | |
CN106933629B (zh) | 加载浏览器插件图标的方法及浏览器 | |
CN108197024B (zh) | 嵌入式浏览器调试方法、调试终端及计算机可读存储介质 | |
CN105160028B (zh) | 网页浏览实现方法和浏览器实现系统 | |
WO2013134027A1 (en) | Uniquely identifying script files | |
CN104156213A (zh) | 安卓应用的运行方法及装置 | |
CN113590104A (zh) | 一种实现图形化无代码软件开发平台及方法、计算机设备及存储介质 | |
CN111079048A (zh) | 一种页面加载方法及装置 | |
CN105051713B (zh) | 基于网络的键盘、视频和鼠标(kvm)重定向的方法及系统 | |
CN105051714B (zh) | 基于网络的虚拟媒体重定向的系统和方法 | |
CN112395535B (zh) | 图片的懒加载方法及装置、介质和电子设备 | |
WO2016019105A1 (en) | Method and system for testing page link addresses | |
CN109669799B (zh) | 错误上报控制方法、装置及存储介质 | |
CN114006885A (zh) | 一种基于智能设备的数据采集方法、装置及电子设备 | |
CN106126198B (zh) | 在移动端加载pc端应用页面的方法及装置 | |
CN105138322B (zh) | 生成应用程序的方法及系统 | |
EP2431933A1 (en) | Treatment controller | |
US20120054313A1 (en) | Interpreting web application content | |
US10996963B2 (en) | Integrating web-based tutorials into websites using a tag manager |
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 |