CN111400630A - 资源预加载方法及相关设备 - Google Patents
资源预加载方法及相关设备 Download PDFInfo
- Publication number
- CN111400630A CN111400630A CN202010119825.0A CN202010119825A CN111400630A CN 111400630 A CN111400630 A CN 111400630A CN 202010119825 A CN202010119825 A CN 202010119825A CN 111400630 A CN111400630 A CN 111400630A
- Authority
- CN
- China
- Prior art keywords
- value
- target resource
- resource
- target
- premd5
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/957—Browsing optimisation, e.g. caching or content distillation
- G06F16/9574—Browsing optimisation, e.g. caching or content distillation of access to content, e.g. by caching
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请实施例公开了一种资源预加载方法及相关设备,应用于终端设备,上述方法包括:获取预设服务器中针对目标应用的目标资源包的目标资源路径,根据目标资源路径,确定目标资源包对应的多个目标资源文件,读取目标资源包的第一MD5值,并获取本地资源包对应的第二MD5值,对比第一MD5值和第二MD5值,若第一MD5值和第二MD5值不同,则获取多个目标资源文件对应的多个第一preMD5值和多个本地资源文件对应的多个第二preMD5值,将多个第一preMD5值与多个第二preMD5值一一对比,得到多个对比结果,根据多个对比结果,确定目标资源包的增量变化情况,根据增量变化情况,确定资源预加载策略,如此,有利于提高资源加载的效率。
Description
技术领域
本申请涉及数据处理领域,具体涉及一种资源预加载方法及相关设备。
背景技术
由于H5界面能够较好的适配终端设备,无需针对性开发,因此,在终端设备中广为使用,但是,现在终端设备中的应用越来越多,功能越来越复杂,资源数据量较大,当用户在打开H5移动页面时,页面加载慢,且可能会出现页面已经打开,但是网页中的图片还未加载的情况,用户体验差。
发明内容
本申请实施例提供一种资源预加载方法及相关设备,有利于提高资源加载的效率,以节省资源加载时间。
本申请实施例的第一方面提供了一种资源预加载方法,应用于终端设备,所述方法包括:
获取预设服务器中针对目标应用的目标资源包的目标资源路径;
根据所述目标资源路径,确定所述目标资源包对应的多个目标资源文件;
读取所述目标资源包的第一MD5值,并获取本地资源包对应的第二MD5值,对比所述第一MD5值和所述第二MD5值,所述本地资源包中包括多个本地资源文件;
若所述第一MD5值和第二MD5值不同,则获取所述多个目标资源文件对应的多个第一preMD5值和所述多个本地资源文件对应的多个第二preMD5值,其中,每一目标资源文件对应一个第一preMD5值,每一本地资源文件对应一个第二preMD5值;
将所述多个第一preMD5值与所述多个第二preMD5值一一对比,得到多个对比结果,根据所述多个对比结果,确定所述目标资源包的增量变化情况,根据所述增量变化情况,确定资源预加载策略。
本申请实施例第二方面提供了一种资源预加载装置,应用于终端设备,所述装置包括:获取单元、确定单元、读取单元和对比单元,其中,
所述获取单元,用于获取预设服务器中针对目标应用的目标资源包的目标资源路径;
所述确定单元,用于根据所述目标资源路径,确定所述目标资源包对应的多个目标资源文件;
所述读取单元,用于读取所述目标资源包的第一MD5值,并获取本地资源包对应的第二MD5值,对比所述第一MD5值和所述第二MD5值,所述本地资源包中包括多个本地资源文件;
所述获取单元,还用于若所述第一MD5值和第二MD5值不同,则获取所述多个目标资源文件对应的多个第一preMD5值和所述多个本地资源文件对应的多个第二preMD5值,其中,每一目标资源文件对应一个第一preMD5值,每一本地资源文件对应一个第二preMD5值;
所述对比单元,用于将所述多个第一preMD5值与所述多个第二preMD5值一一对比,得到多个对比结果,根据所述多个对比结果,确定所述目标资源包的增量变化情况,根据所述增量变化情况,确定资源预加载策略。
本申请实施例的第三方面提供一种终端设备,所述终端设备包括处理器、输入设备、输出设备和存储器,所述处理器、输入设备、输出设备和存储器相互连接,其中,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行本申请实施例第一方面所述的方法。
本申请实施例的第四方面提供了一种计算机可读存储介质,其中,上述计算机可读存储介质存储用于电子数据交换的计算机程序,其中,上述计算机程序使得计算机执行如本申请实施例第一方面所描述的部分或全部步骤。
本申请实施例的第五方面提供了一种计算机程序产品,其中,上述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,上述计算机程序可操作来使计算机执行如本申请实施例第一方面所描述的部分或全部步骤。该计算机程序产品可以为一个软件安装包。
实施本申请实施例,至少具有如下有益效果:
通过本申请实施例,应用于终端设备,可获取预设服务器中针对目标应用的目标资源包的目标资源路径,根据目标资源路径,确定目标资源包对应的多个目标资源文件,读取目标资源包的第一MD5值,并获取本地资源包对应的第二MD5值,对比第一MD5值和第二MD5值,本地资源包中包括多个本地资源文件,若第一MD5值和第二MD5值不同,则获取多个目标资源文件对应的多个第一preMD5值和多个本地资源文件对应的多个第二preMD5值,其中,每一目标资源文件对应一个第一preMD5值,每一本地资源文件对应一个第二preMD5值,将多个第一preMD5值与多个第二preMD5值一一对比,得到多个对比结果,根据多个对比结果,确定目标资源包的增量变化情况,根据增量变化情况,确定资源预加载策略,如此,可根据本地资源包和目标资源包,确定资源的增量变化情况,并根据该增量变化情况,确定资源的预加载策略,可节省加载资源时间,同时减少加载时带宽的浪费,避免出现加载资源时的卡顿现象,有利于提高资源加载的效率。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供了一种资源预加载方法的流程示意图;
图2为本申请实施例提供了一种资源预加载方法的流程示意图;
图3为本申请实施例提供了一种资源预加载方法的流程示意图;
图4为本申请实施例提供了一种终端设备的结构示意图;
图5为本申请实施例提供了一种资源预加载装置的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其他步骤或单元。
在本申请中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本申请所描述的实施例可以与其它实施例相结合。
为了能够更好地理解本申请实施例,下面将对应用本申请实施例的方法进行介绍。
本申请实施例所涉及到的终端设备可以包括各种具有无线通信功能的手持设备、车载设备、无线耳机、计算设备或连接到无线调制解调器的其他处理设备,以及各种形式的用户设备(user equipment,UE),移动台(mobile station,MS),终端设备(terminaldevice)等等,终端设备例如可以为智能手机、平板电脑、耳机盒等等。为方便描述,上面提到的设备统称为终端设备。
请参见图1,图1是本申请实施例提供的一种资源预加载方法的流程示意图,应用于终端设备,上述方法包括以下步骤:
101、获取预设服务器中针对目标应用的目标资源包的目标资源路径。
其中,上述预设服务器可以包括但不限于后台服务器、组件服务器、云端服务器、数据分配系统服务器或数据分配软件服务器等,上述仅是举例,而非穷举,包含但不限于上述装置;上述目标应用可为终端设备中任意一个应用,目标应用可包括以下至少一种:即时通信应用、浏览器应用、视频应用、阅读应用等等,在此不作限定。
此外,上述目标资源包可指网页或者图片等等的压缩包,一般会将网页或者图片或者网页对应的地址信息压缩存储与预设服务器或者本地系统中,以减少内存的开销。
可选地,在所述获取预设服务器中针对目标应用的目标资源包的目标资源路径之前,还可包括如下步骤:
A1、监控所述目标应用的运行状态;
当所述运行状态满足预设条件时,所述获取预设服务器中针对目标应用的目标资源包的目标资源路径,包括:
A2、向所述预设服务器发送index请求,通过所述index请求获取所述目标应用的目标资源包的所述目标资源路径。
其中,上述运行状态可包括以下至少一种:启动状态、切换状态、关闭状态、后台状态等等,在此不作限定,上述预设条件可为用户自行设置或者系统默认,例如,当目标应用的运行状态满足启动状态/后台状态时,可向预设服务器发送index(索引)请求,若上述index请求通过,则可探测或者获取上述目标应用的目标资源包的目标资源路径。
102、根据所述目标资源路径,确定所述目标资源包对应的多个目标资源文件。
其中,上述目标资源文件可包括以下至少一种:图片、脚本语言(JavaScript,js)、样式表(Cascading Style Sheets,css)等等,在此不做限定。
具体实现中,当上述目标应用被开启时,可通过目标资源路径去获取预设服务器或者本地存储的目标描述文件,通过目标描述文件去加载目标资源包里的网页,一般而言,一个目标资源包中可包括多个目标资源文件,每一目标资源文件可对应至少一个图片或者至少一个css程序包或者其他类型的文件。
103、读取所述目标资源包的第一MD5值,并获取本地资源包对应的第二MD5值,对比所述第一MD5值和所述第二MD5值,所述本地资源包中包括多个本地资源文件。
其中,上述第一MD5(Message Digest Algorithm MD5,MD5)信息摘要算法值和第二MD5(Message Digest Algorithm MD5,MD5)信息摘要算法值均为一个散列值,可通过密码散列函数得到,用于确保信息传输的完整性。
此外,上述本地资源包和目标资源包均对应一个第二MD5值和第一MD5值,可由终端设备或者预设服务器自动生成,当目标应用被开启时,会向预设服务器请求目标资源,为了更好的理解上述本地资源包和目标资源包,上述本地资源包可理解为已经加载完成的资源包或者历史资源包,目标资源包可理解为当前需要预加载的资源包。
可选的,上述第一MD5值和第二MD5值原则上是两个相同或不同的字符串或者哈希值,因此,对比上述第一MD5值和第二MD5值可直接采用字符串匹配的方式。
可选地,在上述步骤103之后,在所述对比所述第一MD5值和所述第二MD5值之后,还可包括以下步骤:
若所述第一MD5值和所述第二MD5值相同,则确定所述目标资源包无增量变化,直接加载所述多个本地资源文件。
其中,若本地存储的本地资源包与上述目标资源包中的资源相同,则第一MD5值和第二MD5值相同,则可确定当终端设备中的目标应用向预设服务器请求的目标资源无增量变化,不需要更新目标资源文件,可直接解压本地资源包,得到多个本地资源文件,并加载多个本地资源文件,如此,可减少资源消耗,提高目标应用对应的页面的加载效率。
104、若所述第一MD5值和第二MD5值不同,则获取所述多个目标资源文件对应的多个第一preMD5值和所述多个本地资源文件对应的多个第二preMD5值,其中,每一目标资源文件对应一个第一preMD5值,每一本地资源文件对应一个第二preMD5值。
其中,上述第一preMD5值和第二preMD5值可为用户自行设置或者系统默认,可在配置本地资源或者目标资源时生成,本地资源可存储于本地资源包中,目标资源可存储于目标资源包中,可针对本地资源包中的每一个本地资源文件和目标资源包中的每一目标资源文件分别预设第二preMD5值和第一preMD5值,每一个本地资源文件对应一个第二preMD5值,每一个目标资源文件对应一个第一preMD5值,每一个本地资源文件和其对应的第二preMD5值是一一对应的关系,每一个目标资源文件和其对应的第一preMD5值是一一对应的关系,因此,可通过对比第一preMD5值和第二preMD5值来实现判断上述目标资源文件相对于本地资源文件来说有无增量变化。
105、将所述多个第一preMD5值与所述多个第二preMD5值一一对比,得到多个对比结果,根据所述多个对比结果,确定所述目标资源包的增量变化情况,根据所述增量变化情况,确定资源预加载策略。
其中,将上述多个第一preMD5值与多个第二preMD5值一一对比,实则是比较目标资源包相对于本地资源包来说有无增量,可得到多个对比结果,例如,上述多个第一preMD5值中每一preMD5值均与多个第二preMD5值相同,或者,上述多个第一preMD5值中每一preMD5值均与多个第二preMD5值不同等等情况,如此,可通过上述多个对比结果,确定上述目标资源包的增量变化情况,并根据该增量变化情况,确定资源预加载策略。
在一种可能的示例中,上述步骤105,根据所述多个对比结果,确定所述目标资源包的增量变化情况,可包括以下步骤:
若所述多个对比结果中存在至少一个对比结果为所述第一preMD5值与其对应的所述第二preMD5值不同的情况,则确定所述目标资源包有增量变化。
其中,若上述本地资源包对应的多个第二preMD5值中任意一个第二preMD5值不同,则可确定上述目标资源包有增量变化,并且,可选取上述与上述多个第二preMD5值不同的至少一个第一preMD5值对应的至少一个目标资源文件,由上述至少一个目标资源文件构成增量文件包。
在一种可能的示例中,上述步骤105,根据所述多个对比结果,确定所述目标资源包的增量变化情况,可包括以下步骤:
若所述多个对比结果均为所述第一preMD5值与其对应的所述第二preMD5值相同,则确定所述目标资源包无增量变化。
其中,若上述多个对比结果均为多个第二preMD5值中全部的第二preMD5值与多个第一preMD5值中完全相同,则可确定目标资源包无增量变化,也就是说,说明上述本地资源包相较于目标资源包来说没有更新,或者,该目标应用对应的业务对应的资源没有更新。
在一种可能的示例中,上述步骤105,根据所述增量变化情况,确定资源预加载策略,可包括以下步骤:
511、若所述目标资源包无增量变化,则直接加载所述多个本地资源文件;
512、若所述目标资源包有增量变化,则对所述多个本地资源文件进行筛选,得到无增量变化对应的至少一个目标本地资源文件和有增量变化对应的至少一个目标资源文件;
513、加载所述至少一个目标资源文件。
其中,若上述目标资源包无增量,可理解为,相较于本地资源包,目标资源包没有被更新,则解压上述本地资源包,得到上述多个本地资源文件,直接加载多个本地资源文件;若上述目标资源包有增量变化,也就是说,目标资源包中的多个目标资源文件中至少一个目标资源文件发生了变化,则可对多个本地资源文件进行筛选,以得到无增量变化的至少一个目标本地资源文件,以及有增量变化情况对应的至少一个目标资源文件,至少一个目标资源文件中任意一个目标资源文件均与上述多个本地资源文件中任意一个不同,最后,可直接加载上述至少一个目标资源文件,无需加载上述本地资源文件,如此,可节省加载资源时间,同时减少加载时带宽的浪费,避免出现加载资源时的卡顿现象。
在一种可能的示例中,上述步骤105,根据所述增量变化情况,确定资源预加载策略,可包括以下步骤:
521、若所述多个对比结果为所述第一preMD5值与所述第二preMD5值全部不同,则确定所述目标资源包是全增量包;
522、通过所述目标资源包替换所述本地资源包,通过所述多个第二preMD5值替换所述多个第一preMD5值;
523、加载所述多个目标资源文件。
其中,若上述多个对比结果中所有的对比结果均为第一preMD5值与第二preMD5值不同,则可确定上述目标资源包为全增量包,该全增量包可理解为全部的本地资源文件对应的多个第二preMD5值与全部的目标资源文件对应的多个第一preMD5值均不相同,则认为该目标资源包被完全更新,是一个全新的资源包,表明当前本地中存储的本地资源包中的本地资源文件无法使用,则可解压从预设服务器获取的目标资源包,得到多个目标资源文件,并加载多个目标资源文件,同时,为了减少下一次的获取资源时间的消耗,可将本地资源包中全部本地资源文件替换为多个目标资源文件,以及替换多个本地资源文件对应的多个第二preMD5值为多个目标资源文件对应的第一preMD5值。
可以看出,本申请实施例中所描述的资源预加载方法,应用于终端设备,可获取预设服务器中针对目标应用的目标资源包的目标资源路径,根据目标资源路径,确定目标资源包对应的多个目标资源文件,读取目标资源包的第一MD5值,并获取本地资源包对应的第二MD5值,对比第一MD5值和第二MD5值,本地资源包中包括多个本地资源文件,若第一MD5值和第二MD5值不同,则获取多个目标资源文件对应的多个第一preMD5值和多个本地资源文件对应的多个第二preMD5值,其中,每一目标资源文件对应一个第一preMD5值,每一本地资源文件对应一个第二preMD5值,将多个第一preMD5值与多个第二preMD5值一一对比,得到多个对比结果,根据多个对比结果,确定目标资源包的增量变化情况,根据增量变化情况,确定资源预加载策略,如此,可根据本地资源包和目标资源包,确定资源的增量变化情况,并根据该增量变化情况,确定资源的预加载策略,可节省加载资源时间,同时减少加载时带宽的浪费,避免出现加载资源时的卡顿现象,有利于提高资源加载的效率。
与上述一致地,请参阅图2,图2是本申请实施例公开的一种资源预加载方法的流程示例图,应用于终端设备,该资源预加载方法可包括如下步骤:
201、获取预设服务器中针对目标应用的目标资源包的目标资源路径。
202、监控所述目标应用的运行状态。
203、当所述运行状态满足预设条件时,向所述预设服务器发送index请求,通过所述index请求获取所述目标应用的目标资源包的所述目标资源路径。
204、读取所述目标资源包的第一MD5值,并获取本地资源包对应的第二MD5值,对比所述第一MD5值和所述第二MD5值,所述本地资源包中包括多个本地资源文件。
205、若所述第一MD5值和第二MD5值不同,则获取所述多个目标资源文件对应的多个第一preMD5值和所述多个本地资源文件对应的多个第二preMD5值,其中,每一目标资源文件对应一个第一preMD5值,每一本地资源文件对应一个第二preMD5值。
206、将所述多个第一preMD5值与所述多个第二preMD5值一一对比,得到多个对比结果,根据所述多个对比结果,确定所述目标资源包的增量变化情况。
207、若所述目标资源包无增量变化,则直接加载所述多个本地资源文件。
208、若所述目标资源包有增量变化,则对所述多个本地资源文件进行筛选,得到无增量变化对应的至少一个目标本地资源文件和有增量变化对应的至少一个目标资源文件。
209、加载所述至少一个目标资源文件。
其中,上述步骤201-步骤209的具体描述可以参照上述图1所描述的资源预加载方法的相应步骤,在此不再赘述。
可以看出,本申请实施例所描述的资源预加载方法,应用于终端设备,可获取预设服务器中针对目标应用的目标资源包的目标资源路径,监控所述目标应用的运行状态,当所述运行状态满足预设条件时,向所述预设服务器发送index请求,通过所述index请求获取所述目标应用的目标资源包的所述目标资源路径,读取所述目标资源包的第一MD5值,并获取本地资源包对应的第二MD5值,对比所述第一MD5值和所述第二MD5值,所述本地资源包中包括多个本地资源文件,若所述第一MD5值和第二MD5值不同,则获取所述多个目标资源文件对应的多个第一preMD5值和所述多个本地资源文件对应的多个第二preMD5值,其中,每一目标资源文件对应一个第一preMD5值,每一本地资源文件对应一个第二preMD5值,将所述多个第一preMD5值与所述多个第二preMD5值一一对比,得到多个对比结果,根据所述多个对比结果,确定所述目标资源包的增量变化情况,若所述目标资源包无增量变化,则直接加载所述多个本地资源文件,若所述目标资源包有增量变化,则对所述多个本地资源文件进行筛选,得到无增量变化对应的至少一个目标本地资源文件和有增量变化对应的至少一个目标资源文件,加载所述至少一个目标资源文件,如此,可通过页面的运行状态,判断需要预加载的资源,直接关系到资源更新是否及时,从而有利于提高预加载资源的效率。
与上述一致地,请参阅图3,图3是本申请实施例公开的一种资源预加载方法的流程示例图,应用于终端设备,该资源预加载方法可包括如下步骤:
301、获取预设服务器中针对目标应用的目标资源包的目标资源路径。
302、根据所述目标资源路径,确定所述目标资源包对应的多个目标资源文件。
303、读取所述目标资源包的第一MD5值,并获取本地资源包对应的第二MD5值,对比所述第一MD5值和所述第二MD5值,所述本地资源包中包括多个本地资源文件。
304、若所述第一MD5值和第二MD5值不同,则获取所述多个目标资源文件对应的多个第一preMD5值和所述多个本地资源文件对应的多个第二preMD5值,其中,每一目标资源文件对应一个第一preMD5值,每一本地资源文件对应一个第二preMD5值。
305、若所述第一MD5值和所述第二MD5值相同,则确定所述目标资源包无增量变化,直接加载所述多个本地资源文件。
306、将所述多个第一preMD5值与所述多个第二preMD5值一一对比,得到多个对比结果。
307、若所述多个对比结果中存在至少一个对比结果为所述第一preMD5值与其对应的所述第二preMD5值不同的情况,则确定所述目标资源包有增量变化。
308、若所述多个对比结果均为所述第一preMD5值与其对应的所述第二preMD5值相同,则确定所述目标资源包无增量变化。
309、若所述目标资源包无增量变化,则直接加载所述多个本地资源文件。
310、若所述目标资源包有增量变化,则对所述多个本地资源文件进行筛选,得到无增量变化对应的至少一个目标本地资源文件和有增量变化对应的至少一个目标资源文件。
311、加载所述至少一个目标资源文件。
其中,上述步骤301-步骤311的具体描述可以参照上述图1所描述的资源预加载方法的相应步骤,在此不再赘述。
可以看出,本申请实施例所描述的资源预加载方法,应用于终端设备,获取预设服务器中针对目标应用的目标资源包的目标资源路径,根据目标资源路径,确定目标资源包对应的多个目标资源文件,读取目标资源包的第一MD5值,并获取本地资源包对应的第二MD5值,对比第一MD5值和第二MD5值,本地资源包中包括多个本地资源文件,若第一MD5值和第二MD5值不同,则获取多个目标资源文件对应的多个第一preMD5值和多个本地资源文件对应的多个第二preMD5值,其中,每一目标资源文件对应一个第一preMD5值,每一本地资源文件对应一个第二preMD5值,若第一MD5值和第二MD5值相同,则确定目标资源包无增量变化,直接加载多个本地资源文件,将多个第一preMD5值与多个第二preMD5值一一对比,得到多个对比结果,若多个对比结果中存在至少一个对比结果为第一preMD5值与第二preMD5值不同的情况,则确定目标资源包有增量变化,若多个对比结果均为第一preMD5值与第二preMD5值相同,则确定目标资源包无增量变化,若目标资源包无增量变化,则直接加载多个本地资源文件,若目标资源包有增量变化,则对多个本地资源文件进行筛选,得到无增量变化对应的至少一个目标本地资源文件和有增量变化对应的至少一个目标资源文件,加载至少一个目标资源文件,如此,可优先根据目标资源包和本地资源包判断资源的增量变化情况,若有增量变化,则可根据多个本地资源文件和多个目标资源文件判断具体的增量变化情况,并根据增量变化情况,采取不同的资源预加载策略,有利于提高资源加载的效率。
与上述一致地,请参阅图4,图4为本申请实施例提供的一种终端设备的结构示意图,如图4所示,包括处理器、通信接口、存储器以及一个或多个程序,所述处理器、通信接口和存储器相互连接,其中,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,上述一个或多个程序程序包括用于执行以下步骤的指令:
获取预设服务器中针对目标应用的目标资源包的目标资源路径;
根据所述目标资源路径,确定所述目标资源包对应的多个目标资源文件;
读取所述目标资源包的第一MD5值,并获取本地资源包对应的第二MD5值,对比所述第一MD5值和所述第二MD5值,所述本地资源包中包括多个本地资源文件;
若所述第一MD5值和第二MD5值不同,则获取所述多个目标资源文件对应的多个第一preMD5值和所述多个本地资源文件对应的多个第二preMD5值,其中,每一目标资源文件对应一个第一preMD5值,每一本地资源文件对应一个第二preMD5值;
将所述多个第一preMD5值与所述多个第二preMD5值一一对比,得到多个对比结果,根据所述多个对比结果,确定所述目标资源包的增量变化情况,根据所述增量变化情况,确定资源预加载策略。
可以看出,本申请实施例中所描述的终端设备,可获取预设服务器中针对目标应用的目标资源包的目标资源路径,根据目标资源路径,确定目标资源包对应的多个目标资源文件,读取目标资源包的第一MD5值,并获取本地资源包对应的第二MD5值,对比第一MD5值和第二MD5值,本地资源包中包括多个本地资源文件,若第一MD5值和第二MD5值不同,则获取多个目标资源文件对应的多个第一preMD5值和多个本地资源文件对应的多个第二preMD5值,其中,每一目标资源文件对应一个第一preMD5值,每一本地资源文件对应一个第二preMD5值,将多个第一preMD5值与多个第二preMD5值一一对比,得到多个对比结果,根据多个对比结果,确定目标资源包的增量变化情况,根据增量变化情况,确定资源预加载策略,如此,可根据本地资源包和目标资源包,确定资源的增量变化情况,并根据该增量变化情况,确定资源的预加载策略,可节省加载资源时间,同时减少加载时带宽的浪费,避免出现加载资源时的卡顿现象,有利于提高资源加载的效率。
在一种可能的示例中,在根据所述多个对比结果,确定所述目标资源包的增量变化情况方面,所述程序用于执行以下步骤的指令:
若所述多个对比结果中存在至少一个对比结果为所述第一preMD5值与其对应的所述第二preMD5值不同的情况,则确定所述目标资源包有增量变化。
在一种可能的示例中,在根据所述多个对比结果,确定所述目标资源包的增量变化情况方面,所述程序还用于执行以下步骤的指令:
若所述多个对比结果均为所述第一preMD5值与其对应的所述第二preMD5值相同,则确定所述目标资源包无增量变化。
在一种可能的示例中,在根据所述增量变化情况,确定资源预加载策略方面,所述程序还用于执行以下步骤的指令:
若所述目标资源包无增量变化,则直接加载所述多个本地资源文件;
若所述目标资源包有增量变化,则对所述多个本地资源文件进行筛选,得到无增量变化对应的至少一个目标本地资源文件和有增量变化对应的至少一个目标资源文件;
加载所述至少一个目标资源文件。
在一种可能的示例中,在根据所述增量变化情况,确定资源预加载策略方面,所述程序还用于执行以下步骤的指令:
若所述多个对比结果为所述第一preMD5值与所述第二preMD5值全部不同,则确定所述目标资源包是全增量包;
通过所述目标资源包替换所述本地资源包,通过所述多个第二preMD5值替换所述多个第一preMD5值;
加载所述多个目标资源文件。
在一种可能的示例中,在所述获取预设服务器中针对目标应用的目标资源包的目标资源路径之前,所述程序还用于执行以下步骤的指令:
监控所述目标应用的运行状态;
当所述运行状态满足预设条件时,所述获取预设服务器中针对目标应用的目标资源包的目标资源路径,包括:
向所述预设服务器发送index请求,通过所述index请求获取所述目标应用的目标资源包的所述目标资源路径。
在一种可能的示例中,在所述对比所述第一MD5值和所述第二MD5值之后,所述程序还用于执行以下步骤的指令:
若所述第一MD5值和所述第二MD5值相同,则确定所述目标资源包无增量变化,直接加载所述多个本地资源文件。
上述主要从方法侧执行过程的角度对本申请实施例的方案进行了介绍。可以理解的是,终端设备为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所提供的实施例描述的各示例的单元及算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本申请实施例可以根据上述方法示例对终端设备进行功能单元的划分,例如,可以对应各个功能划分各个功能单元,也可以将两个或两个以上的功能集成在一个处理单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。需要说明的是,本申请实施例中对单元的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
与上述一致地,请参阅图5,图5是本申请实施例公开的一种资源预加载装置的结构示意图,应用于终端设备,该装置包括:获取单元501、确定单元502、读取单元503和对比单元504,其中:
所述获取单元501,用于获取预设服务器中针对目标应用的目标资源包的目标资源路径;
所述确定单元502,用于根据所述目标资源路径,确定所述目标资源包对应的多个目标资源文件;
所述读取单元503,用于读取所述目标资源包的第一MD5值,并获取本地资源包对应的第二MD5值,对比所述第一MD5值和所述第二MD5值,所述本地资源包中包括多个本地资源文件;
所述获取单元501,还用于若所述第一MD5值和第二MD5值不同,则获取所述多个目标资源文件对应的多个第一preMD5值和所述多个本地资源文件对应的多个第二preMD5值,其中,每一目标资源文件对应一个第一preMD5值,每一本地资源文件对应一个第二preMD5值;
所述对比单元504,用于将所述多个第一preMD5值与所述多个第二preMD5值一一对比,得到多个对比结果,根据所述多个对比结果,确定所述目标资源包的增量变化情况,根据所述增量变化情况,确定资源预加载策略。
可以看出,本申请实施例中所描述的资源预加载装置,应用于终端设备,该装置可获取预设服务器中针对目标应用的目标资源包的目标资源路径,根据目标资源路径,确定目标资源包对应的多个目标资源文件,读取目标资源包的第一MD5值,并获取本地资源包对应的第二MD5值,对比第一MD5值和第二MD5值,本地资源包中包括多个本地资源文件,若第一MD5值和第二MD5值不同,则获取多个目标资源文件对应的多个第一preMD5值和多个本地资源文件对应的多个第二preMD5值,其中,每一目标资源文件对应一个第一preMD5值,每一本地资源文件对应一个第二preMD5值,将多个第一preMD5值与多个第二preMD5值一一对比,得到多个对比结果,根据多个对比结果,确定目标资源包的增量变化情况,根据增量变化情况,确定资源预加载策略,如此,可根据本地资源包和目标资源包,确定资源的增量变化情况,并根据该增量变化情况,确定资源的预加载策略,可节省加载资源时间,同时减少加载时带宽的浪费,避免出现加载资源时的卡顿现象,有利于提高资源加载的效率。
在一种可能的示例中,在所述根据所述多个对比结果,确定所述目标资源包的增量变化情况方面,上述对比单元504具体用于:
若所述多个对比结果中存在至少一个对比结果为所述第一preMD5值与其对应的所述第二preMD5值不同的情况,则确定所述目标资源包有增量变化。
在一种可能的示例中,在所述根据所述多个对比结果,确定所述目标资源包的增量变化情况方面,上述对比单元504具体用于:
若所述多个对比结果均为所述第一preMD5值与其对应的所述第二preMD5值相同,则确定所述目标资源包无增量变化。
在一种可能的示例中,在根据所述增量变化情况,确定资源预加载策略方面,上述对比单元504具体用于:
若所述目标资源包无增量变化,则直接加载所述多个本地资源文件;
若所述目标资源包有增量变化,则对所述多个本地资源文件进行筛选,得到无增量变化对应的至少一个目标本地资源文件和有增量变化对应的至少一个目标资源文件;
加载所述至少一个目标资源文件。
在一种可能的示例中,在根据所述增量变化情况,确定资源预加载策略方面,上述对比单元504具体用于:
若所述多个对比结果为所述第一preMD5值与所述第二preMD5值全部不同,则确定所述目标资源包是全增量包;
通过所述目标资源包替换所述本地资源包,通过所述多个第二preMD5值替换所述多个第一preMD5值;
加载所述多个目标资源文件。
本申请实施例还提供一种计算机可读存储介质,其中,该计算机存储介质存储用于电子数据交换的计算机程序,该计算机程序使得计算机执行如上述方法实施例中记载的任何一种资源预加载方法的部分或全部步骤。
本申请实施例还提供一种计算机程序产品,所述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,所述计算机程序可操作来使计算机执行如上述方法实施例中记载的任何一种资源预加载方法的部分或全部步骤。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置,可通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件程序模块的形式实现。
所述集成的单元如果以软件程序模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储器中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储器中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储器包括:U盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储器中,存储器可以包括:闪存盘、ROM、RAM、磁盘或光盘等。
以上对本申请实施例进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (10)
1.一种资源预加载方法,其特征在于,应用于终端设备,所述方法包括:
获取预设服务器中针对目标应用的目标资源包的目标资源路径;
根据所述目标资源路径,确定所述目标资源包对应的多个目标资源文件;
读取所述目标资源包的第一MD5值,并获取本地资源包对应的第二MD5值,对比所述第一MD5值和所述第二MD5值,所述本地资源包中包括多个本地资源文件;
若所述第一MD5值和第二MD5值不同,则获取所述多个目标资源文件对应的多个第一preMD5值和所述多个本地资源文件对应的多个第二preMD5值,其中,每一目标资源文件对应一个第一preMD5值,每一本地资源文件对应一个第二preMD5值;
将所述多个第一preMD5值与所述多个第二preMD5值一一对比,得到多个对比结果,根据所述多个对比结果,确定所述目标资源包的增量变化情况,根据所述增量变化情况,确定资源预加载策略。
2.根据权利要求1所述的方法,其特征在于,所述根据所述多个对比结果,确定所述目标资源包的增量变化情况,包括:
若所述多个对比结果中存在至少一个对比结果为所述第一preMD5值与其对应的所述第二preMD5值不同的情况,则确定所述目标资源包有增量变化。
3.根据权利要求2所述的方法,其特征在于,所述根据所述多个对比结果,确定所述目标资源包的增量变化情况,还包括:
若所述多个对比结果均为所述第一preMD5值与其对应的所述第二preMD5值相同,则确定所述目标资源包无增量变化。
4.根据权利要求3所述的方法,其特征在于,所述根据所述增量变化情况,确定资源预加载策略,包括:
若所述目标资源包无增量变化,则直接加载所述多个本地资源文件;
若所述目标资源包有增量变化,则对所述多个本地资源文件进行筛选,得到无增量变化对应的至少一个目标本地资源文件和有增量变化对应的至少一个目标资源文件;
加载所述至少一个目标资源文件。
5.根据权利要求1所述的方法,其特征在于,根据所述增量变化情况,确定资源预加载策略,包括:
若所述多个对比结果为所述第一preMD5值与其对应的所述第二preMD5值全部不同,则确定所述目标资源包是全增量包;
通过所述目标资源包替换所述本地资源包,通过所述多个第二preMD5值替换所述多个第一preMD5值;
加载所述多个目标资源文件。
6.根据权利要求1所述的方法,其特征在于,在所述获取预设服务器中针对目标应用的目标资源包的目标资源路径之前,所述方法还包括:
监控所述目标应用的运行状态;
当所述运行状态满足预设条件时,所述获取预设服务器中针对目标应用的目标资源包的目标资源路径,包括:
向所述预设服务器发送index请求,通过所述index请求获取所述目标应用的目标资源包的所述目标资源路径。
7.根据权利要求1所述的方法,其特征在于,在所述对比所述第一MD5值和所述第二MD5值之后,所述方法还包括:
若所述第一MD5值和所述第二MD5值相同,则确定所述目标资源包无增量变化,直接加载所述多个本地资源文件。
8.一种资源预加载装置,其特征在于,应用于终端设备,所述装置包括:获取单元、确定单元、读取单元和对比单元,其中,
所述获取单元,用于获取预设服务器中针对目标应用的目标资源包的目标资源路径;
所述确定单元,用于根据所述目标资源路径,确定所述目标资源包对应的多个目标资源文件;
所述读取单元,用于读取所述目标资源包的第一MD5值,并获取本地资源包对应的第二MD5值,对比所述第一MD5值和所述第二MD5值,所述本地资源包中包括多个本地资源文件;
所述获取单元,还用于若所述第一MD5值和第二MD5值不同,则获取所述多个目标资源文件对应的多个第一preMD5值和所述多个本地资源文件对应的多个第二preMD5值,其中,每一目标资源文件对应一个第一preMD5值,每一本地资源文件对应一个第二preMD5值;
所述对比单元,用于将所述多个第一preMD5值与所述多个第二preMD5值一一对比,得到多个对比结果,根据所述多个对比结果,确定所述目标资源包的增量变化情况,根据所述增量变化情况,确定资源预加载策略。
9.一种终端设备,其特征在于,包括处理器、输入设备、输出设备和存储器,所述处理器、输入设备、输出设备和存储器相互连接,其中,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行如权利要求1-7任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行如权利要求1-7任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010119825.0A CN111400630A (zh) | 2020-02-26 | 2020-02-26 | 资源预加载方法及相关设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010119825.0A CN111400630A (zh) | 2020-02-26 | 2020-02-26 | 资源预加载方法及相关设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111400630A true CN111400630A (zh) | 2020-07-10 |
Family
ID=71428474
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010119825.0A Pending CN111400630A (zh) | 2020-02-26 | 2020-02-26 | 资源预加载方法及相关设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111400630A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112386916A (zh) * | 2020-12-01 | 2021-02-23 | 网易(杭州)网络有限公司 | 资源加载的方法、装置及电子设备 |
CN117707563A (zh) * | 2023-06-21 | 2024-03-15 | 荣耀终端有限公司 | 应用资源处理方法及相关设备 |
-
2020
- 2020-02-26 CN CN202010119825.0A patent/CN111400630A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112386916A (zh) * | 2020-12-01 | 2021-02-23 | 网易(杭州)网络有限公司 | 资源加载的方法、装置及电子设备 |
CN117707563A (zh) * | 2023-06-21 | 2024-03-15 | 荣耀终端有限公司 | 应用资源处理方法及相关设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107832100B (zh) | 一种apk插件的加载方法及其终端 | |
CN109391673B (zh) | 一种管理更新文件的方法、系统及终端设备 | |
CN106970816B (zh) | 一种软件升级处理方法、装置及音频播放设备 | |
EP4109861A1 (en) | Data processing method, apparatus, computer device, and storage medium | |
US20140258891A1 (en) | Electronic device, storage medium and method for processing information | |
CN113411404A (zh) | 一种文件下载方法、装置、服务器及存储介质 | |
CN111400630A (zh) | 资源预加载方法及相关设备 | |
CN104253714A (zh) | 监控方法、系统、浏览器及服务器 | |
CN106569917B (zh) | 一种数据备份方法及移动移动终端 | |
CN106997302A (zh) | 固件升级方法、装置及音频播放设备 | |
US10938773B2 (en) | Method and apparatus for synchronizing contact information and medium | |
CN106973020A (zh) | 网络分享终端和网络分享的流量限制方法及系统 | |
CN107798064A (zh) | 页面处理方法、电子设备及计算机可读存储介质 | |
CN105337975A (zh) | 病毒扫描方法及系统 | |
CN104811485A (zh) | 一种资源分享方法 | |
CN104270362A (zh) | 请求处理方法和装置 | |
CN102904937A (zh) | 移动终端访问网页的方法、系统、浏览器和中转服务器 | |
CN110516477A (zh) | 文件处理方法及装置 | |
CN113791735A (zh) | 视频数据存储方法、装置、计算机设备及存储介质 | |
CN111475230B (zh) | 应用的功能配置方法、装置和电子设备 | |
CN103067465A (zh) | 文件分享方法及系统 | |
CN110020290B (zh) | 网页资源缓存方法、装置、存储介质及电子装置 | |
CN103729440A (zh) | 一种访问网站的方法及装置 | |
CN108874591B (zh) | 文件处理方法及相关产品 | |
CN104182331A (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 |