CN104850415A - 页面加载方法和装置 - Google Patents
页面加载方法和装置 Download PDFInfo
- Publication number
- CN104850415A CN104850415A CN201410050979.3A CN201410050979A CN104850415A CN 104850415 A CN104850415 A CN 104850415A CN 201410050979 A CN201410050979 A CN 201410050979A CN 104850415 A CN104850415 A CN 104850415A
- Authority
- CN
- China
- Prior art keywords
- page
- loading
- presented
- resource
- display area
- 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.)
- Pending
Links
Abstract
本发明公开了一种页面加载方法和装置。其中,该方法包括:获取与待展示页面对应的页面文件,其中,页面文件用于指示待展示页面中待加载的页面元素;根据页面文件在待展示页面中加载第一页面元素和第二页面元素,且加载第一页面元素的优先级高于加载第二页面元素的优先级,其中,第一页面元素表示可视区域或设定展示区域内的待加载的页面元素,第二页面元素表示可视区域或设定展示区域外的待加载的页面元素;输出加载后的待展示页面。本发明解决了现有的页面加载方案中可视区域或设定展示区域内的页面元素的加载速度较慢的技术问题。
Description
技术领域
本发明涉及计算机领域,具体而言,涉及一种页面加载方法和装置。
背景技术
在现有技术中,页面的加载通常可以通过在待展示页面中加载页面元素来完成的,例如,可以先获取待展示页面的页面框架,然后该页面框架中加载页面元素,以完成页面的加载。
其中,作为一种可行的解决方案,页面元素在待展示页面中的加载可以是逐一完成的,其中,如果待加载的页面元素有N个,则该N个待加载的页面元素将会按照预设的逻辑逐一地加载到待展示页面中,这种方式也可以视为是单线程的处理方式。
作为另一种可行的解决方案,还可以采用多线程的处理方式同时加载上述N个页面元素,其中,可以为每一待加载的页面元素创建一个加载任务,并同时执行多个加载任务。
与单线程的方式相比,多线程的方式显然提高了加载速度,然而由于同时执行的多个加载任务可能会申请相同的资源,比如服务于在本地与外部之间进行交互的I/O资源,因此在同时执行的加载任务较多而资源不足的情形下,在多个加载任务相互之间就会出现对资源的竞争,进而竞争到资源的加载任务可以加载对应的页面元素,未竞争到资源的加载任务则无法继续执行,从而导致其所对应的页面元素无法及时加载到待展示页面中。在上述场景下,如果该无法及时加载的页面元素在可视区域或设定展示区域内,则实时呈现给用户的可视区域或设定展示区域内的待展示页面将会在较长的一段时间内不完整,这就影响了用户的体验。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种页面加载方法和装置,以至少解决现有的页面加载方案中可视区域或设定展示区域内的页面元素的加载速度较慢的技术问题。
根据本发明实施例的一个方面,提供了一种页面加载方法,包括:获取与待展示页面对应的页面文件,其中,上述页面文件用于指示上述待展示页面中待加载的页面元素;根据上述页面文件在上述待展示页面中加载第一页面元素和第二页面元素,且加载上述第一页面元素的优先级高于加载上述第二页面元素的优先级,其中,上述第一页面元素表示可视区域或设定展示区域内的上述待加载的页面元素,上述第二页面元素表示可视区域或设定展示区域外的上述待加载的页面元素;输出加载后的待展示页面。
根据本发明实施例的另一方面,还提供了一种页面加载装置,包括:获取单元,用于获取与待展示页面对应的页面文件,其中,上述页面文件用于指示上述待展示页面中待加载的页面元素;加载单元,用于根据上述页面文件在上述待展示页面中加载第一页面元素和第二页面元素,且加载上述第一页面元素的优先级高于加载上述第二页面元素的优先级,其中,上述第一页面元素表示可视区域或设定展示区域内的上述待加载的页面元素,上述第二页面元素表示可视区域或设定展示区域外的上述待加载的页面元素;输出单元,用于输出加载后的待展示页面。
在本发明实施例中,可以在类似于多线程的处理方式的基础上,结合对可视区域或设定展示区域内的页面元素与可视区域或设定展示区域外的页面元素的区别处理,以达到优先加载可视区域或设定展示区域内的待加载的页面元素的目的,进而达到缩短可视区域或设定展示区域内的待展示页面的加载时间的效果,从而解决现有的页面加载方案中可视区域或设定展示区域内的页面元素的加载速度较慢的问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的一种可选的页面加载方法的示意图;
图2是根据本发明实施例的一种可选的待展示页面的示意图;
图3是根据本发明实施例的另一种可选的页面加载方法的示意图;
图4是根据本发明实施例的又一种可选的页面加载方法的示意图;
图5是根据本发明实施例的另一种可选的待展示页面的示意图;
图6是根据本发明实施例的又一种可选的待展示页面的示意图;
图7是根据本发明实施例的又一种可选的页面加载方法的示意图;
图8是根据本发明实施例的一种可选的页面加载装置的示意图;
图9是根据本发明实施例的一种可选的页面加载的缓存策略的示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
实施例1
根据本发明实施例,提供了一种页面加载方法,如图1所示,该方法包括:
S102:获取与待展示页面对应的页面文件,其中,页面文件用于指示待展示页面中待加载的页面元素;
S104:根据页面文件在待展示页面中加载第一页面元素和第二页面元素,且加载第一页面元素的优先级高于加载第二页面元素的优先级,其中,第一页面元素表示可视区域或设定展示区域内的待加载的页面元素,第二页面元素表示可视区域或设定展示区域外的待加载的页面元素;
S106:输出加载后的待展示页面。
应当理解的是,本发明所要解决的问题之一是提供一种方法,以便于实现页面的加载(load),其中,该页面通常可以表示用于向系统外部的用户呈现文字、图形等信息的一种可视化的信息载体,例如,具体地,其可以是在浏览器上展示的网页,也可以是在客户端上展示的操作界面,等。从技术角度而言,这种基于功能定义的页面类型的划分通常对应于页面的开发环境和工作环境,例如,在WWW环境中的页面即可以称之为网页(webpage)等。换而言之,在本发明实施例中,上述页面的表现形式可以有多种,具体地,可以视上述方法的实施环境而定,本发明对此不作限定。其中,为便于描述,以下将用于在上述加载完成之后实时地、或者在某一时间间隔内向系统外部进行展示的页面记为待展示页面。
在本发明实施例中,页面的加载可以通过在待展示页面中加载页面元素来完成的,例如,在本发明的一些实施例中,可以先获取待展示页面的页面框架,然后该页面框架中加载页面元素,以完成页面的加载。其中,该页面元素可以表示文字、图片、表格、音频、视频等直接呈现在待展示页面中、用于向用户传达信息的对象,然而这并非本发明唯一的实施方式,例如,其还可以表示上述对象的位置、尺寸、样式、渲染效果等同样需要在待展示页面中加载的属性,或者是由上述对象及属性封装而成的组件等,应当理解的是,这并不影响本发明技术方案的实施及其技术效果的实现,本发明对此也不作任何限定。为便于描述,以下将待展示页面中待加载的页面元素记为待加载的页面元素。进一步可选地,在本发明实施例中,为区分已经加载到待展示页面的页面元素与待加载的页面元素,在加载过程中,通常可以为作为加载对象的页面元素设置一个状态标签,并且在完成对该页面元素的加载时,将该页面元素的状态标签由待加载状态切换至已加载状态,进而可以在任一时刻采用本发明实施例提供的页面加载方法对标记为待加载状态的页面元素进行加载。
进一步地,为实现对页面元素的加载,作为一种可行的解决方案,页面元素在待展示页面中的加载可以是逐一完成的,其中,如果待加载的页面元素有N个,则该N个待加载的页面元素将会按照预设的逻辑逐一地加载到待展示页面中,这种方式也可以视为是单线程的处理方式。作为另一种可行的解决方案,还可以采用多线程的处理方式同时加载上述N个页面元素,其中,可以为每一待加载的页面元素创建一个加载任务,并同时执行多个加载任务。与单线程的方式相比,多线程的方式显然提高了加载速度,然而由于同时执行的多个加载任务可能会申请相同的资源,比如服务于在本地与外部之间进行交互的I/O资源,因此在同时执行的加载任务较多而资源不足的情形下,在多个加载任务相互之间就会出现对资源的竞争,进而竞争到资源的加载任务可以加载对应的页面元素,未竞争到资源的加载任务则无法继续执行,从而导致其所对应的页面元素无法及时加载到待展示页面中。在上述场景下,如果该无法及时加载的页面元素在可视区域或设定展示区域内,则实时呈现给用户的可视区域或设定展示区域内的待展示页面将会在较长的一段时间内不完整,这就影响了用户的体验。
为解决这一问题,在本发明实施例中,可以在类似于上述多线程的处理方式的基础上,结合对可视区域或设定展示区域内的页面元素与可视区域或设定展示区域外的页面元素的区别处理,以达到优先加载可视区域或设定展示区域内的待加载的页面元素的目的,进而达到缩短可视区域或设定展示区域内的待展示页面的加载时间的效果,从而解决现有的页面加载方案中可视区域或设定展示区域内的页面元素的加载速度较慢的问题。除此之外,通过本发明实施例中对加载可视区域或设定展示区域内的页面元素与加载可视区域或设定展示区域外的页面元素的不同优先级的设置,还可以克服二者之间在竞争资源时可能出现的死锁现象,从而提高了系统的工作效率。
以下将结合附图及实施例对本发明技术方案进行详细描述。
根据本发明实施例提供的页面加载方法,在步骤S102中,可以获取与待展示页面对应的页面文件,其中,该页面文件用于指示待展示页面中待加载的页面元素。
具体地,在本发明的一些实施例中,该页面文件可以表示上述的页面框架,进而在该页面框架中可以记录有用于指示待加载的页面元素的标识,例如,在一个实施例中,该页面文件可以是与作为待展示页面的网页相对应的超文本标记语言html(HyperText Mark-up Language)文件,若该网页存在待加载的页面元素如图片,则可以在html文件中添加“<img src=”图片路径”/>”语句,以指示加载由“图片路径”所指示的图片。
当然,这只是一种示例,在本发明实施例中,待加载的页面元素并不限于图片,从而页面文件中用于指示待加载的页面元素的标识也并不限于上述语句,此外,上述页面文件也并不限于html文件,还可以是动态服务器页面asp(Active Server Page)脚本、Java服务器页面jsp(Java Server Page)脚本、或超文本预处理器php(HypertextPreprocessor)脚本等具备平台无关性的页面文件。事实上,在本发明实施例中,页面文件甚至可以不限于是超媒体文档或者是采用标准通用标记语言所形成的文档,其还可以是能够被用于页面加载的加载器所识别的其他可行的文件,例如与互联网服务的提供方自行开发的语言环境相适配的页面文件等,本发明对此不作限定。
除此之外,本发明并不会限定上述页面文件的来源。例如,在本发明的一些实施例中,该页面文件可以获取自外部如Web服务器,进而上述方法可以实施于运行在客户端上的应用如浏览器等,以服务于对网页的加载,而在本发明的另一些实施例中,该页面文件也可以获取自本地,比如可以由上述应用根据设计需要在客户端的本地拼装出页面文件,等,具体地,可以根据本发明的实施环境而定。
例如,在一个实施例中,上述方法可以实施在运行有一款在线应用的客户端,其中,该客户端至少用于向用户展示与该在线应用对应的多个信息记录。在这一场景下,待展示页面可以是用于向用户展示多个信息记录的页面,其所对应的页面文件可以由客户端在本地拼装而成,其中,可选地,客户端可以根据用于请求展示信息记录的消息查找出与该消息对应的多个信息记录的标识,进而将多个信息记录的标识拼装成为页面文件,从而可以通过步骤S104,根据该页面文件加载与该页面文件中的标识对应的多个信息记录。
当然,这只是一种示例,并不意味着对本发明构成了限定,例如,在本发明的一些实施例中,对于占用空间较小的信息记录、比如能够以文本形式出现的信息记录而言,也可以直接获取并将该信息记录拼装到页面文件中,以避免对磁盘I/O或外部I/O的重复访问。在这一情形下,仍然可以通过实施本发明实施例提供的页面加载方法来提高可视区域或设定展示区域内的待展示页面的加载速度,其中,待加载的页面元素可以是上述信息记录的样式和渲染效果,以及除信息记录外的其他第一页面元素,如背景画面等,以及其他第一页面元素的样式和渲染效果等,本发明对此不作限定。
进一步地,根据本发明实施例提供的页面访问方法,在步骤S104中,可以根据页面文件在待展示页面中加载第一页面元素和第二页面元素,且加载第一页面元素的优先级高于加载第二页面元素的优先级,其中,第一页面元素表示可视区域或设定展示区域内的待加载的页面元素,第二页面元素表示可视区域或设定展示区域外的待加载的页面元素。进而可以通过步骤S106输出加载后的待展示页面,其中,输出的待展示页面通常可以是向显示设备输出,然而本发明对此不作限定,例如,特别地,在本发明的一些实施例中,该待展示页面也可以向图像处理设备输出,以便于图像处理设备根据输出的待展示页面进行后续的处理。
在本发明实施例中,可视区域可以表示在对待展示页面进行展示时、该待展示页面中处于可视状态下的区域,例如,对于运行在智能手机或主机上的操作系统而言,其所维护的可视区域的大小通常与主UI线程所配置的窗口尺寸相对应,在这一情形下,可视区域即可以相当于该智能手机或主机的用户界面上显示的窗口区域。此外,设定展示区域通常可以表示由运行在客户端上的应用自行设定的展示区域,例如,对于一款智能手机应用而言,该应用所设置的可视区域的大小通常会小于该应用所在的智能手机的显示区域的大小。一般而言,上述由主UI线程或客户端上的应用所设置的可视区域或展示区域也可以由用户通过操作系统提供的操作接口进行调整,比如用户可以通过鼠标拖动或手指触碰等方式对显示窗口进行调整,从而改变可视区域或设定展示区域的大小。当然,以上仅作为示意性地描述,便于普通技术人员对本发明的理解,并不会对本发明构成任何不必要的限定,例如,在本发明的一些实施例中,上述可视区域或设定展示区域也可以表现为其他具体形式,应当理解,基于本发明实施例的等同替换或变型的实施方式,均应视为在本发明的保护范围之内。
例如,在一个实施例中,如图2所示,位于外侧的实线框可以表示待展示页面的边界,位于内侧的多个较小的方块可以表示待加载的页面元素,虚线框可以表示可视区域或设定展示区域,其中,为便于描述,可以通过分别位于图2左侧和上方的数字1至9和字母A至F对多个待加载的页面元素进行标记。
如图2所示,容易理解,由黑色实心方块所表示的位于可视区域或设定展示区域内的页面元素B2、B3、C2、C3、D2、D3为第一页面元素,由空心方块所表示的其他页面元素为第二页面元素,进而根据本发明实施例提供的页面加载方法,可以通过步骤S104对第一页面元素和第二页面元素进行加载,且加载第一页面元素的优先级高于加载第二页面元素的优先级,从而达到优先加载位于可视区域或设定展示区域内的页面元素的目的,进而达到缩短可视区域或设定展示区域内的待展示页面的加载时间的效果,进而解决了现有的页面加载方案中可视区域或设定展示区域内的页面元素的加载速度较慢的问题,并且可以降低死锁现象发生的可能性。
具体地,在本发明实施例中,加载第一页面元素的优先级高于加载第二页面元素的优先级可以表现为时序上的先后,例如,可以在第一页面元素加载完成后顺序执行加载第二页面元素的任务。然而这一实施方式仍存在资源利用率较低的问题,例如,在一个场景下,加载某一第一页面元素的线程发生堵塞,则会导致全部第二页面元素的加载的延迟,而在延迟的时期内,处理资源很可能是空闲的。
针对这一问题,可以采用竞争资源的机制,进而加载第一页面元素的优先级高于加载第二页面元素的优先级可以表现为优先为加载第一页面元素的任务分配资源,其中,可选地,如图3所示,在本发明实施例中,步骤S104可以包括:
S302:判断第一加载任务与第二加载任务之间是否存在对资源的竞争,该资源包括以下至少之一:CPU资源、I/O资源、内存资源、系统资源,其中,第一加载任务用于加载第一页面元素,第二加载任务用于加载第二页面元素;
S304:若存在对资源的竞争,则将竞争的资源优先分配给第一加载任务。
在本发明实施例中,CPU资源对应于对CPU的处理能力的分配,其通常可以表示CPU的使用时间,内存资源可以表示对内存及缓存的使用,第一加载任务与第二加载任务对CPU资源和内存资源的竞争通常出现在对待展示页面进行渲染的过程中所涉及的大量的运算操作中,然而本发明对此不作限定。I/O资源可以包括多种,最为常用的是磁盘I/O和外部I/O如网络连接的I/O等,对应于对这些输入输出接口的使用的分配,其中,第一加载任务与第二加载任务对I/O资源的竞争通常出现在对待加载的页面元素的提取过程中,然而本发明对此不作限定。系统资源服务于对加载任务的跟踪及实时响应,第一加载任务与第二加载任务对系统资源的竞争通常可以出现在任务执行的全过程中,然而本发明对此不作限定。其中,在第一加载任务与第二加载任务的执行过程中,若通过步骤S302判断出存在对上述任一资源的竞争的情形,则可以通过步骤S304将竞争的资源优先分配给用于加载第一页面元素的第一加载任务,从而实现加载第一页面元素与加载第二页面元素的优先级的区分。
在上述场景下,第一加载任务可以视为在系统的前台运行,例如,在本发明的一些实施例中,该第一加载任务可以通过主UI线程来执行,以便于实时地向用户呈现可视区域或设定展示区域内的待展示页面。第二加载任务可以视为在系统的后台运行,例如,该第二加载任务可以通过在主UI线程外开启的子线程来执行,从而可以充分地利用系统中的空闲资源异步加载第二页面元素,以自行完成对待展示页面的整体的加载,这有利于在可视区域或设定展示区域发生变动时及时地向用户呈现变动前的可视区域或设定展示区域以外的其他区域的待展示画面。
在本发明实施例中,步骤S302中所述的对竞争的判断以及步骤S304中所述的对竞争的资源的分配可以有多种具体的实施方式,例如,在本发明的一些实施例中,可以先判断出第一加载任务和第二加载任务所需的全部资源,然后将第一加载任务与第二加载任务各自所需的资源之中的重叠的部分划分给第一加载任务,并执行第一加载任务和第二加载任务,以达到优先分配资源给第一加载任务的目的。
然而这并非本发明唯一的实施方式,例如,在本发明的一些实施例中,也可以不采用提前分配资源的方式,而是在第一加载任务与第二加载任务的执行过程中,将同一时间间隔内二者所申请的同一资源优先分配给第一加载任务,从而达到提高资源利用率的效果。
除此之外,为进一步地提高可视区域或设定展示区域内的待展示页面的加载速度,本发明实施例还提供了一种可行的实施方式,其中,步骤S302可以包括:
S2:判断第一加载任务所请求的资源是否被第二加载任务占用,若是,则判断出第一加载任务与第二加载任务之间存在对请求的资源的竞争;
其中,步骤S304可以包括:
S4:将请求的资源重新分配给第一加载任务。
通过这一方式,可以免除第一加载任务的等待时间,从而进一步地缩短加载第一页面元素以及可视区域或设定展示区域内的待展示页面的时间损耗。相应地,在步骤S302之后,上述步骤S104还可以包括:
S6:若请求的资源被第二加载任务占用,则中断第二加载任务;
S8:判断请求的资源是否恢复到空闲状态,若是,则将请求的资源再次分配给第二加载任务,并继续执行中断的第二加载任务。
在本发明实施例中,可以通过对第一加载任务和第二加载任务的管理来达到相对较高的资源利用率,例如,在一个实施例中,可以通过主UI线程执行第一加载任务,通过子线程执行第二加载任务,以同时进行对多个页面元素的加载,其中,主UI线程可以申请并获取所需资源以加载第一页面元素,若主UI线程申请的资源被子线程占用,则可以挂起子线程,并将资源分配给主UI线程使用,在使用结束后主UI线程释放该资源,该资源由使用状态转变为空闲状态,进而可以将该资源再次分配给子线程以继续加载第二页面元素,其中,所申请并占用的资源与主UI线程无关的子线程可以并行地执行,以加载其他第二页面元素,通过这一异步的加载方式,可以在提高第一页面元素的加载速度的基础上,实现资源的有效利用。
通过上述实施例,对第一页面元素与第二页面元素的加载方式进行了描述。以下将结合附图及实施例对第一页面元素与第二页面元素的识别判断方式进行阐述。
可选地,如图4所示,在本发明实施例中,上述步骤S104可以包括:
S402:根据可视区域或设定展示区域的当前位置信息判断待加载的页面元素中的任一个是否在可视区域或设定展示区域内;
S404:若该任一个在可视区域或设定展示区域内,则将该任一个作为第一页面元素进行加载,若该任一个在可视区域或设定展示区域外,则将该任一个作为第二页面元素进行加载。
在本发明实施例中,可以根据可视区域或设定展示区域的当前位置信息判断待加载的页面元素中的任一个是否在可视区域或设定展示区域内,其中,该当前位置信息表示在加载该任一个页面元素之前的一个较短的时间间隔内的可视区域或设定展示区域的位置信息,或者说是可视区域或设定展示区域的实时的位置信息,从而在可视区域或设定展示区域发生变动、比如用户拖动或切换待展示页面时,可以响应于可视区域或设定展示区域的变动,优先加载变动后的可视区域或设定展示区域内的页面元素,进而达到及时加载变动后的可视区域或设定展示区域内的待展示页面的效果。其中,
该当前位置信息通常可以由系统来维护,并由加载页面元素的任务在加载某一页面元素之前进行调用,然而本发明对此不作限定,例如,在本发明的一些实施例中,当前位置信息也可以由客户端上运行的应用自行维护。进一步地,对当前位置信息进行维护的具体实施方式也可以有多种,例如,可以定期地读取可视区域或设定展示区域的当前位置信息并对其进行更新,也可以在接收到表示可视区域或设定展示区域已更新的消息之后再对其进行更新,等,本发明对此不作限定。
例如,在一个实施例中,如图5所示,位于外侧的实线框可以表示待展示页面的边界,位于内侧的多个较小的方块可以表示待加载的页面元素,其中,位于图5上方的虚线框表示变动前的可视区域或设定展示区域,位于图5下方的虚线框表示变动后的可视区域或设定展示区域。
如图5所示,在可视区域或设定展示区域变动前,由填充有阴影的方块所表示的位于变动前的可视区域或设定展示区域内的页面元素B2、B3、C2、C3、D2、D3为第一页面元素,具有相对较高的加载的优先级,在可视区域或设定展示区域变动后,由黑色实心方块所表示的位于可视区域或设定展示区域内的页面元素C6、C7、D6、D7、E6、E7由第二页面元素转变为第一页面元素,从而在可视区域或设定展示区域变动后,在步骤S402中,若上述任一个页面元素为C6、C7、D6、D7、E6、E7之一,则加载该任一个的优先级相比较于包括页面元素B2、B3、C2、C3、D2、D3在内的可视区域或设定展示区域变动后判定的第二页面元素的优先级较高。
更具体地,作为一种可选的方式,在本发明实施例中,在步骤S402之前,上述方法还可以包括:
S10:获取实时更新的当前位置信息,当前位置信息包括可视区域或设定展示区域的在待展示页面中对应的坐标区间;
其中,步骤S402可以包括:
S12:判断该任一个在待展示页面中的当前坐标是否属于坐标区间,若属于,则判断出该任一个为第一页面元素,若不属于,则判断出该任一个为第二页面元素。
例如,在一个实施例中,如图6所示,位于外侧的实线框可以表示待展示页面的边界,位于内侧的较小的方块可以表示待加载的页面元素,虚线框可以表示可视区域或设定展示区域,其中,如图6所示,可以选用待展示页面的底部左侧作为坐标平面内的基准点,进而可以获取可视区域或设定展示区域在该坐标平面内的坐标区间以及该任一个页面元素在该坐标平面内的当前坐标,并通过判断该当前坐标是否在该坐标区间内来判断该任一个是否为第一页面元素或者第二页面元素,其中,该当前坐标可以表示在加载该任一个页面元素之前的一个较短的时间间隔内的该任一个页面元素的坐标值,从而可以实时地、准确地判断出第一页面元素并优先对其进行加载,例如,在加载过程中出现如图片的尺寸变动等因素所导致的页面元素在待展示页面中的位置发生变化时,部分待加载的页面元素可能会进入或移出可视区域或设定展示区域,在这一场景下,通过上述的实施方式,便可以避免由于页面元素的位置变化而造成的对页面元素是否属于第一页面元素或者第二页面元素的误判。
通过上述实施例,对页面元素的加载过程中的优化加载方式进行了描述。在以上描述的基础上,还可以在本发明实施例中结合缓存处理方式以进一步地提升待展示页面的加载速度,其中,作为一种可选的方式,如图7所示,在本发明实施例中,上述步骤S102可以包括:
S702:判断本地是否存在与待展示页面对应的缓存记录;
S704:若存在与待展示页面对应的缓存记录,则提取与待展示页面对应的缓存记录以形成页面文件。
值得注意的是,在本发明实施例中,并非根据待展示页面对应的缓存记录直接形成加载后的待展示页面,而是获取待展示页面对应的页面文件,这在一方面,由于页面文件的大小通常远小于加载后的待展示页面的大小,从而可以显著地降低对本地缓存空间的占用,在另一方面,由于基于页面元素镶入的待展示页面所对应的页面文件通常是相对固定的,其内所镶入的页面元素的变化相对较为频繁,因此仅缓存页面文件的记录、进而结合前述实施例中所述的优化的加载策略通常可以在确保相当的加载速度的前提下达到节约资源的目的。
具体地,在本发明实施例中,上述缓存策略的具体的实施方式可以有多种,例如,作为一种可选的方式,上述步骤S702可以包括:
S14:获取与待展示页面对应的标识项;
S16:在本地查询是否存在与标识项对应的缓存记录,若是,则判断出本地存在与待展示页面对应的缓存记录,并将查询到的缓存记录作为与待展示页面对应的缓存记录。
例如,在一个实施例中,上述方法可以实施于运行有一款社交应用的客户端上,其中,该客户端可以响应于用户操作向用户展示该用户与其他用户之间的交互记录,进而该客户端可以为该用户与多个其他用户之中的每一个之间的交互记录设置一个独立的待展示页面,从而用户可以更清楚地分别查看与每一其他用户之间的交互记录。在上述场景下,该客户端可以为该用户与每一其他用户之间的交互记录分配一个ID,作为对应的待展示页面的标识项,并将存储在本地的交互记录标记为与该标志项相对应,从而当用户需要查看与某一其他用户的交互记录时,客户端可以根据用户输入的信息、比如对与该某一其他用户对应的交互记录查看按键的识别获取对应的标志项,进而可以根据获取的标志项去查询对应的缓存记录。
进一步可选地,在本发明实施例中,在步骤S702之后,步骤S102可以包括:
S18:若不存在与待展示页面对应的缓存记录,则获取页面文件,并将获取的页面文件存储到本地,标记为与待展示页面对应的缓存记录。
进一步可选地,在本发明实施例中,在步骤S102之前,上述方法还可以包括:
S20:获取表示待展示页面对应的页面文件已更新的消息;
S22:根据消息清空本地所存储的与待展示页面对应的缓存记录。
在本发明实施例中,可以通过上述方式分别实现缓存记录的创建和缓存记录的清空,从而可以在利用缓存加快页面加载过程的基础上,提高对缓存的使用效率。其中,在缓存记录的创建过程中,步骤S18中所述的获取页面文件的操作可以采用前述实施例中所提供的方式,例如,该页面文件可以采用在本地拼装或者访问外部设备的方式来获取。在缓存记录的清空过程中,表示页面文件已更新的消息通常可以来自于对待展示页面的更新,例如,对于前述的用于向用户展示与其他用户的交互记录的应用而言,在交互记录更新时,用于展示交互记录的待展示页面及其对应的页面文件通常也需要进行更新,在这一场景下,该应用所在的客户端可以将用于通知交互记录已更新的消息作为待展示页面及其对应的页面文件已更新的消息,并在获取该消息后清空与更新前的待展示页面对应的缓存记录,从而避免页面加载出错或者错误地向用户展示更新前的待展示页面的问题出现。
以下将结合附图及更为具体的实施例对上述缓存策略进行更为详细的描述。具体的,在本实施例中,将以一款存在用户间的文字信息交互的应用、如社交应用为例,阐述对聊天记录的展示页面进行加载的过程。
在现有的方案中,系统在响应于请求展示用户聊天记录的消息、对作为待展示页面的聊天记录页面进行加载时,每次都要等到消息数据库返回聊天记录数据的查询结果,进而将这些查询结果组装后才能展现,这通常会涉及到大量的磁盘I/O和数据查询操作。
为了精简这部分操作,进而减少对I/O及处理能力等资源的占用,在本实施例中,可以采用页面缓存策略。通常来说,用户A在使用社交应用时,在该用户A与另一用户B之间无往来消息更新的情况下,用户A所要查看的与另一用户B之间的聊天记录页面是不变的,此时就可以采用缓存的页面进行渲染,即如果某一聊天记录页面存在与之对应的缓存页面,则直接渲染,否则才去消息数据库中去查询、并组装页面。
在上述场景下,用户A与每一其他用户之间的聊天记录均可以对应一个页面缓存,而所有的页面缓存可以统一由页面缓存管理器来维护和管理。具体地,该页面缓存管理器可以用于执行以下操作:负责页面缓存的创建,负责页面缓存的查询,负责页面缓存的清空,维护聊天记录标识与页面缓存实例的映射表等。
更具体地,页面缓存管理器可以在一方面提供创建和清空两个事件,以便于对页面缓存的生命期进行控制,在另一方面,还可以提供查询事件以便于对页面缓存的查询。
例如,页面缓存管理器可以采用如图9所示的内部事件处理逻辑:
1)当一个聊天记录页面被组装完成后,可以触发创建对应的页面缓存事件,进而页面缓存管理器可以将要缓存的页面和聊天记录标识一同保存下来;
2)当聊天记录有消息更新时,可以触发清空页面缓存的事件,进而页面缓存管理器可以根据聊天记录标识查询到对应的页面缓存,并将查询到的页面缓存清空;
3)当一个聊天记录要展现时,可以触发查询对应的页面缓存事件,进而页面缓存管理器可以根据聊天记录标识查询页面缓存是否存在,并返回结果。
在上述场景下,通过页面缓存管理器即可以对页面缓存进行维护和管理,进而在查询到存在页面缓存的基础上,获取缓存的页面并对其进行渲染,以完成对聊天记录页面也即待展示页面的加载,从而减少对CPU资源、磁盘I/O资源等资源的占用,提高系统的工作效率。
通过以上实施例,对本发明技术方案及其工作原理进行了阐述,然而应当理解的是,以上实施例仅用于对本发明技术方案的理解,并不应视为对本发明构成了限定,例如,在上述实施例中以客户端为例描述了本发明的实施环境及实施方式,然而本发明技术方案并不必然实施于客户端,比如也可以实施在服务器侧,其中,上述实施例中所称的系统通常可以表示与本发明的实施环境对应的运行环境,例如客户端或服务器等,本发明对此不作限定。
还需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
实施例2
根据本发明实施例,还提供了一种用于实施上述页面加载方法的页面加载装置,如图8所示,该装置包括:
1)第一获取单元802,用于获取与待展示页面对应的页面文件,其中,页面文件用于指示待展示页面中待加载的页面元素;
2)加载单元804,用于根据页面文件在待展示页面中加载第一页面元素和第二页面元素,且加载第一页面元素的优先级高于加载第二页面元素的优先级,其中,第一页面元素表示可视区域或设定展示区域内的待加载的页面元素,第二页面元素表示可视区域或设定展示区域外的待加载的页面元素;
3)输出单元806,用于输出加载后的待展示页面。
应当理解的是,本发明所要解决的问题之一是提供一种装置,以便于实现页面的加载,其中,该页面通常可以表示用于向系统外部的用户呈现文字、图形等信息的一种可视化的信息载体,例如,具体地,其可以是在浏览器上展示的网页,也可以是在客户端上展示的操作界面,等。从技术角度而言,这种基于功能定义的页面类型的划分通常对应于页面的开发环境和工作环境,例如,在WWW环境中的页面即可以称之为网页等。换而言之,在本发明实施例中,上述页面的表现形式可以有多种,具体地,可以视上述装置的实施环境而定,本发明对此不作限定。其中,为便于描述,以下将用于在上述加载完成之后实时地、或者在某一时间间隔内向系统外部进行展示的页面记为待展示页面。
在本发明实施例中,页面的加载可以通过在待展示页面中加载页面元素来完成的,例如,在本发明的一些实施例中,可以先获取待展示页面的页面框架,然后该页面框架中加载页面元素,以完成页面的加载。其中,该页面元素可以表示文字、图片、表格、音频、视频等直接呈现在待展示页面中、用于向用户传达信息的对象,然而这并非本发明唯一的实施方式,例如,其还可以表示上述对象的位置、尺寸、样式、渲染效果等同样需要在待展示页面中加载的属性,或者是由上述对象及属性封装而成的组件等,应当理解的是,这并不影响本发明技术方案的实施及其技术效果的实现,本发明对此也不作任何限定。为便于描述,以下将待展示页面中待加载的页面元素记为待加载的页面元素。进一步可选地,在本发明实施例中,为区分已经加载到待展示页面的页面元素与待加载的页面元素,在加载过程中,通常可以为作为加载对象的页面元素设置一个状态标签,并且在完成对该页面元素的加载时,将该页面元素的状态标签由待加载状态切换至已加载状态,进而可以在任一时刻采用本发明实施例提供的页面加载方法对标记为待加载状态的页面元素进行加载。
进一步地,为实现对页面元素的加载,作为一种可行的解决方案,页面元素在待展示页面中的加载可以是逐一完成的,其中,如果待加载的页面元素有N个,则该N个待加载的页面元素将会按照预设的逻辑逐一地加载到待展示页面中,这种方式也可以视为是单线程的处理方式。作为另一种可行的解决方案,还可以采用多线程的处理方式同时加载上述N个页面元素,其中,可以为每一待加载的页面元素创建一个加载任务,并同时执行多个加载任务。与单线程的方式相比,多线程的方式显然提高了加载速度,然而由于同时执行的多个加载任务可能会申请相同的资源,比如服务于在本地与外部之间进行交互的I/O资源,因此在同时执行的加载任务较多而资源不足的情形下,在多个加载任务相互之间就会出现对资源的竞争,进而竞争到资源的加载任务可以加载对应的页面元素,未竞争到资源的加载任务则无法继续执行,从而导致其所对应的页面元素无法及时加载到待展示页面中。在上述场景下,如果该无法及时加载的页面元素在可视区域或设定展示区域内,则实时呈现给用户的可视区域或设定展示区域内的待展示页面将会在较长的一段时间内不完整,这就影响了用户的体验。
为解决这一问题,在本发明实施例中,可以在类似于上述多线程的处理方式的基础上,结合对可视区域或设定展示区域内的页面元素与可视区域或设定展示区域外的页面元素的区别处理,以达到优先加载可视区域或设定展示区域内的待加载的页面元素的目的,进而达到缩短可视区域或设定展示区域内的待展示页面的加载时间的效果,从而解决现有的页面加载方案中可视区域或设定展示区域内的页面元素的加载速度较慢的问题。除此之外,通过本发明实施例中对加载可视区域或设定展示区域内的页面元素与加载可视区域或设定展示区域外的页面元素的不同优先级的设置,还可以克服二者之间在竞争资源时可能出现的死锁现象,从而提高了系统的工作效率。
以下将结合附图及实施例对本发明技术方案进行详细描述。
根据本发明实施例提供的页面加载装置,在第一获取单元802中,可以获取与待展示页面对应的页面文件,其中,该页面文件用于指示待展示页面中待加载的页面元素。
具体地,在本发明的一些实施例中,该页面文件可以表示上述的页面框架,进而在该页面框架中可以记录有用于指示待加载的页面元素的标识,例如,在一个实施例中,该页面文件可以是与作为待展示页面的网页相对应的html文件,若该网页存在待加载的页面元素如图片,则可以在html文件中添加“<img src=”图片路径”/>”语句,以指示加载由“图片路径”所指示的图片。
当然,这只是一种示例,在本发明实施例中,待加载的页面元素并不限于图片,从而页面文件中用于指示待加载的页面元素的标识也并不限于上述语句,此外,上述页面文件也并不限于html文件,还可以是asp脚本、jsp脚本、或php脚本等具备平台无关性的页面文件。事实上,在本发明实施例中,页面文件甚至可以不限于是超媒体文档或者是采用标准通用标记语言所形成的文档,其还可以是能够被用于页面加载的加载器所识别的其他可行的文件,例如与互联网服务的提供方自行开发的语言环境相适配的页面文件等,本发明对此不作限定。
除此之外,本发明并不会限定上述页面文件的来源。例如,在本发明的一些实施例中,该页面文件可以获取自外部如Web服务器,进而上述装置可以实施于运行在客户端上的应用如浏览器等,以服务于对网页的加载,而在本发明的另一些实施例中,该页面文件也可以获取自本地,比如可以由上述应用根据设计需要在客户端的本地拼装出页面文件,等,具体地,可以根据本发明的实施环境而定。
例如,在一个实施例中,上述装置可以实施在运行有一款在线应用的客户端,其中,该客户端至少用于向用户展示与该在线应用对应的多个信息记录。在这一场景下,待展示页面可以是用于向用户展示多个信息记录的页面,其所对应的页面文件可以由客户端在本地拼装而成,其中,可选地,客户端可以根据用于请求展示信息记录的消息查找出与该消息对应的多个信息记录的标识,进而将多个信息记录的标识拼装成为页面文件,从而可以通过加载单元804,根据该页面文件加载与该页面文件中的标识对应的多个信息记录。
当然,这只是一种示例,并不意味着对本发明构成了限定,例如,在本发明的一些实施例中,对于占用空间较小的信息记录、比如能够以文本形式出现的信息记录而言,也可以直接获取并将该信息记录拼装到页面文件中,以避免对磁盘I/O或外部I/O的重复访问。在这一情形下,仍然可以通过实施本发明实施例提供的页面加载装置来提高可视区域或设定展示区域内的待展示页面的加载速度,其中,待加载的页面元素可以是上述信息记录的样式和渲染效果,以及除信息记录外的其他第一页面元素,如背景画面等,以及其他第一页面元素的样式和渲染效果等,本发明对此不作限定。
进一步地,根据本发明实施例提供的页面访问装置,在加载单元804中,可以根据页面文件在待展示页面中加载第一页面元素和第二页面元素,且加载第一页面元素的优先级高于加载第二页面元素的优先级,其中,第一页面元素表示可视区域或设定展示区域内的待加载的页面元素,第二页面元素表示可视区域或设定展示区域外的待加载的页面元素。进而可以通过输出单元806输出加载后的待展示页面,其中,输出的待展示页面通常可以是向显示设备输出,然而本发明对此不作限定,例如,特别地,在本发明的一些实施例中,该待展示页面也可以向图像处理设备输出,以便于图像处理设备根据输出的待展示页面进行后续的处理。
在本发明实施例中,可视区域可以表示在对待展示页面进行展示时、该待展示页面中处于可视状态下的区域,例如,对于运行在智能手机或主机上的操作系统而言,其所维护的可视区域的大小通常与主UI线程所配置的窗口尺寸相对应,在这一情形下,可视区域即可以相当于该智能手机或主机的用户界面上显示的窗口区域。此外,设定展示区域通常可以表示由运行在客户端上的应用自行设定的展示区域,例如,对于一款智能手机应用而言,该应用所设置的可视区域的大小通常会小于该应用所在的智能手机的显示区域的大小。一般而言,上述由主UI线程或客户端上的应用所设置的可视区域或展示区域也可以由用户通过操作系统提供的操作接口进行调整,比如用户可以通过鼠标拖动或手指触碰等方式对显示窗口进行调整,从而改变可视区域或设定展示区域的大小。当然,以上仅作为示意性地描述,便于普通技术人员对本发明的理解,并不会对本发明构成任何不必要的限定,例如,在本发明的一些实施例中,上述可视区域或设定展示区域也可以表现为其他具体形式,应当理解,基于本发明实施例的等同替换或变型的实施方式,均应视为在本发明的保护范围之内。
例如,在一个实施例中,如图2所示,位于外侧的实线框可以表示待展示页面的边界,位于内侧的多个较小的方块可以表示待加载的页面元素,虚线框可以表示可视区域或设定展示区域,其中,为便于描述,可以通过分别位于图2左侧和上方的数字1至9和字母A至F对多个待加载的页面元素进行标记。
如图2所示,容易理解,由黑色实心方块所表示的位于可视区域或设定展示区域内的页面元素B2、B3、C2、C3、D2、D3为第一页面元素,由空心方块所表示的其他页面元素为第二页面元素,进而根据本发明实施例提供的页面加载装置,可以通过加载单元804对第一页面元素和第二页面元素进行加载,且加载第一页面元素的优先级高于加载第二页面元素的优先级,从而达到优先加载位于可视区域或设定展示区域内的页面元素的目的,进而达到缩短可视区域或设定展示区域内的待展示页面的加载时间的效果,进而解决了现有的页面加载方案中可视区域或设定展示区域内的页面元素的加载速度较慢的问题,并且可以降低死锁现象发生的可能性。
具体地,在本发明实施例中,加载第一页面元素的优先级高于加载第二页面元素的优先级可以表现为时序上的先后,例如,可以在第一页面元素加载完成后顺序执行加载第二页面元素的任务。然而这一实施方式仍存在资源利用率较低的问题,例如,在一个场景下,加载某一第一页面元素的线程发生堵塞,则会导致全部第二页面元素的加载的延迟,而在延迟的时期内,处理资源很可能是空闲的。
针对这一问题,可以采用竞争资源的机制,进而加载第一页面元素的优先级高于加载第二页面元素的优先级可以表现为优先为加载第一页面元素的任务分配资源,其中,可选地,在本发明实施例中,加载单元804可以包括:
1)第一判断模块,用于判断第一加载任务与第二加载任务之间是否存在对资源的竞争,资源包括以下至少之一:CPU资源、I/O资源、内存资源、系统资源,其中,第一加载任务用于加载第一页面元素,第二加载任务用于加载第二页面元素;
2)分配模块,用于在判断出存在对资源的竞争时,将竞争的资源优先分配给第一加载任务。
在本发明实施例中,CPU资源对应于对CPU的处理能力的分配,其通常可以表示CPU的使用时间,内存资源可以表示对内存及缓存的使用,第一加载任务与第二加载任务对CPU资源和内存资源的竞争通常出现在对待展示页面进行渲染的过程中所涉及的大量的运算操作中,然而本发明对此不作限定。I/O资源可以包括多种,最为常用的是磁盘I/O和外部I/O如网络连接的I/O等,对应于对这些输入输出接口的使用的分配,其中,第一加载任务与第二加载任务对I/O资源的竞争通常出现在对待加载的页面元素的提取过程中,然而本发明对此不作限定。系统资源服务于对加载任务的跟踪及实时响应,第一加载任务与第二加载任务对系统资源的竞争通常可以出现在任务执行的全过程中,然而本发明对此不作限定。其中,在第一加载任务与第二加载任务的执行过程中,若通过第一判断模块判断出存在对上述任一资源的竞争的情形,则可以通过分配模块将竞争的资源优先分配给用于加载第一页面元素的第一加载任务,从而实现加载第一页面元素与加载第二页面元素的优先级的区分。
在上述场景下,第一加载任务可以视为在系统的前台运行,例如,在本发明的一些实施例中,该第一加载任务可以通过主UI线程来执行,以便于实时地向用户呈现可视区域或设定展示区域内的待展示页面。第二加载任务可以视为在系统的后台运行,例如,该第二加载任务可以通过在主UI线程外开启的子线程来执行,从而可以充分地利用系统中的空闲资源异步加载第二页面元素,以自行完成对待展示页面的整体的加载,这有利于在可视区域或设定展示区域发生变动时及时地向用户呈现变动前的可视区域或设定展示区域以外的其他区域的待展示画面。
在本发明实施例中,第一判断模块中所述的对竞争的判断以及分配模块中所述的对竞争的资源的分配可以有多种具体的实施方式,例如,在本发明的一些实施例中,可以先判断出第一加载任务和第二加载任务所需的全部资源,然后将第一加载任务与第二加载任务各自所需的资源之中的重叠的部分划分给第一加载任务,并执行第一加载任务和第二加载任务,以达到优先分配资源给第一加载任务的目的。
然而这并非本发明唯一的实施方式,例如,在本发明的一些实施例中,也可以不采用提前分配资源的方式,而是在第一加载任务与第二加载任务的执行过程中,将同一时间间隔内二者所申请的同一资源优先分配给第一加载任务,从而达到提高资源利用率的效果。
除此之外,为进一步地提高可视区域或设定展示区域内的待展示页面的加载速度,本发明实施例还提供了一种可行的实施方式,其中,第一判断模块可以包括:
1)第一判断子模块,用于判断第一加载任务所请求的资源是否被第二加载任务占用,若是,则判断出第一加载任务与第二加载任务之间存在对请求的资源的竞争;
其中,分配模块可以包括:
1)分配子模块,用于将请求的资源重新分配给第一加载任务。
通过这一方式,可以免除第一加载任务的等待时间,从而进一步地缩短加载第一页面元素以及可视区域或设定展示区域内的待展示页面的时间损耗。相应地,与第一判断模块耦合地,上述加载单元804还可以包括:
1)中断模块,用于在请求的资源被第二加载任务占用时,中断第二加载任务;
2)执行模块,用于判断请求的资源是否恢复到空闲状态,若是,则将请求的资源再次分配给第二加载任务,并继续执行中断的第二加载任务。
在本发明实施例中,可以通过对第一加载任务和第二加载任务的管理来达到相对较高的资源利用率,例如,在一个实施例中,可以通过主UI线程执行第一加载任务,通过子线程执行第二加载任务,以同时进行对多个页面元素的加载,其中,主UI线程可以申请并获取所需资源以加载第一页面元素,若主UI线程申请的资源被子线程占用,则可以挂起子线程,并将资源分配给主UI线程使用,在使用结束后主UI线程释放该资源,该资源由使用状态转变为空闲状态,进而可以将该资源再次分配给子线程以继续加载第二页面元素,其中,所申请并占用的资源与主UI线程无关的子线程可以并行地执行,以加载其他第二页面元素,通过这一异步的加载方式,可以在提高第一页面元素的加载速度的基础上,实现资源的有效利用。
通过上述实施例,对第一页面元素与第二页面元素的加载方式进行了描述。以下将结合附图及实施例对第一页面元素与第二页面元素的识别判断方式进行阐述。
可选地,在本发明实施例中,上述加载单元804可以包括:
1)第二判断模块,用于根据可视区域或设定展示区域的当前位置信息判断待加载的页面元素中的任一个是否在可视区域或设定展示区域内;
2)加载模块,用于在任一个在可视区域或设定展示区域内时,将任一个作为第一页面元素进行加载,在任一个在可视区域或设定展示区域外时,将任一个作为第二页面元素进行加载。
在本发明实施例中,可以根据可视区域或设定展示区域的当前位置信息判断待加载的页面元素中的任一个是否在可视区域或设定展示区域内,其中,该当前位置信息表示在加载该任一个页面元素之前的一个较短的时间间隔内的可视区域或设定展示区域的位置信息,或者说是可视区域或设定展示区域的实时的位置信息,从而在可视区域或设定展示区域发生变动、比如用户拖动或切换待展示页面时,可以响应于可视区域或设定展示区域的变动,优先加载变动后的可视区域或设定展示区域内的页面元素,进而达到及时加载变动后的可视区域或设定展示区域内的待展示页面的效果。其中,该当前位置信息通常可以由系统来维护,并由加载页面元素的任务在加载某一页面元素之前进行调用,然而本发明对此不作限定,例如,在本发明的一些实施例中,当前位置信息也可以由客户端上运行的应用自行维护。进一步地,对当前位置信息进行维护的具体实施方式也可以有多种,例如,可以定期地读取可视区域或设定展示区域的当前位置信息并对其进行更新,也可以在接收到表示可视区域或设定展示区域已更新的消息之后再对其进行更新,等,本发明对此不作限定。
例如,在一个实施例中,如图5所示,位于外侧的实线框可以表示待展示页面的边界,位于内侧的多个较小的方块可以表示待加载的页面元素,其中,位于图5上方的虚线框表示变动前的可视区域或设定展示区域,位于图5下方的虚线框表示变动后的可视区域或设定展示区域。
如图5所示,在可视区域或设定展示区域变动前,由填充有阴影的方块所表示的位于变动前的可视区域或设定展示区域内的页面元素B2、B3、C2、C3、D2、D3为第一页面元素,具有相对较高的加载的优先级,在可视区域或设定展示区域变动后,由黑色实心方块所表示的位于可视区域或设定展示区域内的页面元素C6、C7、D6、D7、E6、E7由第二页面元素转变为第一页面元素,从而在可视区域或设定展示区域变动后,在第二判断模块中,若上述任一个页面元素为C6、C7、D6、D7、E6、E7之一,则加载该任一个的优先级相比较于包括页面元素B2、B3、C2、C3、D2、D3在内的可视区域或设定展示区域变动后判定的第二页面元素的优先级较高。
更具体地,作为一种可选的方式,在本发明实施例中,与第二判断模块耦合地,上述装置还可以包括:
1)第二获取单元,用于获取实时更新的当前位置信息,当前位置信息包括可视区域或设定展示区域的在待展示页面中对应的坐标区间;
其中,第二判断模块可以包括:
1)第二判断子模块,用于判断任一个在待展示页面中的当前坐标是否属于坐标区间,若属于,则判断出任一个为第一页面元素,若不属于,则判断出任一个为第二页面元素。
例如,在一个实施例中,如图6所示,位于外侧的实线框可以表示待展示页面的边界,位于内侧的较小的方块可以表示待加载的页面元素,虚线框可以表示可视区域或设定展示区域,其中,如图6所示,可以选用待展示页面的底部左侧作为坐标平面内的基准点,进而可以获取可视区域或设定展示区域在该坐标平面内的坐标区间以及该任一个页面元素在该坐标平面内的当前坐标,并通过判断该当前坐标是否在该坐标区间内来判断该任一个是否为第一页面元素或者第二页面元素,其中,该当前坐标可以表示在加载该任一个页面元素之前的一个较短的时间间隔内的该任一个页面元素的坐标值,从而可以实时地、准确地判断出第一页面元素并优先对其进行加载,例如,在加载过程中出现如图片的尺寸变动等因素所导致的页面元素在待展示页面中的位置发生变化时,部分待加载的页面元素可能会进入或移出可视区域或设定展示区域,在这一场景下,通过上述的实施方式,便可以避免由于页面元素的位置变化而造成的对页面元素是否属于第一页面元素或者第二页面元素的误判。
通过上述实施例,对页面元素的加载过程中的优化加载方式进行了描述。在以上描述的基础上,还可以在本发明实施例中结合缓存处理方式以进一步地提升待展示页面的加载速度,其中,作为一种可选的方式,在本发明实施例中,上述第一获取单元802可以包括:
1)第三判断模块,用于判断本地是否存在与待展示页面对应的缓存记录;
2)处理模块,用于在判断出存在与待展示页面对应的缓存记录时,提取与待展示页面对应的缓存记录以形成页面文件。
值得注意的是,在本发明实施例中,并非根据待展示页面对应的缓存记录直接形成加载后的待展示页面,而是获取待展示页面对应的页面文件,这在一方面,由于页面文件的大小通常远小于加载后的待展示页面的大小,从而可以显著地降低对本地缓存空间的占用,在另一方面,由于基于页面元素镶入的待展示页面所对应的页面文件通常是相对固定的,其内所镶入的页面元素的变化相对较为频繁,因此仅缓存页面文件的记录、进而结合前述实施例中所述的优化的加载策略通常可以在确保相当的加载速度的前提下达到节约资源的目的。
具体地,在本发明实施例中,上述缓存策略的具体的实施方式可以有多种,例如,作为一种可选的方式,上述第三判断模块可以包括:
1)获取子模块,用于获取与待展示页面对应的标识项;
2)查询子模块,用于在本地查询是否存在与标识项对应的缓存记录,若是,则判断出本地存在与待展示页面对应的缓存记录,并将查询到的缓存记录作为与待展示页面对应的缓存记录。
例如,在一个实施例中,上述装置可以实施于运行有一款社交应用的客户端上,其中,该客户端可以响应于用户操作向用户展示该用户与其他用户之间的交互记录,进而该客户端可以为该用户与多个其他用户之中的每一个之间的交互记录设置一个独立的待展示页面,从而用户可以更清楚地分别查看与每一其他用户之间的交互记录。在上述场景下,该客户端可以为该用户与每一其他用户之间的交互记录分配一个ID,作为对应的待展示页面的标识项,并将存储在本地的交互记录标记为与该标志项相对应,从而当用户需要查看与某一其他用户的交互记录时,客户端可以根据用户输入的信息、比如对与该某一其他用户对应的交互记录查看按键的识别获取对应的标志项,进而可以根据获取的标志项去查询对应的缓存记录。
进一步可选地,在本发明实施例中,与第三判断模块耦合地,第一获取单元802可以包括:
1)存储模块,用于在判断出不存在与待展示页面对应的缓存记录时,获取页面文件,并将获取的页面文件存储到本地,标记为与待展示页面对应的缓存记录。
进一步可选地,在本发明实施例中,上述装置还可以包括:
1)第三获取单元,用于获取表示页面文件已更新的消息;
2)清空单元,用于根据消息清空本地存储的与待展示页面对应的缓存记录
在本发明实施例中,可以通过上述方式分别实现缓存记录的创建和缓存记录的清空,从而可以在利用缓存加快页面加载过程的基础上,提高对缓存的使用效率。其中,在缓存记录的创建过程中,步骤S18中所述的获取页面文件的操作可以采用前述实施例中所提供的方式,例如,该页面文件可以采用在本地拼装或者访问外部设备的方式来获取。在缓存记录的清空过程中,表示页面文件已更新的消息通常可以来自于对待展示页面的更新,例如,对于前述的用于向用户展示与其他用户的交互记录的应用而言,在交互记录更新时,用于展示交互记录的待展示页面及其对应的页面文件通常也需要进行更新,在这一场景下,该应用所在的客户端可以将用于通知交互记录已更新的消息作为待展示页面及其对应的页面文件已更新的消息,并在获取该消息后清空与更新前的待展示页面对应的缓存记录,从而避免页面加载出错或者错误地向用户展示更新前的待展示页面的问题出现。
以下将结合附图及更为具体的实施例对上述缓存策略进行更为详细的描述。具体的,在本实施例中,将以一款存在用户间的文字信息交互的应用、如社交应用为例,阐述对聊天记录的展示页面进行加载的过程。
在现有的方案中,系统在响应于请求展示用户聊天记录的消息、对作为待展示页面的聊天记录页面进行加载时,每次都要等到消息数据库返回聊天记录数据的查询结果,进而将这些查询结果组装后才能展现,这通常会涉及到大量的磁盘I/O和数据查询操作。
为了精简这部分操作,进而减少对I/O及处理能力等资源的占用,在本实施例中,可以采用页面缓存策略。通常来说,用户A在使用社交应用时,在该用户A与另一用户B之间无往来消息更新的情况下,用户A所要查看的与另一用户B之间的聊天记录页面是不变的,此时就可以采用缓存的页面进行渲染,即如果某一聊天记录页面存在与之对应的缓存页面,则直接渲染,否则才去消息数据库中去查询、并组装页面。
在上述场景下,用户A与每一其他用户之间的聊天记录均可以对应一个页面缓存,而所有的页面缓存可以统一由页面缓存管理器来维护和管理。具体地,该页面缓存管理器可以用于执行以下操作:负责页面缓存的创建,负责页面缓存的查询,负责页面缓存的清空,维护聊天记录标识与页面缓存实例的映射表等。
更具体地,页面缓存管理器可以在一方面提供创建和清空两个事件,以便于对页面缓存的生命期进行控制,在另一方面,还可以提供查询事件以便于对页面缓存的查询。
例如,页面缓存管理器可以采用如图9所示的内部事件处理逻辑:
1)当一个聊天记录页面被组装完成后,可以触发创建对应的页面缓存事件,进而页面缓存管理器可以将要缓存的页面和聊天记录标识一同保存下来;
2)当聊天记录有消息更新时,可以触发清空页面缓存的事件,进而页面缓存管理器可以根据聊天记录标识查询到对应的页面缓存,并将查询到的页面缓存清空;
3)当一个聊天记录要展现时,可以触发查询对应的页面缓存事件,进而页面缓存管理器可以根据聊天记录标识查询页面缓存是否存在,并返回结果。
在上述场景下,通过页面缓存管理器即可以对页面缓存进行维护和管理,进而在查询到存在页面缓存的基础上,获取缓存的页面并对其进行渲染,以完成对聊天记录页面也即待展示页面的加载,从而减少对CPU资源、磁盘I/O资源等资源的占用,提高系统的工作效率。通过上述实施例,给出了上述第三判断模块和处理模块等服务于缓存策略的功能模块的实施方式,然而本发明对于上述功能模块的具体的软件或硬件的实现逻辑不作任何限定。
通过以上实施例,对本发明技术方案及其工作原理进行了阐述,然而应当理解的是,以上实施例仅用于对本发明技术方案的理解,并不应视为对本发明构成了限定,例如,在上述实施例中以客户端为例描述了本发明的实施环境及实施方式,然而本发明技术方案并不必然实施于客户端,比如也可以实施在服务器侧,其中,上述实施例中所称的系统通常可以表示与本发明的实施环境对应的运行环境,例如客户端或服务器等,本发明对此不作限定。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (18)
1.一种页面加载方法,其特征在于,包括:
获取与待展示页面对应的页面文件,其中,所述页面文件用于指示所述待展示页面中待加载的页面元素;
根据所述页面文件在所述待展示页面中加载第一页面元素和第二页面元素,且加载所述第一页面元素的优先级高于加载所述第二页面元素的优先级,其中,所述第一页面元素表示可视区域或设定展示区域内的所述待加载的页面元素,所述第二页面元素表示可视区域或设定展示区域外的所述待加载的页面元素;
输出加载后的待展示页面。
2.根据权利要求1所述的方法,其特征在于,所述根据所述页面文件在所述待展示页面中加载第一页面元素和第二页面元素包括:
判断第一加载任务与第二加载任务之间是否存在对资源的竞争,所述资源包括以下至少之一:CPU资源、I/O资源、内存资源、系统资源,其中,所述第一加载任务用于加载所述第一页面元素,所述第二加载任务用于加载所述第二页面元素;
若存在对资源的竞争,则将竞争的资源优先分配给所述第一加载任务。
3.根据权利要求2所述的方法,其特征在于,
所述判断第一加载任务与第二加载任务之间是否存在对资源的竞争包括:判断所述第一加载任务所请求的资源是否被所述第二加载任务占用,若是,则判断出所述第一加载任务与所述第二加载任务之间存在对所述请求的资源的竞争;
所述优先将竞争的资源分配给所述第一加载任务包括:将所述请求的资源重新分配给所述第一加载任务。
4.根据权利要求3所述的方法,其特征在于,在所述判断所述第一加载任务所请求的资源是否被所述第二加载任务占用之后,所述根据所述页面文件在所述待展示页面中加载第一页面元素和第二页面元素还包括:
若所述请求的资源被所述第二加载任务占用,则中断所述第二加载任务;
判断所述请求的资源是否恢复到空闲状态,若是,则将所述请求的资源再次分配给所述第二加载任务,并继续执行中断的所述第二加载任务。
5.根据权利要求1所述的方法,其特征在于,所述根据所述页面文件在所述待展示页面中加载第一页面元素和第二页面元素包括:
根据所述可视区域或所述设定展示区域的当前位置信息判断所述待加载的页面元素中的任一个是否在所述可视区域或所述设定展示区域内;
若所述任一个在所述可视区域或所述设定展示区域内,则将所述任一个作为所述第一页面元素进行加载,若所述任一个在所述可视区域或所述设定展示区域外,则将所述任一个作为所述第二页面元素进行加载。
6.根据权利要求5所述的方法,其特征在于,
在所述根据所述可视区域或所述设定展示区域的当前位置信息判断所述任一个是否在所述可视区域内或所述设定展示区域之前,所述方法还包括:获取所述当前位置信息,其中,所述当前位置信息包括所述可视区域或所述设定展示区域在所述待展示页面中对应的坐标区间;
所述根据所述可视区域或所述设定展示区域的当前位置信息判断所述任一个是否在所述可视区域或所述设定展示区域内包括:判断所述任一个在所述待展示页面中的当前坐标是否属于所述坐标区间,若属于,则判断出所述任一个为所述第一页面元素,若不属于,则判断出所述任一个为所述第二页面元素。
7.根据权利要求1至6中任一项所述的方法,其特征在于,所述获取与待展示页面对应的页面文件包括:
判断本地是否存在与所述待展示页面对应的缓存记录;
若存在,则提取与所述待展示页面对应的缓存记录以形成所述页面文件。
8.根据权利要求7所述的方法,其特征在于,所述判断本地是否存在与所述待展示页面对应的缓存记录包括:
获取与所述待展示页面对应的标识项;
在本地查询是否存在与所述标识项对应的缓存记录,若是,则判断出本地存在与所述待展示页面对应的缓存记录,并将查询到的缓存记录作为与所述待展示页面对应的缓存记录。
9.根据权利要求7所述的方法,其特征在于,
在所述判断本地是否存在与所述待展示页面对应的缓存记录之后,所述获取与待展示页面对应的页面文件包括:若不存在,则获取所述页面文件,并将获取的所述页面文件存储到本地,标记为与所述待展示页面对应的缓存记录;和/或,
在所述获取与待展示页面对应的页面文件之前,所述方法还包括:获取表示所述页面文件已更新的消息;根据所述消息清空本地所存储的与所述待展示页面对应的缓存记录。
10.一种页面加载装置,其特征在于,包括:
第一获取单元,用于获取与待展示页面对应的页面文件,其中,所述页面文件用于指示所述待展示页面中待加载的页面元素;
加载单元,用于根据所述页面文件在所述待展示页面中加载第一页面元素和第二页面元素,且加载所述第一页面元素的优先级高于加载所述第二页面元素的优先级,其中,所述第一页面元素表示可视区域或设定展示区域内的所述待加载的页面元素,所述第二页面元素表示可视区域或设定展示区域外的所述待加载的页面元素;
输出单元,用于输出加载后的待展示页面。
11.根据权利要求10所述的装置,其特征在于,所述加载单元包括:
第一判断模块,用于判断第一加载任务与第二加载任务之间是否存在对资源的竞争,所述资源包括以下至少之一:CPU资源、I/O资源、内存资源、系统资源,其中,所述第一加载任务用于加载所述第一页面元素,所述第二加载任务用于加载所述第二页面元素;
分配模块,用于在判断出存在对资源的竞争时,将竞争的资源优先分配给所述第一加载任务。
12.根据权利要求11所述的装置,其特征在于,
所述第一判断模块包括:第一判断子模块,用于判断所述第一加载任务所请求的资源是否被所述第二加载任务占用,若是,则判断出所述第一加载任务与所述第二加载任务之间存在对所述请求的资源的竞争;
所述分配模块包括:分配子模块,用于将所述请求的资源重新分配给所述第一加载任务。
13.根据权利要求12所述的装置,其特征在于,所述加载单元还包括:
中断模块,用于在所述请求的资源被所述第二加载任务占用时,中断所述第二加载任务;
执行模块,用于判断所述请求的资源是否恢复到空闲状态,若是,则将所述请求的资源再次分配给所述第二加载任务,并继续执行中断的所述第二加载任务。
14.根据权利要求10所述的装置,其特征在于,所述加载单元包括:
第二判断模块,用于根据所述可视区域或所述设定展示区域的当前位置信息判断所述待加载的页面元素中的任一个是否在所述可视区域或所述设定展示区域内;
加载模块,用于在所述任一个在所述可视区域或所述设定展示区域内时,将所述任一个作为所述第一页面元素进行加载,在所述任一个在所述可视区域或所述设定展示区域外时,将所述任一个作为所述第二页面元素进行加载。
15.根据权利要求14所述的装置,其特征在于,
所述装置还包括:第二获取单元,用于获取所述当前位置信息,其中,所述当前位置信息包括所述可视区域或所述设定展示区域在所述待展示页面中对应的坐标区间;
所述第二判断模块包括:第二判断子模块,用于判断所述任一个在所述待展示页面中的当前坐标是否属于所述坐标区间,若属于,则判断出所述任一个为所述第一页面元素,若不属于,则判断出所述任一个为所述第二页面元素。
16.根据权利要求10至15中任一项所述的装置,其特征在于,所述第一获取单元包括:
第三判断模块,用于判断本地是否存在与所述待展示页面对应的缓存记录;
处理模块,用于在判断出存在与所述待展示页面对应的缓存记录时,提取与所述待展示页面对应的缓存记录以形成所述页面文件。
17.根据权利要求16所述的装置,其特征在于,所述第三判断模块包括:
获取子模块,用于获取与所述待展示页面对应的标识项;
查询子模块,用于在本地查询是否存在与所述标识项对应的缓存记录,若是,则判断出本地存在与所述待展示页面对应的缓存记录,并将查询到的缓存记录作为与所述待展示页面对应的缓存记录。
18.根据权利要求16所述的装置,其特征在于,
所述第一获取单元包括:存储模块,用于在判断出不存在与所述待展示页面对应的缓存记录时,获取所述页面文件,并将获取的所述页面文件存储到本地,标记为与所述待展示页面对应的缓存记录;和/或,
所述装置还包括:第三获取单元,用于获取表示所述页面文件已更新的消息;清空单元,用于根据所述消息清空本地存储的与所述待展示页面对应的缓存记录。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410050979.3A CN104850415A (zh) | 2014-02-13 | 2014-02-13 | 页面加载方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410050979.3A CN104850415A (zh) | 2014-02-13 | 2014-02-13 | 页面加载方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104850415A true CN104850415A (zh) | 2015-08-19 |
Family
ID=53850076
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410050979.3A Pending CN104850415A (zh) | 2014-02-13 | 2014-02-13 | 页面加载方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104850415A (zh) |
Cited By (32)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105068816A (zh) * | 2015-08-26 | 2015-11-18 | 成都秋雷科技有限责任公司 | 一种生成html网页预览的方法 |
CN105512295A (zh) * | 2015-12-10 | 2016-04-20 | 网易(杭州)网络有限公司 | 呈现信息的方法、装置及信息系统 |
CN105608152A (zh) * | 2015-12-17 | 2016-05-25 | 无锡天脉聚源传媒科技有限公司 | 一种网页资源异步加载的方法及装置 |
CN105630411A (zh) * | 2015-12-18 | 2016-06-01 | 小米科技有限责任公司 | 内存管理方法及装置 |
CN105701246A (zh) * | 2015-11-25 | 2016-06-22 | 青岛海信电器股份有限公司 | 一种基于web应用的终端信息的加载方法与装置 |
CN105824533A (zh) * | 2016-03-21 | 2016-08-03 | 青岛海信移动通信技术股份有限公司 | 一种图片加载方法、装置及终端 |
CN105955766A (zh) * | 2016-04-22 | 2016-09-21 | 北京小米移动软件有限公司 | 应用预加载方法及装置 |
CN106341533A (zh) * | 2016-08-30 | 2017-01-18 | 腾讯科技(深圳)有限公司 | 应用中加载网络资源的方法和装置 |
CN106570071A (zh) * | 2016-10-14 | 2017-04-19 | 上海斐讯数据通信技术有限公司 | 一种云无线控制器前端页面的加载方法及系统 |
CN106570098A (zh) * | 2016-10-31 | 2017-04-19 | 华为技术有限公司 | 页面刷新的方法及装置 |
CN106658142A (zh) * | 2016-12-09 | 2017-05-10 | 广州华多网络科技有限公司 | 界面配置方法及装置 |
CN106656666A (zh) * | 2016-12-13 | 2017-05-10 | 中国联合网络通信集团有限公司 | 一种获取网页首屏时间的方法及装置 |
CN107203303A (zh) * | 2016-03-18 | 2017-09-26 | 阿里巴巴集团控股有限公司 | 一种界面显示方法及装置 |
CN107911709A (zh) * | 2017-11-17 | 2018-04-13 | 广州酷狗计算机科技有限公司 | 直播界面显示方法、装置及终端 |
CN108509228A (zh) * | 2017-11-10 | 2018-09-07 | 平安普惠企业管理有限公司 | 加载页面的方法、终端设备及计算机可读存储介质 |
CN108733444A (zh) * | 2018-05-14 | 2018-11-02 | 北京五八信息技术有限公司 | 一种页面的刷新方法、装置、存储介质及移动终端 |
CN108846113A (zh) * | 2018-06-25 | 2018-11-20 | 郑州云海信息技术有限公司 | 一种图片预加载的方法、系统及相关组件 |
CN109558184A (zh) * | 2015-09-28 | 2019-04-02 | 北京奇虎科技有限公司 | 浏览器启动方法和装置 |
CN109582899A (zh) * | 2018-10-26 | 2019-04-05 | 平安科技(深圳)有限公司 | 页面加载方法、装置、计算机设备及存储介质 |
CN109634544A (zh) * | 2018-11-23 | 2019-04-16 | 北京梧桐车联科技有限责任公司 | 应用界面显示方法及装置、显示设备及存储介质 |
CN110431550A (zh) * | 2017-04-05 | 2019-11-08 | 谷歌有限责任公司 | 可视叶页面识别和处理 |
CN111241435A (zh) * | 2019-12-31 | 2020-06-05 | 五八有限公司 | 一种加载图片元素的方法及装置 |
WO2020001665A3 (zh) * | 2019-10-21 | 2020-07-09 | 华为技术有限公司 | 一种片内缓存及集成芯片 |
CN111796824A (zh) * | 2020-06-29 | 2020-10-20 | 平安普惠企业管理有限公司 | 页面加载方法、装置、服务器及介质 |
CN112015634A (zh) * | 2019-05-31 | 2020-12-01 | 百度在线网络技术(北京)有限公司 | 页面结构信息生成方法、装置和电子设备 |
CN112035198A (zh) * | 2020-08-12 | 2020-12-04 | 深圳创维-Rgb电子有限公司 | 主页加载方法、电视和存储介质 |
CN112506479A (zh) * | 2020-11-30 | 2021-03-16 | 北京百度网讯科技有限公司 | 页面编辑的方法、装置、设备以及存储介质 |
CN112527407A (zh) * | 2020-12-07 | 2021-03-19 | 深圳创维-Rgb电子有限公司 | 一种应用启动方法、终端及计算机可读存储介质 |
CN112667934A (zh) * | 2019-10-16 | 2021-04-16 | 北京国双科技有限公司 | 动态模拟图展示方法、装置、电子设备和计算机可读介质 |
CN113535307A (zh) * | 2021-07-23 | 2021-10-22 | 深圳小湃科技有限公司 | 一种界面加载方法、设备及存储介质 |
CN113885763A (zh) * | 2021-09-30 | 2022-01-04 | 掌阅科技股份有限公司 | 电子书页面展示方法、电子设备及计算机存储介质 |
CN116431233A (zh) * | 2023-02-28 | 2023-07-14 | 北京思明启创科技有限公司 | 一种资源加载方法、装置、设备和存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030211447A1 (en) * | 2001-11-01 | 2003-11-13 | Telecommunications Research Associates | Computerized learning system |
CN102346782A (zh) * | 2011-10-25 | 2012-02-08 | 中兴通讯股份有限公司 | 在用户终端浏览器上按需显示图片的方法及装置 |
CN102760133A (zh) * | 2011-04-28 | 2012-10-31 | 腾讯科技(深圳)有限公司 | 网页加载方法、系统、浏览器、终端及服务器 |
CN103106216A (zh) * | 2011-11-15 | 2013-05-15 | 腾讯科技(深圳)有限公司 | 一种网页访问方法和设备 |
-
2014
- 2014-02-13 CN CN201410050979.3A patent/CN104850415A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030211447A1 (en) * | 2001-11-01 | 2003-11-13 | Telecommunications Research Associates | Computerized learning system |
CN102760133A (zh) * | 2011-04-28 | 2012-10-31 | 腾讯科技(深圳)有限公司 | 网页加载方法、系统、浏览器、终端及服务器 |
CN102346782A (zh) * | 2011-10-25 | 2012-02-08 | 中兴通讯股份有限公司 | 在用户终端浏览器上按需显示图片的方法及装置 |
CN103106216A (zh) * | 2011-11-15 | 2013-05-15 | 腾讯科技(深圳)有限公司 | 一种网页访问方法和设备 |
Non-Patent Citations (1)
Title |
---|
孙玮: "嵌入式浏览器解析与排版布局引擎的研究优化", 《中国优秀硕士学位论文全文数据库》 * |
Cited By (42)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105068816A (zh) * | 2015-08-26 | 2015-11-18 | 成都秋雷科技有限责任公司 | 一种生成html网页预览的方法 |
CN109558184A (zh) * | 2015-09-28 | 2019-04-02 | 北京奇虎科技有限公司 | 浏览器启动方法和装置 |
CN105701246A (zh) * | 2015-11-25 | 2016-06-22 | 青岛海信电器股份有限公司 | 一种基于web应用的终端信息的加载方法与装置 |
CN105512295A (zh) * | 2015-12-10 | 2016-04-20 | 网易(杭州)网络有限公司 | 呈现信息的方法、装置及信息系统 |
CN105608152A (zh) * | 2015-12-17 | 2016-05-25 | 无锡天脉聚源传媒科技有限公司 | 一种网页资源异步加载的方法及装置 |
CN105630411A (zh) * | 2015-12-18 | 2016-06-01 | 小米科技有限责任公司 | 内存管理方法及装置 |
CN105630411B (zh) * | 2015-12-18 | 2019-09-27 | 小米科技有限责任公司 | 内存管理方法及装置 |
CN107203303A (zh) * | 2016-03-18 | 2017-09-26 | 阿里巴巴集团控股有限公司 | 一种界面显示方法及装置 |
CN105824533A (zh) * | 2016-03-21 | 2016-08-03 | 青岛海信移动通信技术股份有限公司 | 一种图片加载方法、装置及终端 |
CN105824533B (zh) * | 2016-03-21 | 2019-06-18 | 青岛海信移动通信技术股份有限公司 | 一种图片加载方法、装置及终端 |
CN105955766A (zh) * | 2016-04-22 | 2016-09-21 | 北京小米移动软件有限公司 | 应用预加载方法及装置 |
CN105955766B (zh) * | 2016-04-22 | 2019-08-30 | 北京小米移动软件有限公司 | 应用预加载方法及装置 |
CN106341533A (zh) * | 2016-08-30 | 2017-01-18 | 腾讯科技(深圳)有限公司 | 应用中加载网络资源的方法和装置 |
CN106570071A (zh) * | 2016-10-14 | 2017-04-19 | 上海斐讯数据通信技术有限公司 | 一种云无线控制器前端页面的加载方法及系统 |
CN106570098A (zh) * | 2016-10-31 | 2017-04-19 | 华为技术有限公司 | 页面刷新的方法及装置 |
CN106570098B (zh) * | 2016-10-31 | 2020-06-16 | 华为技术有限公司 | 页面刷新的方法及装置 |
CN106658142A (zh) * | 2016-12-09 | 2017-05-10 | 广州华多网络科技有限公司 | 界面配置方法及装置 |
CN106656666B (zh) * | 2016-12-13 | 2020-05-22 | 中国联合网络通信集团有限公司 | 一种获取网页首屏时间的方法及装置 |
CN106656666A (zh) * | 2016-12-13 | 2017-05-10 | 中国联合网络通信集团有限公司 | 一种获取网页首屏时间的方法及装置 |
CN110431550A (zh) * | 2017-04-05 | 2019-11-08 | 谷歌有限责任公司 | 可视叶页面识别和处理 |
CN110431550B (zh) * | 2017-04-05 | 2023-10-10 | 谷歌有限责任公司 | 用于识别可视叶页面的方法和系统 |
CN108509228A (zh) * | 2017-11-10 | 2018-09-07 | 平安普惠企业管理有限公司 | 加载页面的方法、终端设备及计算机可读存储介质 |
CN107911709A (zh) * | 2017-11-17 | 2018-04-13 | 广州酷狗计算机科技有限公司 | 直播界面显示方法、装置及终端 |
CN108733444A (zh) * | 2018-05-14 | 2018-11-02 | 北京五八信息技术有限公司 | 一种页面的刷新方法、装置、存储介质及移动终端 |
CN108846113A (zh) * | 2018-06-25 | 2018-11-20 | 郑州云海信息技术有限公司 | 一种图片预加载的方法、系统及相关组件 |
CN109582899A (zh) * | 2018-10-26 | 2019-04-05 | 平安科技(深圳)有限公司 | 页面加载方法、装置、计算机设备及存储介质 |
CN109634544A (zh) * | 2018-11-23 | 2019-04-16 | 北京梧桐车联科技有限责任公司 | 应用界面显示方法及装置、显示设备及存储介质 |
CN112015634A (zh) * | 2019-05-31 | 2020-12-01 | 百度在线网络技术(北京)有限公司 | 页面结构信息生成方法、装置和电子设备 |
CN112667934A (zh) * | 2019-10-16 | 2021-04-16 | 北京国双科技有限公司 | 动态模拟图展示方法、装置、电子设备和计算机可读介质 |
WO2020001665A3 (zh) * | 2019-10-21 | 2020-07-09 | 华为技术有限公司 | 一种片内缓存及集成芯片 |
CN111241435B (zh) * | 2019-12-31 | 2024-02-27 | 五八有限公司 | 一种加载图片元素的方法及装置 |
CN111241435A (zh) * | 2019-12-31 | 2020-06-05 | 五八有限公司 | 一种加载图片元素的方法及装置 |
CN111796824A (zh) * | 2020-06-29 | 2020-10-20 | 平安普惠企业管理有限公司 | 页面加载方法、装置、服务器及介质 |
CN112035198A (zh) * | 2020-08-12 | 2020-12-04 | 深圳创维-Rgb电子有限公司 | 主页加载方法、电视和存储介质 |
CN112506479A (zh) * | 2020-11-30 | 2021-03-16 | 北京百度网讯科技有限公司 | 页面编辑的方法、装置、设备以及存储介质 |
CN112506479B (zh) * | 2020-11-30 | 2024-03-01 | 北京百度网讯科技有限公司 | 页面编辑的方法、装置、设备以及存储介质 |
CN112527407B (zh) * | 2020-12-07 | 2023-09-22 | 深圳创维-Rgb电子有限公司 | 一种应用启动方法、终端及计算机可读存储介质 |
CN112527407A (zh) * | 2020-12-07 | 2021-03-19 | 深圳创维-Rgb电子有限公司 | 一种应用启动方法、终端及计算机可读存储介质 |
CN113535307A (zh) * | 2021-07-23 | 2021-10-22 | 深圳小湃科技有限公司 | 一种界面加载方法、设备及存储介质 |
CN113885763A (zh) * | 2021-09-30 | 2022-01-04 | 掌阅科技股份有限公司 | 电子书页面展示方法、电子设备及计算机存储介质 |
CN116431233A (zh) * | 2023-02-28 | 2023-07-14 | 北京思明启创科技有限公司 | 一种资源加载方法、装置、设备和存储介质 |
CN116431233B (zh) * | 2023-02-28 | 2024-04-09 | 北京思明启创科技有限公司 | 一种资源加载方法、装置、设备和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104850415A (zh) | 页面加载方法和装置 | |
US20200242186A1 (en) | Method and Terminal Device for Extracting Web Page Content | |
US20200104343A1 (en) | Systems and Methods for Dynamic Delivery of Web Content | |
CN101997927B (zh) | 一种web平台数据缓存的方法和系统 | |
KR102185864B1 (ko) | 프레젠테이션을 위한 네이티브 콘텐츠의 서버측 렌더링 방법 및 시스템 | |
JP6195182B2 (ja) | アプリケーションシナリオの識別方法、電力消費の管理方法、装置、および端末デバイス | |
US8370750B2 (en) | Technology for generating service program | |
US20150370912A1 (en) | Method and system for displaying customized webpage on double webview | |
EP3499363A1 (en) | Data collection method, apparatus and system | |
WO2014194654A1 (en) | Method and apparatus for page view switching | |
CN104572293A (zh) | 基于bs结构的医学影像阅片系统的实现方法 | |
CN104137071A (zh) | 用于脚本编译的简档数据的持久性存储 | |
CN111459503B (zh) | web前端项目部署方法、装置、服务器及存储介质 | |
CN103744845A (zh) | 一种web平台数据缓存的方法和系统 | |
CN108170497A (zh) | 一种页面渲染的方法及装置 | |
CN104850296A (zh) | 显示页面内容的方法及装置 | |
CN112631591B (zh) | 表元素联动方法、装置、设备与计算机可读存储介质 | |
US20200004560A1 (en) | Adaptive user-interface assembling and rendering | |
US9880861B2 (en) | Method and apparatus for page view switching | |
CN108804484A (zh) | 数据审批方法、设备和计算机可读存储介质 | |
CN109933381A (zh) | 一种内核的加载方法及装置 | |
CN104346463A (zh) | 一种页面标签的加载方法、装置和浏览器客户端 | |
US10402210B2 (en) | Optimizing user interface requests for backend processing | |
CN104731817A (zh) | 一种网页展现方法和装置 | |
CN110347458A (zh) | 一种按钮控件展示方法、装置、存储介质及交互智能平板 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20150819 |