一种终端浏览器的页面缓存方法和装置及终端的制作方法

文档序号:6523392阅读:234来源:国知局
一种终端浏览器的页面缓存方法和装置及终端的制作方法
【专利摘要】本发明公开了一种终端浏览器的网页缓存方法,方法包括:加载网页,生成与所述网页对应的DOM树和Render树,并将所述DOM树和Render树保存在内存中;生成与所述网页对应的索引对象,所述索引对象用于指明所述网页对应的DOM树和Render树的保存地址;将所述索引对象保存在索引列表中。本发明实施例还公开一种终端浏览器的网页缓存装置及终端。采用本发明实施例,能够加快浏览器执行页面返回操作的速度,缩短操作时间,有利于终端的节能省电。
【专利说明】一种终端浏览器的页面缓存方法和装置及终端
【技术领域】
[0001]本发明涉及通信【技术领域】,特别涉及一种终端浏览器的页面缓存方法和装置及终端。
【背景技术】
[0002]随着移动终端和互联网技术的发展,人们越来越多的选择通过终端浏览网页。通过终端浏览网页的典型用法为:打开一个网页,在该网页的页面上有很多链接,点击其中的一个链接,进入该链接对应的页面,浏览完毕后,返回最初的页面,选择点击其他的链接。
[0003]在实现本发明的过程中,发明人发现至少存在以下问题:
[0004]浏览器在执行返回最初页面的操作时,很多时候还需要重新加载页面,对该页面重新解析和排版,由此使得返回操作的执行过程非常缓慢,延长终端的操作时间,不利于终端的节能省电。

【发明内容】

[0005]本发明实施例提供了一种终端浏览器的页面缓存方法及装置,能够加快浏览器执行页面返回操作的速度,缩短操作时间,有利于终端的节能省电。
[0006]所述技术方案如下:
[0007]第一方面,提供了一种终端浏览器的网页缓存方法,所述方法包括:
[0008]加载网页,生成与所述网页对应的DOM树和Render树,并将所述DOM树和Render树保存在内存中;
[0009]生成与所述网页对应的索引对象,所述索引对象用于指明所述网页对应的DOM树和Render树的保存地址;
[0010]将所述索引对象保存在索引列表中。
[0011]较佳的,在所述将所述DOM树和Render树保存在内存中之前,所述方法还包括:
[0012]确定所述网页符合预设的缓存条件且所述网页对应的主文档不存在错误信息。
[0013]较佳的,所述预设的缓存条件,包括:
[0014]当所述网页的网址属于安全超文本传输协议HTTPS的链接时,所述网页的主文档中不存在表单FORM类型的元素;
[0015]和/ 或,
[0016]当所述网页的网址属于HTTPS的链接时,预设的安全网页列表中包含所述网页。
[0017]较佳的,所述预设的缓存条件,包括:
[0018]当所述网页的网址不属于HTTPS链接时,所述网页不存在卸载unload事件的监听机制;
[0019]和/ 或,
[0020]当所述网页的网址不属于HTTPS链接时,所述网页不存在打开本地数据库的行为;[0021]和/ 或,
[0022]当所述网页的网址不属于HTTPS链接时,所述网页对应的主文档属于无线标记语言WML格式或包括WML的内容。
[0023]较佳的,所述方法还包括:
[0024]当所述索引列表中保存的索引对象的个数大于预设的上限值时,根据所述索引对象的保存时间删除指定数目的索引对象对应的网页的DOM树和Render树。
[0025]较佳的,所述根据所述索引对象的保存时间删除指定数目的索引对象对应的网页的DOM树和Render树,包括:
[0026]对所述索引列表中保存的索引对象按照保存时间由早到晚排序;
[0027]删除排在前指定数目位的索引对象对应的网页的DOM树和Render树。
[0028]较佳的,所述方法还包括:
[0029]获取当前内存空间的使用信息,根据所述内存空间的余量,修正保存网页的DOM树和Render树的数目的上限值。
[0030]较佳的,所述方法还包括:
[0031]接收用户对所述网页的再次访问请求,根据所述索引对象读取所述网页对应的DOM树和Render树,渲染显示。
[0032]较佳的,在所述接收用户对所述网页的再次访问请求后,所述方法还包括:
[0033]判断内存中是否保存有与所述网页对应的DOM树和Render树,如果保存有,再执行根据所述索引对象读取所述网页对应的DOM树和Render树并渲染显示的步骤。
[0034]第二方面,提供一种终端浏览器的网页缓存装置,所述装置包括:
[0035]第一生成单元,用于加载网页,生成与所述网页对应的DOM树和Render树;
[0036]弟一保存单兀,用于将所述DOM树和Render树保存在内存中;
[0037]第二生成单元,用于生成与所述网页对应的索引对象,所述索引对象用于指明所述网页对应的DOM树和Render树的保存地址;
[0038]第二保存单元,用于将所述索引对象保存在索引列表中。
[0039]较佳的,所述装置还包括:
[0040]第一判断单元,用于确定所述网页符合预设的缓存条件且所述网页对应的主文档不存在错误信息。
[0041]较佳的,其特征在于,所述第一判断单元包括:
[0042]第一判断子单元,用于当所述网页的网址属于安全超文本传输协议HTTPS的链接时,所述网页的文档中不存在表单FORM类型的元素;
[0043]和/ 或,
[0044]第二判断子单元,用于当所述网页的网址属于HTTPS的链接时,预设的安全网页列表中包含所述网页。
[0045]较佳的,所述第一判断单元还包括:
[0046]第三判断子单元,用于当所述网页的网址不属于HTTPS链接时,所述网页不存在卸载unload事件的监听机制;
[0047]和/ 或,
[0048]第四判断子单元,用于当所述网页的网址不属于HTTPS链接时,所述网页不存在打开本地数据库的行为;
[0049]和/ 或,
[0050]第五判断子单元,用于当所述网页的网址不属于HTTPS链接时,所述网页对应的主文档属于无线标记语言WML格式或包括WML的内容。
[0051]较佳的,所述装置还包括:
[0052]删除单元,用于当所述索引列表中保存的索引对象的个数大于预设的上限值时,根据所述索引对象的保存时间删除指定数目的索引对象对应的网页的DOM树和Render树。
[0053]较佳的,所述删除单元包括:
[0054]排序子单元,用于对所述索引列表中保存的索引对象按照保存时间由早到晚排序;
[0055]删除子单元,用于删除排在前指定数目位的索引对象对应的网页的DOM树和Render 树。
[0056]较佳的,所述装置还包括:
[0057]修正单元,用于获取当前内存空间的使用信息,根据所述内存空间的余量,修正保存网页的DOM树和Render树的数目的上限值。
[0058]较佳的,所述装置还包括:
[0059]读取单元,用于接收用户对所述网页的再次访问请求,根据所述索引对象读取所述网页对应的DOM树和Render树,渲染显示。
[0060]较佳的,所述装置还包括:
[0061 ] 第二判断单元,用于判断内存中是否保存有与所述网页对应的DOM树和Render树;
[0062]所述读取单元,还用于当所述第二判断单元的判断结果为是时,再执行根据所述索引对象读取所述网页对应的DOM树和Render树并渲染显示的步骤。
[0063]第三方面,提供一种终端,所述终端包括如前述任一项所述的终端浏览器的网页
缓存装置。
[0064]第四方面,提供一种移动终端,包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于进行以下操作的指令:
[0065]加载网页,生成与所述网页对应的DOM树和Render树,并将所述DOM树和Render树保存在内存中;
[0066]生成与所述网页对应的索引对象,所述索引对象用于指明所述网页对应的DOM树和Render树的保存地址;
[0067]将所述索引对象保存在索引列表中。
[0068]本发明实施例提供的技术方案带来的有益效果是:
[0069]本发明实施例所述方法,在打开网页的同时,将生成的网页对应的DOM树和Render树保存在内存中。当需要返回该网页或者重新打开该网页时,只需要从索引列表中找到与该网页对应的索引对象,根据所述索引对象指明的地址,直接获取到该网页对应的DOM树和Render树,对该网页进行layout。
[0070]由此可以使得,在返回或者重新打开曾经打开过的网页时,不需要重新加载该网页以及对该网页重新进行解析和排版,使得返回操作的执行过程非常迅速,减少了终端执行操作所需的时间,有利于终端的节能省电。
【专利附图】

【附图说明】
[0071]为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0072]图1为本发明实施例一所述的终端浏览器的页面缓存方法流程图;
[0073]图2为本发明实施例二所述的终端浏览器的页面缓存方法流程图;
[0074]图3为本发明实施例所述的终端浏览器的网页缓存装置结构图;
[0075]图4为本发明实施例所涉及的终端设备的结构示意图;
[0076]图5为本发明实施例提供的一种服务器结构示意图。
【具体实施方式】
[0077]为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
[0078]本发明实施例提供了一种终端浏览器的页面缓存方法及装置,能够加快浏览器执行页面返回操作的速度,缩短操作时间,有利于终端的节能省电。
[0079]为更好的对本发明实施例所述的方法进行介绍,首先,对浏览器打开网页的过程进行简单描述。
[0080]网页是一个文件,经由统一资源定位符(Uniform Resource Locator, URL,简称网址)来识别与存取。网页要通过浏览器来阅读。当浏览器接收到终端发送的打开某个网页的指令时,浏览器向服务器请求该网页对应的主文档,并解析该主文档,生成该网址对应的DOM树和Render树,根据所述Render树对该网页进行layout (布局)。
[0081]参照图1,为本发明实施例一所述的终端浏览器的页面缓存方法流程图。如图1所示,所述方法包括:
[0082]IO1、加载网页,生成与所述网页对应的DOM树和Render树,并将所述DOM树和Render树保存在内存中。
[0083]102、生成与所述网页对应的索引对象,所述索引对象用于指明所述网页对应的DOM树和Render树的保存地址。
[0084]103、将所述索引对象保存在索弓丨列表中。
[0085]本发明实施例所述方法,在打开网页的同时,将生成的网页对应的DOM树和Render树保存在内存中。当需要返回该网页或者重新打开该网页时,只需要从索引列表中找到与该网页对应的索引对象,根据所述索引对象指明的地址,直接获取到该网页对应的DOM树和Render树,对该网页进行layout。
[0086]由此可以使得,在返回或者重新打开曾经打开过的网页时,不需要重新加载该网页以及对该网页重新进行解析和排版,使得返回操作的执行过程非常迅速,减少了终端执行操作所需的时间,有利于终端的节能省电。[0087]但是,在实际应用中,由于终端的内存空间有限,因此并不是对所有曾经打开过的网页都需要进行缓存。具体的,在保存所述DOM树和Render树之前,还可以对当前打开的网页进行判断,确定该网页是否符合预设的缓存条件,只有确定该网页需要被缓存时,才执行保存的步骤。
[0088]具体的,参见本发明实施例二所述的方法。参照图2,为本发明实施例二所述的终端浏览器的页面缓存方法流程图。如图2所示,所述方法包括:
[0089]201、所述终端浏览器加载网页,生成与所述网页对应的DOM树和Render树,根据所述DOM树和Render树进行layout (布局)。
[0090]当用户选择打开一个网页时,浏览器访问该网页对应的URL,并向服务器请求该URL对应的主文档,即为该网页对应的页面主文档。
[0091]浏览器解析所述主文档,生成所述网页对应的DOM树和Render树,并根据所述DOM树和Render树对该网页进行layout。
[0092]具体的,在浏览器中,内置有渲染引擎,能够根据从服务器获取的页面主文档,自动生成该网页对应的DOM树和Render树。其中,所述DOM树用于描述html页面的信息;Render树用于布局,具体负责如何将DOM树中包括的内容显示在屏幕上。
[0093]而layout是渲染引擎对网页的布局操作,在获取到DOM树和Render树后,浏览器的渲染引擎通过layout将网页布局在内存中。当layout完毕后,浏览器就可以将网页绘制在显示屏幕上,展现给用户。
[0094]由此实现了对网页的加载并显示的全过程。本发明实施例所述方法中,在加载所述页面时,实现对该页面的缓存。
[0095]202、判断所述网页是否符合预设的缓存条件,如果符合,则进入203;如果不符合,进入206。
[0096]本发明实施例中,在对网页进行缓存之前,首先判断该网页是否符合预设的缓存条件,如果符合,再保存该网页对应的DOM树和Render ;如果不符合,则删除该网页对应的DOM 树和 Render。
[0097]需要说明的是,在实际应用中,在打开某些网页时,有可能会出现网页打不开的情形。例如,URL输入错误、该网页对应的服务器故障、该网页已过期等等,此时打开的页面中会显示“无法显示该页面”、“无法找到该页面”或“参数不正确”等信息。对于这种情形,即使该网页需要被缓存,忧郁当前打开的网页是错误的,因此不需要对当前打开的该网页进行缓存,以免占用系统内存,造成内存空间的浪费。
[0098]具体的,在步骤202中,当判断结果为符合时还可以包括:判断所述网页对应的主文档(main document)是否存在错误信息,如果不存在错误信息,则进入203 ;如果存在错误信息,则进入206。
[0099]本发明实施例中,可以通过对该网页对应的主文档中的相关参数进行判断来确定当前网页是否存在打不开的情形。
[0100]其中,所述主文档是指网页对应的页面文件。一般,主文档可以是一个html(HyperText Markup Language,超文本标记语言)文件,也可以是 php (Hypertext Preprocessor,超文本预处理器)文件或者是shtml文件等。具体的,当打开网页时,可以通过点击右键,选择“查看网页源代码”的方式,来查看该网页对应的主文档。[0101]当出现网页打不开的情形时,该网页对应的主文档中会包含相应的错误信息,因此,可以通过判断该网页对应的主文档中是否存在错误信息来确定是否发生了网页打不开的现象,如果存在错误信息,确定当前网页打不开,则没必要对该网页进行缓存,结束本方法的流程;如果不存在错误信息,确定当前网页成功打开,则继续执行步骤2012。
[0102]下面对步骤202中判断所述网页是否需要被缓存进行详细介绍。本发明实施例中,对所述网页分两种情况进行判断,一种情况是该网页是属于HTTPS (HypertextTransfer Protocol over Secure Socket Layer,安全超文本传输协议)的链接,另一种情况是该网页不属于HTTPS的链接。
[0103]具体的,所述判断所述网页是否符合预设的缓存条件可以包括:
[0104]2021、判断所述网页的网址是否属于HTTPS的链接,如果属于,则再次判断该HTTPS网页是否符合预设的缓存条件,进入2022或2023 ;如果不属于,进入2024。
[0105]本发明实施例中,可以通过查询当前加载的网页对应的主文档来判断该网页是否属于HTTPS链接。具体的,查询当前加载的网页对应的主文档,获取该网页对应的URL,判断该网页的URL是否以https作为开头,如果是,则该网页属于HTTPS链接;如果不是,则该网页不属于HTTPS链接。
[0106]当确定该网页属于HTTPS链接时,还需要对该网页继续进行判断,以确定该网页是否能够被缓存。在实际应用中,具体的判断方法有很多种,下面以两种方法为例进行说明,分别为2022和2023。
[0107]2022、判断所述网页的主文档中是否存在FORM (表单)类型的元素,如果不存在,则进入203 ;如果存在,则确定该网页不能缓存,进入步骤206。
[0108]具体的,当用户打开某个网页,需要登录到该网页对应的站点时,有时候会出现该站点的登录框,需要用户填写用户名(或账号)以及密码或类似于该内容的信息,例如,银行网站、私人邮箱等。通常,上述类型的网页控件(登录框等)基本上都是采用FORM类型的元素来实现的。
[0109]为确保用户的账户信息的安全,对于上述类型的网页,不进行缓存。以防缓存后被其他用户通过返回的方式获取当前用户的账户信息,造成当前用户的私人信息外泄。
[0110]由于前面已经提到,登录框等网页控件基本上都是采用FORM类型的元素实现的,因此本发明实施例所述方法中,可以通过判断当前加载的网页中是否存在FORM类型的元素来确定该网页中是否具有包含用户账户信息的登录框等控件,从而确定该网页是否能够被缓存。当所述网页中存在FORM类型的元素时,确定该网页中可能具有登录框等信息,为确保用户信息的安全性,不对该网页进行缓存;当所述网页中不存在FORM类型的元素时,确定该网页中没有登录框等信息,则进行步骤203,对该网页进行缓存。
[0111]还需要说明的是,可以通过查询该网页对应的主文档来确定所述网页是否存在FORM类型的元素。当网页中存在FORM类型的元素时,则能够从该网页对应的主文档中查询到所述FORM类型的元素的具体信息。
[0112]当确定该网页属于HTTPS链接时,还可以通过查找预设的安全网页列表的方式来确定该网页是否需要被缓存。具体的,见2023所不。
[0113]2023、查找预设的安全网页列表,判断所述安全网页列表中是否包含所述网页,如果包含,则进入203 ;如果不包含,则确定该页面不能缓存,进入206。[0114]需要说明的是,本发明实施例中,可以预先设定安全网页列表并储存在服务器上。该安全网页列表中列出了安全的、适合于被缓存的HTTPS网页的信息,例如网页的URL等。如果所述安全网页列表中包含当前加载的网页的信息,则说明该网页是安全的,适合于被缓存;否则,不缓存该网页。
[0115]下面对不属于HTTPS的网页的判断依据进行介绍。
[0116]2024、判断当前加载的网页是否存在unload (卸载)事件的监听机制,如果不存在,则进入2025或者直接进入203 ;如果存在,则确定该网页不能缓存,进入206。
[0117]需要说明的是,某些网页中存在unload事件的监听机制,对于这些网页,当导航离开该网页时,会自动调用unload事件的处理函数,该函数有可能执行一些操作,导致该网页当前显示的某些参数发生变化。由此使得,当返回该网页或该网页被重新打开时,网页上某些参数将发生变化。因此,如果缓存了该网页当前显示的内容,则当返回该网页或重新打开该网页时,该网页显示的内容将会发生错误,例如需要改变的参数没有发生变化等。基于上述考虑,对该类存在unload事件的监听机制的网页也不予缓存。
[0118]具体的,可以通过查询当前加载的网页对应的主文档中是否存在unload事件的监听器来判断该网页是否存在unload事件的监听机制。如果主文档中存在unload事件的监听器,则确定该网页存在unload事件的监听机制,对该网页不予缓存;如果不存在,则可以缓存该网页。
[0119]2025、判断当前加载的网页是否存在打开本地数据库的行为,如果不存在,则进入2026或者直接进入203 ;如果存在,则确定该页面不能缓存,进入206。
[0120]需要说明的是,某些网页在打开时需要使用到本地数据库。具体的,在加载该类型网页时,会同时加载本地数据库,将本地数据库的内容显示在该网页的页面上。为了保证本地数据库的数据安全,避免出现因其他用户通过返回操作等非法获取到本地数据库的内容,对于该类型网页也不予缓存。
[0121]具体的,可以通过查询当前加载的网页对应的主文档中是否存在本地数据库的内容来判断该网页是否存在打开的本地数据库。如果主文档中存在本地数据库的内容,则确定该网页存在打开的本地数据库,对该网页不予缓存;如果不存在,则可以缓存该网页。
[0122]2026、判断当前加载的页面对应的主文档中是否存在WML (Wireless MarkupLanguage,无线标记语言)的内容或者属于WML格式,如果存在,则进入203 ;如果不存在,则确定该页面不能缓存,进入206。
[0123]需要说明的是,WML是专门为手持式移动通信终端(例如手机等)设计一种标记语言的。采用WML能够减少终端浏览器占用的内存和计算时间。
[0124]本发明实施例所述方法中,对包括WML内容的网页和/或属于WML格式的网页进行缓存,由此使得,对于支持WML网页的终端,也可以通过缓存WML格式的网页的形式,实现加快终端的操作速度,实现节能省电的目的。
[0125]上面对不属于HTTPS链接的网页的缓存标准进行了介绍,其中给出了三种判断方法,在实际应用中,可以但不限于上述三种判断方法,再次不再赘述。需要说明的是,上述三种判断方法2024、2025以及2026可以单独执行也可以依次执行,当依次执行时,其执行的前后顺序可以任意设置,不需要限定。
[0126]上面详细介绍了如何判断网页是否需要被缓存,下面对如何实现网页的缓存进行详细介绍。
[0127]203、将所述网页对应的DOM树和Render树保存在内存中。
[0128]当确定该网页需要被缓存后,将该网页对应的DOM树和Render树保存在所述终端的内存中。由此使得,当需要返回或重新打开该网页时,可以直接从终端内存中获取该网页对应的DOM树和Render树,并进行layout。由此避免了对网页重新加载并重新解析布局的过程,可以大大加快终端执行返回操作的速度,缩短终端的执行时间。
[0129]204、生成与所述网页对应的索引对象,所述索引对象用于指明所述网页对应的DOM树和Render树的保存地址。
[0130]205、将所述索引对象保存在索引列表中,结束流程。
[0131]206、删除所述网页对应的DOM树和Render树,结束流程。
[0132]本发明实施例所述方法中,在打开网页的同时对该网页进行缓存,将生成的该网页对应的DOM树和Render树保存在内存中,并生成用于指明保存地址的索引对象,保存在索引列表中。当返回该网页或需要重新打开该网页时,只需要从所述索引列表中找出与所述网页对应的索引对象,并按照所述索引对象指明的地址提取得到该网页对应的DOM树和Render树,就可以直接根据所述DOM树和Render树进行layout。
[0133]由此使得,采用本发明实施例所述方法,当返回前面已打开过的网页或重新打开该网页时,不需要重新生成该网页对应的DOM树和Render树,只需要按照索引对象从内存中找到即可。因此,使得返回该网页或需要重新打开该网页的操作速度很快,提高了浏览器的执行速度,缩短了操作时间,有利于终端的节能省电。
[0134]需要说明的是,本发明实施例所述方法,还可以包括:在接收到用户对所述网页的再次访问请求,根据所述索引对象读取所述网页对应的DOM树和Render树,渲染显示。
[0135]当然,在实际应用中,在接收用户对所述网页的再次访问请求时,还可以先判断内存中是否保存有与所述网页对应的DOM树和Render树,如果保存有,再根据所述索引对象读取所述网页对应的DOM树和Render树,并渲染显示;如果没有,则按照常规方式,重新生成与所述网页对应的DOM树和Render树。
[0136]需要说明的是,由于终端的内存空间有限,如果对所有打开过的网页均进行缓存,有可能会导致占用终端内存过多,影响终端的其他操作。因此,本发明实施例中,还可以对缓存网页的数量或时间进行限制,保证终端内存的占用率,确保终端的正常运行。
[0137]具体的,所述方法还包括:判断所述索引列表中保存的索引对象的个数是否大于预设的上限值,如果是,根据所述索引对象的保存时间删除指定数目的索引对象对应的网页的DOM树和Render树。
[0138]需要说明的是,在实际应用中,所述预设的上限值可以根据实际情况具体设定。具体的,可以根据终端内存空间的大小和使用情况确定能够缓存网页的最大数目值,即为预设的上限值。
[0139]当然,在实际应用中,所述上限值可以是一个固定值,一但设定后就不再发生改变。但是,由于终端的使用情况变化比较大,而所述上限值一般都是根据终端通常的使用情况进行设定的。如果终端被超常使用,造成终端内存占用量很高,而此时仍然按照该设定的上限值进行网页缓存,有可能导致占用终端内存较多使得终端无法保持正常工作。
[0140]因此,本发明实施例所述方法中,还可以实现根据终端的实际使用情况,动态的设定所述上限值。具体的,可以包括:获取当前内存空间的使用信息,根据所述内存空间的余量,修正所述预设的上限值,即为修正保存网页的DOM树和Render树的数目的上限值。
[0141]即为,实时获取终端当前内存空间的使用情况,根据当前内存空间的余量,对预设的上限值进行修正。如果当前终端内存占用较多,内存的空间余量较小,则可以减少所述预设的上限值,避免因缓存网页过多导致终端内存不足;如果当前终端内存占用较少,内存的空间余量较大,则可以增加所述预设的上限值,增加缓存网页的数目,满足用户的浏览需求。由此可以实现,根据终端内存的实时占用情况,对网页缓存数目的动态调整。
[0142]当所述索引列表中保存的索引对象的个数达到所述预设上限值时,对内存中已经实现缓存的网页进行清理。其清理的原则一般是删除缓存时间较长的网页。
[0143]具体的,在204中将所述索引对象保存在索引列表中时,可以同时记录该索引对象的保存时间。该索引对象的保存时间即为其对应的网页的DOM树和Render树的保存时间,也即为该网页的缓存时间。
[0144]基于此,当确定当前内存中缓存的网页数目超过预设的上限值时,就可以根据所述索引列表中各索引对象的保存时间,确定保存时间最长的索引对象,并按照该索引对象指明的页面的DOM树和Render树的保存地址,删除该DOM树和Render树,实现对内存的清理。
[0145]首先需要说明的是,在实际应用中,如果每次内存中缓存的网页数目超过预设的上限值时,只删除保存时间最长的索引对象对应的网页。则将会导致浏览器频繁的进行内存清理工作。因此,本发明实施例所述方法还可以实现,当内存中缓存的网页数目超过预设的上限值时,对所述索引列表中保存的索引对象按照保存时间由早到晚排序;删除排在前指定数目位的索引对象对应的网页的DOM树和Render树。
[0146]具体的,前述已经说明了,在保存索引对象时,可以同时记录该索引对象的保存时间。则所述索引列表中,可以按照所述保存时间从早到晚对各索引对象进行排序,当内存中缓存的网页数目超过预设的上限值时,排在前η位的索引对象对应的网页删除。其中,η为预设数目,η为大于I的整数。
[0147]例如,按照保存时间对索引列表中的索引对象进行排序,可以将最早保存的索引对象排在第一位,而最晚保存的索引对象排在最后一位。假设所述预设的上限值为30个,预设数目为15个,则当索引列表中保存的索引对象达到30个时,删除保存时间较早的前15个索引对象对应的网页,即为排在前15位的索引对象。
[0148]当然,在本发明其他实施例中,也可以预设时间长度,当内存中缓存的网页数目超过预设的上限值时,删除保存时间超过所述预设时间长度的索引对象对应的网页。
[0149]例如,假设所述预设的上限值为30个,预设时间长度为一天,则当索引列表中保存的索引对象达到30个时,则删除保存时间超过一天的索引对象对应的网页。
[0150]对应于本发明前述各实施例所述的终端浏览器的网页缓存方法,本发明实施例还提供一种终端浏览器的网页缓存装置。参照图3,为本发明实施例所述的终端浏览器的网页缓存装置结构图。
[0151]如图3所示,所述装置可以包括:第一生成单元100、第一保存单元200、第二生成单元300、以及第二保存单元400。
[0152]所述第一生成单元100,用于加载网页,生成与所述网页对应的DOM树和Render树。
[0153]所述第一保存单元200,用于将所述DOM树和Render树保存在内存中。
[0154]所述第二生成单元300,用于生成与所述网页对应的索引对象,所述索引对象用于指明所述网页对应的DOM树和Render树的保存地址。
[0155]所述第二保存单元400,用于将所述索引对象保存在索引列表中。
[0156]本发明实施例所述装置,在打开网页的同时,将生成的网页对应的DOM树和Render树保存在内存中。当需要返回该网页或者重新打开该网页时,只需要从索引列表中找到与该网页对应的索引对象,根据所述索引对象指明的地址,直接获取到该网页对应的DOM树和Render树,对该网页进行layout。
[0157]由此可以使得,在返回或者重新打开曾经打开过的网页时,不需要重新加载该网页以及对该网页重新进行解析和排版,使得返回操作的执行过程非常迅速,减少了终端执行操作所需的时间,有利于终端的节能省电。
[0158]但是,在实际应用中,由于终端的内存空间有限,因此并不是对所有曾经打开过的网页都需要进行缓存。具体的,本发明实施例所述装置,在保存所述DOM树和Render树之前,还可以对当前打开的网页进行判断,确定该网页是否需要被缓存。
[0159]具体的,所述装置还可以包括:第一判断单元,用于确定所述网页符合预设的缓存条件且所述网页对应的主文档不存在错误信息。
[0160]优选的,所述第一判断单元可以包括:第一判断子单元和/第二判断子单元。
[0161]所述第一判断子单元,用于当所述网页的网址属于安全超文本传输协议HTTPS的链接时,所述网页的文档中不存在表单FORM类型的元素。
[0162]和/ 或,
[0163]所述第二判断子单元,用于当所述网页的网址属于HTTPS的链接时,预设的安全网页列表中包含所述网页。
[0164]优选的,所述第一判断单元还可以包括:
[0165]第三判断子单元,用于当所述网页的网址不属于HTTPS链接时,所述网页不存在卸载unload事件的监听机制。
[0166]和/ 或,
[0167]第四判断子单元,用于当所述网页的网址不属于HTTPS链接时,所述网页不存在打开本地数据库的行为。
[0168]和/ 或,
[0169]第五判断子单元,用于当所述网页的网址不属于HTTPS链接时,所述网页对应的主文档属于无线标记语言WML格式或包括WML的内容。
[0170]需要说明的是,由于终端的内存空间有限,如果对所有打开过的网页均进行缓存,有可能会导致占用终端内存过多,影响终端的其他操作。因此,本发明实施例中,还可以对缓存网页的数量或时间进行限制,保证终端内存的占用率,确保终端的正常运行。
[0171]具体的,所述装置还可以包括:删除单元,用于当所述索引列表中保存的索引对象的个数大于预设的上限值时,根据所述索引对象的保存时间删除指定数目的索引对象对应的网页的DOM树和Render树。
[0172]优选的,所述保存时间较长的索引对象包括:保存时间超过预设时间长度的预设数目个索引对象。
[0173]优选的,所述删除单元可以包括:
[0174]排序子单元,用于对所述索引列表中保存的索引对象按照保存时间由早到晚排序。
[0175]删除子单元,用于删除排在前指定数目位的索引对象对应的网页的DOM树和Render 树。
[0176]本发明实施例所述装置中,还可以实现根据终端的实际使用情况,动态的设定所述上限值。具体的,所述装置还可以包括:修正单元,用于获取当前内存空间的使用信息,根据所述内存空间的余量,修正保存网页的DOM树和Render树的数目的上限值。
[0177]优选的,本发明实施例所述装置还可以包括:读取单元,用于接收用户对所述网页的再次访问请求,根据所述索引对象读取所述网页对应的DOM树和Render树,渲染显示。
[0178]当然,所述装置还可以包括:
[0179]第二判断单元,用于判断内存中是否保存有与所述网页对应的DOM树和Render树。
[0180]此时,所述读取单元,还用于当所述第二判断单元的判断结果为是时,再执行根据所述索引对象读取所述网页对应的DOM树和Render树并渲染显示的步骤。
[0181]本发明实施例还提供一种终端,所述终端包括如前述各实施例所述的终端浏览器的网页缓存装置。
[0182]图4为本发明实施例所涉及的终端设备的结构示意图,该终端设备可以用于实施上述实施例中提供的终端浏览器的网页缓存方法。具体来讲:
[0183]终端设备1500可以包括RF (Radio Frequency,射频)电路110、包括有一个或一个以上计算机可读存储介质的存储器120、输入单元130、显示单元140、传感器150、音频电路160、WiFi模块170、包括有一个或者一个以上处理核心的处理器180、以及电源190等部件。本领域技术人员可以理解,图4中示出的终端设备结构并不构成对终端设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
[0184]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,短消息服务)等。
[0185]存储器120可用于存储软件程序以及模块,处理器180通过运行存储在存储器120的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器120可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据终端设备1500的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器120可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器120还可以包括存储器控制器,以提供处理器180和输入单元130对存储器120的访问。
[0186]输入单元130可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。具体地,输入单元130可包括触敏表面131以及其他输入设备132。触敏表面131,也称为触摸显示屏或者触控板,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触敏表面131上或在触敏表面131附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触敏表面131可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器180,并能接收处理器180发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触敏表面131。除了触敏表面131,输入单元130还可以包括其他输入设备132。具体地,其他输入设备132可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
[0187]显示单元140可用于显示由用户输入的信息或提供给用户的信息以及终端设备1500的各种图形用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。显示单元140可包括显示面板141,可选的,可以采用IXD(Liquid CrystalDisplay,液晶显示器)、OLED (Organic Light-Emitting Diode,有机发光二极管)等形式来配置显示面板141。进一步的,触敏表面131可覆盖显示面板141,当触敏表面131检测到在其上或附近的触摸操作后,传送给处理器180以确定触摸事件的类型,随后处理器180根据触摸事件的类型在显示面板141上提供相应的视觉输出。虽然在图4中,触敏表面131与显示面板141是作为两个独立的部件来实现输入和输入功能,但是在某些实施例中,可以将触敏表面131与显示面板141集成而实现输入和输出功能。
[0188]终端设备1500还可包括至少一种传感器150,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板141的亮度,接近传感器可在终端设备1500移动到耳边时,关闭显示面板141和/或背光。作为运动传感器的一种,重力加速度传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于终端设备1500还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
[0189]音频电路160、扬声器161,传声器162可提供用户与终端设备1500之间的音频接口。音频电路160可将接收到的音频数据转换后的电信号,传输到扬声器161,由扬声器161转换为声音信号输出;另一方面,传声器162将收集的声音信号转换为电信号,由音频电路160接收后转换为音频数据,再将音频数据输出处理器180处理后,经RF电路110以发送给比如另一终端设备,或者将音频数据输出至存储器120以便进一步处理。音频电路160还可能包括耳塞插孔,以提供外设耳机与终端设备1500的通信。[0190]WiFi属于短距离无线传输技术,终端设备1500通过WiFi模块170可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图4示出了 WiFi模块170,但是可以理解的是,其并不属于终端设备1500的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
[0191]处理器180是终端设备1500的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器120内的软件程序和/或模块,以及调用存储在存储器120内的数据,执行终端设备1500的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器180可包括一个或多个处理核心;优选的,处理器180可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器180中。
[0192]终端设备1500还包括给各个部件供电的电源190 (比如电池),优选的,电源可以通过电源管理系统与处理器180逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源190还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
[0193]尽管未示出,终端设备1500还可以包括摄像头、蓝牙模块等,在此不再赘述。具体在本实施例中,终端设备的显示单元是触摸屏显示器,终端设备还包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行,该一个或者一个以上程序包含用于进行以下操作的指令:
[0194]加载网页,生成与所述网页对应的DOM树和Render树,并将所述DOM树和Render树保存在内存中;
[0195]生成与所述网页对应的索引对象,所述索引对象用于指明所述网页对应的DOM树和Render树的保存地址;
[0196]将所述索引对象保存在索引列表中。
[0197]较佳的,在所述将所述DOM树和Render树保存在内存中之前,所述方法还包括:确定所述网页符合预设的缓存条件且所述网页对应的主文档不存在错误信息。
[0198]较佳的,所述预设的缓存条件,包括:
[0199]当所述网页的网址属于安全超文本传输协议HTTPS的链接时,所述网页的主文档中不存在表单FORM类型的元素;
[0200]和/ 或,
[0201]当所述网页的网址属于HTTPS的链接时,预设的安全网页列表中包含所述网页。
[0202]较佳的,所述预设的缓存条件,包括:
[0203]当所述网页的网址不属于HTTPS链接时,所述网页不存在卸载unload事件的监听机制;
[0204]和/ 或,
[0205]当所述网页的网址不属于HTTPS链接时,所述网页不存在打开本地数据库的行为;
[0206]和/ 或,
[0207]当所述网页的网址不属于HTTPS链接时,所述网页对应的主文档属于无线标记语言WML格式或包括WML的内容。
[0208]较佳的,所述方法还包括:
[0209]当所述索引列表中保存的索引对象的个数大于预设的上限值时,根据所述索引对象的保存时间删除指定数目的索引对象对应的网页的DOM树和Render树。
[0210]较佳的,所述根据所述索引对象的保存时间删除指定数目的索引对象对应的网页的DOM树和Render树,包括:
[0211]对所述索引列表中保存的索引对象按照保存时间由早到晚排序;
[0212]删除排在前指定数目位的索引对象对应的网页的DOM树和Render树。
[0213]较佳的,所述方法还包括:
[0214]获取当前内存空间的使用信息,根据所述内存空间的余量,修正保存网页的DOM树和Render树的数目的上限值。
[0215]较佳的,所述方法还包括:
[0216]接收用户对所述网页的再次访问请求,根据所述索引对象读取所述网页对应的DOM树和Render树,渲染显示。
[0217]较佳的,在所述接收用户对所述网页的再次访问请求后,所述方法还包括:
[0218]判断内存中是否保存有与所述网页对应的DOM树和Render树,如果保存有,再执行根据所述索引对象读取所述网页对应的DOM树和Render树并渲染显示的步骤。
[0219]本发明实施例在打开网页的同时,将生成的网页对应的DOM树和Render树保存在内存中。当需要返回该网页或者重新打开该网页时,只需要从索引列表中找到与该网页对应的索引对象,根据所述索引对象指明的地址,直接获取到该网页对应的DOM树和Render树,对该网页进行layout。
[0220]由此可以使得,在返回或者重新打开曾经打开过的网页时,不需要重新加载该网页以及对该网页重新进行解析和排版,使得返回操作的执行过程非常迅速,减少了终端执行操作所需的时间,有利于终端的节能省电。
[0221]参见图5,图5是本发明实施例提供的一种服务器结构示意图。该服务器1600可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(centralprocessing units,CPU)1622 (例如,一个或一个以上处理器)和存储器1632,一个或一个以上存储应用程序1642或数据1644的存储介质1630 (例如一个或一个以上海量存储设备)。其中,存储器1632和存储介质1630可以是短暂存储或持久存储。存储在存储介质1630的程序可以包括一个或一个以上模块(图示未示出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器1622可以设置为与存储介质1630通信,在服务器1600上执行存储介质1630中的一系列指令操作。服务器1600还可以包括一个或一个以上电源1626,一个或一个以上有线或无线网络接口 1650,一个或一个以上输入输出接口 1658,一个或一个以上键盘1656,和/或,一个或一个以上操作系统1641,例如Windows ServerTM,Mac OS XTM,UnixTM, LinuxTM,FreeBSDTM等等。上述图1以及图2所示实施例中所述的由服务器所执行的步骤可以基于该图5所示的服务器结构。
[0222]本发明实施例还提供了一种终端设备,该终端设备的结构与上述图4所示的终端设备同理,该终端设备用于执行上述实施例所提供的网络共享方法,其中,该一个或者一个以上程序包含用于进行以下操作的指令:[0223]加载网页,生成与所述网页对应的DOM树和Render树,并将所述DOM树和Render树保存在内存中;
[0224]生成与所述网页对应的索引对象,所述索引对象用于指明所述网页对应的DOM树和Render树的保存地址;
[0225]将所述索引对象保存在索引列表中。
[0226]较佳的,在所述将所述DOM树和Render树保存在内存中之前,所述方法还包括:确定所述网页符合预设的缓存条件且所述网页对应的主文档不存在错误信息。
[0227]较佳的,所述预设的缓存条件,包括:
[0228]当所述网页的网址属于安全超文本传输协议HTTPS的链接时,所述网页的主文档中不存在表单FORM类型的元素;
[0229]和/ 或,
[0230]当所述网页的网址属于HTTPS的链接时,预设的安全网页列表中包含所述网页。
[0231]较佳的,所述预设的缓存条件,包括:
[0232]当所述网页的网址不属于HTTPS链接时,所述网页不存在卸载unload事件的监听机制;
[0233]和/ 或,
[0234]当所述网页的网址不属于HTTPS链接时,所述网页不存在打开本地数据库的行为;
[0235]和/ 或,
[0236]当所述网页的网址不属于HTTPS链接时,所述网页对应的主文档属于无线标记语言WML格式或包括WML的内容。
[0237]较佳的,所述方法还包括:
[0238]当所述索引列表中保存的索引对象的个数大于预设的上限值时,根据所述索引对象的保存时间删除指定数目的索引对象对应的网页的DOM树和Render树。
[0239]较佳的,所述根据所述索引对象的保存时间删除指定数目的索引对象对应的网页的DOM树和Render树,包括:
[0240]对所述索引列表中保存的索引对象按照保存时间由早到晚排序;
[0241 ] 删除排在前指定数目位的索引对象对应的网页的DOM树和Render树。
[0242]较佳的,所述方法还包括:
[0243]获取当前内存空间的使用信息,根据所述内存空间的余量,修正保存网页的DOM树和Render树的数目的上限值。
[0244]较佳的,所述方法还包括:
[0245]接收用户对所述网页的再次访问请求,根据所述索引对象读取所述网页对应的DOM树和Render树,渲染显示。
[0246]较佳的,在所述接收用户对所述网页的再次访问请求后,所述方法还包括:
[0247]判断内存中是否保存有与所述网页对应的DOM树和Render树,如果保存有,再执行根据所述索引对象读取所述网页对应的DOM树和Render树并渲染显示的步骤。
[0248]本发明实施例在打开网页的同时,将生成的网页对应的DOM树和Render树保存在内存中。当需要返回该网页或者重新打开该网页时,只需要从索引列表中找到与该网页对应的索引对象,根据所述索引对象指明的地址,直接获取到该网页对应的DOM树和Render树,对该网页进行layout。
[0249]由此可以使得,在返回或者重新打开曾经打开过的网页时,不需要重新加载该网页以及对该网页重新进行解析和排版,使得返回操作的执行过程非常迅速,减少了终端执行操作所需的时间,有利于终端的节能省电。
[0250]本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
[0251 ] 以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
【权利要求】
1.一种终端浏览器的网页缓存方法,其特征在于,所述方法包括: 加载网页,生成与所述网页对应的DOM树和Render树,并将所述DOM树和Render树保存在内存中; 生成与所述网页对应的索引对象,所述索引对象用于指明所述网页对应的DOM树和Render树的保存地址; 将所述索引对象保存在索引列表中。
2.根据权利要求1所述的方法,其特征在于,在所述将所述DOM树和Render树保存在内存中之前,所述方法还包括: 确定所述网页符合预设的缓存条件且所述网页对应的主文档不存在错误信息。
3.根据权利要求2所述的方法,其特征在于,所述预设的缓存条件,包括: 当所述网页的网址属于安全超文本传输协议HTTPS的链接时,所述网页的主文档中不存在表单FORM类型的元素; 和/或, 当所述网页的网址属于HTTPS的链接时,预设的安全网页列表中包含所述网页。
4.根据权 利要求2所述的方法,其特征在于,所述预设的缓存条件,包括: 当所述网页的网址不属于HTTPS链接时,所述网页不存在卸载unload事件的监听机制; 和/或, 当所述网页的网址不属于HTTPS链接时,所述网页不存在打开本地数据库的行为; 和/或, 当所述网页的网址不属于HTTPS链接时,所述网页对应的主文档属于无线标记语言WML格式或包括WML的内容。
5.根据权利要求1至4任一项所述的方法,其特征在于,所述方法还包括: 当所述索引列表中保存的索引对象的个数大于预设的上限值时,根据所述索引对象的保存时间删除指定数目的索引对象对应的网页的DOM树和Render树。
6.根据权利要求5所述的方法,其特征在于,所述根据所述索引对象的保存时间删除指定数目的索引对象对应的网页的DOM树和Render树,包括: 对所述索引列表中保存的索引对象按照保存时间由早到晚排序; 删除排在前指定数目位的索引对象对应的网页的DOM树和Render树。
7.根据权利要求5所述的方法,其特征在于,所述方法还包括: 获取当前内存空间的使用信息,根据所述内存空间的余量,修正保存网页的DOM树和Render树的数目的上限值。
8.根据权利要求1所述的方法,其特征在于,所述方法还包括: 接收用户对所述网页的再次访问请求,根据所述索引对象读取所述网页对应的DOM树和Render树,渲染显示。
9.根据权利要求8所述的方法,其特征在于,在所述接收用户对所述网页的再次访问请求后,所述方法还包括: 判断内存中是否保存有与所述网页对应的DOM树和Render树,如果保存有,再执行根据所述索引对象读取所述网页对应的DOM树和Render树并渲染显示的步骤。
10.一种终端浏览器的网页缓存装置,其特征在于,所述装置包括: 第一生成单元,用于加载网页,生成与所述网页对应的DOM树和Render树; 第一保存单元,用于将所述DOM树和Render树保存在内存中; 第二生成单元,用于生成与所述网页对应的索引对象,所述索引对象用于指明所述网页对应的DOM树和Render树的保存地址; 第二保存单元,用于将所述索引对象保存在索引列表中。
11.根据权利要求10所述的终端浏览器的网页缓存装置,所述装置还包括: 第一判断单元,用于确定所述网页符合预设的缓存条件且所述网页对应的主文档不存在错误信息。
12.根据权利要求11所述的终端浏览器的网页缓存装置,其特征在于,所述第一判断单元包括: 第一判断子单元,用于当所述网页的网址属于安全超文本传输协议HTTPS的链接时,所述网页的文档中不存在表单FORM类型的元素; 和/或, 第二判断子单元,用于当所述网页的网址属于HTTPS的链接时,预设的安全网页列表中包含所述网页。
13.根据权利要求12所述的终端浏览器的网页缓存装置,其特征在于,所述第一判断单元还包括: 第三判断子单元,用于当所述网页的网址不属于HTTPS链接时,所述网页不存在卸载unload事件的监听机制; 和/或, 第四判断子单元,用于当所述网页的网址不属于HTTPS链接时,所述网页不存在打开本地数据库的行为; 和/或, 第五判断子单元,用于当所述网页的网址不属于HTTPS链接时,所述网页对应的主文档属于无线标记语言WML格式或包括WML的内容。
14.根据权利要求10至13任一项所述的终端浏览器的网页缓存装置,其特征在于,所述装置还包括: 删除单元,用于当所述索引列表中保存的索引对象的个数大于预设的上限值时,根据所述索引对象的保存时间删除指定数目的索引对象对应的网页的DOM树和Render树。
15.根据权利要求14所述的终端浏览器的网页缓存装置,其特征在于,所述删除单元包括: 排序子单元,用于对所述索引列表中保存的索引对象按照保存时间由早到晚排序; 删除子单元,用于删除排在前指定数目位的索引对象对应的网页的DOM树和Render树。
16.根据权利要求14所述的终端浏览器的网页缓存装置,其特征在于,所述装置还包括: 修正单元,用于获取当前内存空间的使用信息,根据所述内存空间的余量,修正保存网页的DOM树和Render树的数目的上限值。
17.根据权利要求10所述的终端浏览器的网页缓存装置,其特征在于,所述装置还包括: 读取单元,用于接收用户对所述网页的再次访问请求,根据所述索引对象读取所述网页对应的DOM树和Render树,渲染显示。
18.根据权利要求17所述的终端浏览器的网页缓存装置,其特征在于,所述装置还包括: 第二判断单元,用于判断内存中是否保存有与所述网页对应的DOM树和Render树;所述读取单元,还用于当所述第二判断单元的判断结果为是时,再执行根据所述索引对象读取所述网页对应的DOM树和Render树并渲染显示的步骤。
19.一种终端,其特征在于,所述终端包括如权利要求10至18任一项所述的终端浏览器的网页缓存装置。
20.—种移动终端,其特征在于,包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于进行以下操作的指令: 加载网页,生成与所述网页对应的DOM树和Render树,并将所述DOM树和Render树保存在内存中; 生成与所述网页对应的索引对象,所述索引对象用于指明所述网页对应的DOM树和Render树的保存地址; 将所述索引对象保存在索引列表中。
【文档编号】G06F17/30GK103699595SQ201310676543
【公开日】2014年4月2日 申请日期:2013年12月11日 优先权日:2013年12月11日
【发明者】张少伟, 牛磊, 左景龙 申请人:小米科技有限责任公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1