CN106569859B - 一种目标文件的加载方法及装置 - Google Patents

一种目标文件的加载方法及装置 Download PDF

Info

Publication number
CN106569859B
CN106569859B CN201610970760.4A CN201610970760A CN106569859B CN 106569859 B CN106569859 B CN 106569859B CN 201610970760 A CN201610970760 A CN 201610970760A CN 106569859 B CN106569859 B CN 106569859B
Authority
CN
China
Prior art keywords
target file
file
target
loading
storage space
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
Application number
CN201610970760.4A
Other languages
English (en)
Other versions
CN106569859A (zh
Inventor
谢成鸿
王亚伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing LANYA Box Technology Co.,Ltd.
Original Assignee
Soyou Network Technology Beijing Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Soyou Network Technology Beijing Co ltd filed Critical Soyou Network Technology Beijing Co ltd
Priority to CN201610970760.4A priority Critical patent/CN106569859B/zh
Publication of CN106569859A publication Critical patent/CN106569859A/zh
Application granted granted Critical
Publication of CN106569859B publication Critical patent/CN106569859B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)
  • Stored Programmes (AREA)

Abstract

本申请公开了一种目标文件的加载方法,用于解决移动终端在通过HTML5运行引擎运行HTML5应用时,需要从网络端下载HTML5应用资源,导致每次运行HTML5应用时都需要耗费较多的网络资源来实现应用资源下载的问题。方法包括:在响应于目标文件加载请求加载目标文件前,判断移动终端本地预定存储空间中是否存在所述目标文件;所述预定存储空间中保存的文件,是在接收所述目标文件加载请求前,保存在所述预定存储空间中的;若存在,则从所述预定存储空间中加载所述目标文件;若不存在,则从服务器获取所述目标文件并加载。本申请还公开了一种目标文件的加载装置。

Description

一种目标文件的加载方法及装置
技术领域
本申请涉及计算机技术领域,尤其涉及一种目标文件的加载方法及装置。
背景技术
随着移动互联网技术的发展,越来越多的互联网企业、电商平台将业务重心转移至移动应用上。移动应用可以为人们提供购物、社交以及娱乐等活动的平台,极大地丰富并方便了人们的生活。
随着编程语言的不断发展,第5版超文本标记语言(Hypertext Markup Language5rd,HTML5)已经广泛应用于对移动应用的开发中,这里将基于HTML5语言开发的移动应用称为HTML5应用。为了提高HTML5应用的运行速度,可以通过HTML5运行引擎来为HTML5应用提供高效的运行环境。
HTML5运行引擎在运行HTML5应用的过程中,一般需要加载HTML5应用资源(后称为目标文件,具体为图片文件、JS脚本文件或者HTML5文件等可加载文件)。按照现有技术,移动终端在通过HTML5运行引擎来运行HTML5应用时,每次都需要从网络端下载所述目标文件,这样每次运行HTML5应用都会耗费较多的网络资源。其中,HTML5运行引擎从网络端下载所述目标文件的触发条件,可以是接收到目标文件加载请求。
发明内容
本申请实施例提供一种目标文件的加载方法,用于解决移动终端每次通过HTML5运行引擎运行HTML5应用时,均需要从网络端下载该HTML5的HTML5应用资源,导致每次运行该HTML5应用都需要耗费较多网络资源的问题。
本申请实施例还提供一种目标文件的加载装置,用于解决移动终端每次通过HTML5运行引擎运行HTML5应用时,均需要从网络端下载该HTML5的HTML5应用资源,导致每次运行该HTML5应用都需要耗费较多网络资源的问题。
本申请实施例采用下述技术方案:
一种目标文件的加载方法,包括:
在响应于目标文件加载请求加载目标文件前,判断移动终端本地预定存储空间中是否存在所述目标文件;所述目标文件,为基于第五版超文本标记语言HTML5开发的应用程序的可加载文件;
若存在,则从所述预定存储空间中加载所述目标文件;
若不存在,则从服务器获取所述目标文件并加载。
一种目标文件的加载装置,包括:
目标文件判断单元,用于在响应于目标文件加载请求加载目标文件前,判断移动终端本地预定存储空间中是否存在所述目标文件;所述目标文件,为基于第五版超文本标记语言HTML5开发的应用程序的可加载文件;
第一加载单元,用于在所述目标文件存在时,从所述预定存储空间中加载所述目标文件;
第二加载单元,用于在所述目标文件不存在时,从服务器获取所述目标文件并加载。
本申请实施例采用的上述至少一个技术方案能够达到以下有益效果:
本申请实施例中,通过在响应于目标文件加载请求加载目标文件前,判断移动终端本地预定存储空间中是否存在该目标文件;当目标文件存在时,从预定存储空间中加载该目标文件。这样,便能够解决移动终端每次通过HTML5运行引擎运行HTML5应用时,均需要从网络端下载该HTML5的HTML5应用资源,导致每次运行该HTML5应用都需要耗费较多网络资源的问题。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本申请实施例1提供的基于HTML5应用的更新方法的实施流程示意图;
图2为本申请实施例1中配置文件的获取过程的实现流程示意图;
图3为本实施例2提供的一种实际场景中的基于HTML5应用的更新方法的实施流程示意图;
图4为本申请实施例2提供的步骤33的实施流程图;
图5为本申请实施例3提供的一种目标文件的加载装置示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
以下结合附图,详细说明本申请各实施例提供的技术方案。
实施例1
本申请实施例提供一种目标文件的加载方法,用于解决移动终端每次通过HTML5运行引擎运行HTML5应用时,均需要从网络端下载该HTML5的HTML5应用资源,导致每次运行该HTML5应用都需要耗费较多网络资源的问题。
该方法的执行主体,可以但不限于是HTML5运行引擎等能够被配置为执行本申请实施例提供的方法的运行引擎中的至少一种。为便于描述,下文以该方法的执行主体为HTML5运行引擎为例,对该方法的实施方式进行介绍。可以理解,该方法的执行主体为HTML5运行引擎只是一种示例性说明,并不是对本方法的而执行主体的具体限定。
具体地,实施例1提供的基于HTML5应用的更新方法的实施流程示意图如图1所示,包括如下主要步骤:
步骤11,HTML5运行引擎接收目标文件加载请求。
目标文件加载请求,指的是,HTML5运行引擎在运行HTML5应用的源代码的过程中收到的、用于请求加载文件的指令。请求加载的文件,即为目标文件。
目标文件加载请求可以是由用户的操作触发的,比如用户点击一个链接,从而触发对于目标文件加载请求。目标文件加载请求中,可以包含目标文件的名称,以使得HTML5运行引擎根据该名称,确定需要加载的是哪个目标文件。比如,HTML5运行引擎在运行某个HTML5游戏应用后,移动终端可以显示游戏大厅的界面;若用户点击了游戏大厅的界面中的某个具体的游戏项目名称,如“俄罗斯方块”,则触发了目标文件加载请求,该请求比如可以用于请求加载用于生成该游戏项目的界面的应用资源(即目标文件),如一些作为界面背景的图片文件等。
目标文件,具体为基于HTML5开发的应用程序的可加载文件,如HTML5应用的源代码在执行过程中可能会加载的图片文件、JS脚本文件或者HTML5文件等。
需要说明的是,为了避免采用现有技术时,每次通过HTML5运行引擎运行HTML5应用,都要加载目标文件,导致耗费较多的网络资源的问题,本申请实施例可以通过执行步骤12,来确定是否可以直接从移动终端本地来加载该目标文件。
步骤12,HTML5运行引擎判断移动终端本地预定存储空间中是否存在目标文件;若存在,则执行步骤13;若不存在,则执行步骤14。
移动终端,也可以叫移动通信终端,是指可以在移动中使用的计算机设备。在本申请实施例中,主要是指具有多种应用功能的智能手机和平板电脑等。
可以通过下述方式中的至少一种,实现在接收到目标文件加载请求前,将包括目标文件在内的可加载的各种文件,预先保存在所述本地预定存储空间中:
第一种方式:以某个HTML5应用为例,HTML5运行引擎在首次运行该HTML5应用时,HTML5运行引擎可以根据配置文件,向服务器请求获取与配置文件中记录的文件标识(比如可以是文件名称)相对应的文件,并保存在所述本地预定存储空间中。
所述配置文件中,包含该HTML5应用的可加载的文件的文件标识。
第二种方式:仍然以某个HTML5应用为例,若已经采用第一种方式,将该HTML5应用的可加载的文件保存在了所述本地预定存储空间中,那么,第二种方式包括:
若服务器保存的该HTML5应用的可加载的文件发生了更新(比如新增了可加载的文件,或者可加载的文件的内容发生了变化等),则服务器可以主动将安装有该HTML5应用的移动终端发送通知消息,以触发该移动终端响应于该通知消息,从服务器处下载更新后的可加载的文件,并利用下载的文件,并保存在所述本地预定存储空间中的文件进行更新。
第三种方式:仍然以某个HTML5应用为例,可以将该HTML5应用的可加载的文件设置在该HTML5应用的安装包中,从而利用该安装包在移动终端本地安装该HTML5应用时,安装包中设置的可加载的文件就可以保存至所述本地预定存储空间。
所述本地预定存储空间,可以是操作系统为该HTML5应用分配的任意存储空间,只要该存储空间满足可以保存可加载的文件,并且允许HTML5运行引擎加载该存储空间中的文件即可。
步骤12的具体实现方式,可以包括:HTML5运行引擎根据目标文件加载请求中包含的目标文件的名称,判断移动终端本地预定存储空间中是否存在具备与该名称对应的标识的文件;若存在,则判定本地存在目标文件;若不存在,则判定本地不存在目标文件。
其中,文件的标识,可以是根据文件的名称计算得到的。比如,若假设用户点击了游戏首页上的某个按钮,触发了包含应用资源地址“http://www.layabox.com/game1/monster1.png”的目标文件加载请求,那么,HTML5运行引擎可以根据该请求中包含的该地址,可以得到相对地址“monster1.png”,即得到目标文件的名称,该名称是一个字符串;求该名称的哈希(hash)值,该哈希值就可以作为该目标文件的标识。针对本地预定存储空间中保存的文件而言,文件的标识可以是预先计算得到并保存在文件中,或者保存在与文件相关联的某存储空间中。
本申请实施例中,考虑到可能出现“服务器对目标文件进行了更新,而移动终端本地保存的目标文件还未及时进行更新”的情况,这种情况下进行目标文件加载,可能会导致加载的目标文件不是更新后的目标文件。因此,可以在加载目标文件之前,先判断目标文件是否为最新版本,若是,才进行目标文件的加载。
为了实现在加载目标文件之前先判断目标文件是否为最新版本,在执行步骤12中所述的“HTML5运行引擎判断移动终端本地预定存储空间中是否存在目标文件”之前,可以执行如图2所示的以下子步骤:
子步骤a1,下载HTML5应用的目标版本的版本号;
HTML5应用的版本号通常是一串字符,本申请实施例中的版本号为一串128位的16进制的字符,比如本申请实施例中的某个HTML5应用的版本号为28049d1aeb9434103b4b7983bd4c1ae2。
本申请实施例中,目标版本,通常是指该HTML5应用当前已发布的版本的最新版本。通常地,HTML5应用的开发人员会对HTML5应用进行更新,并将更新的版本发布到服务器端以供移动终端等终端进行下载。
比如,HTML5运行引擎一旦开始运行该HTML5应用,就可以下载目标版本的版本号。
子步骤a2,判断目标版本的版本号与本地保存的应用程序的版本号是否一致;若一致,则执行步骤12;若不一致,则执行子步骤a3。
目标版本的版本号与本地保存的应用程序的版本号两者完全相同时,则判断结果是一致的,否则是不一致的。若目标版本的版本号与本地保存的应用程序的版本号一致,则一般表明当前本地应用程序的版本是最新的;若目标版本的版本号与本地保存的应用程序的版本号不一致,则一般表明当前本地应用程序的版本不是最新的。
其中,本地保存的应用程序的版本号,可以存在于本地保存的配置文件中。该配置文件,是从服务器下载得到的。
子步骤a3,从服务器下载HTML5应用的配置文件,并利用下载到的配置文件对本地保存的配置文件进行覆盖;
从服务器下载到的所述配置文件,是一个二进制文件,包括最新版本的该HTML5应用的所有可加载文件的标识与可加载文件的校验值的映射关系。
其中,可加载文件的校验值,用于对可加载文件进行唯一性校验。对可加载文件进行唯一性校验,是指验证可加载文件是否为最新版本。若验证出可加载文件是最新版本,则唯一性校验通过;否则,则唯一性校验不通过。
由于子步骤a3的执行时机,是在判断出目标版本的版本号与本地保存的应用程序的版本号不一致的情况下,也就是在本地保存的目标文件可能不是最新的目标文件的情况下,因此,通过执行子步骤a3下载该配置文件的意义之一,是在该情况下,利用配置文件验证目标文件是否为最新的目标文件。
需要说明的是,利用该配置文件对目标文件进行唯一性校验的时机,可以是在判断出移动终端本地预定存储空间中存在目标文件之后,在加载该目标文件之前。具体实现方式将在后文进行介绍,此处不再赘述。
此外需要说明的是,配置文件中也可以包括HTML5应用的版本号。配置文件中包括版本号的意义在于:
在利用该配置文件对目标文件进行唯一性校验前,可以判断通过执行步骤a1下载到的目标版本的版本号与该配置文件中包含的版本号是否一致。若一致,则可以说明该配置文件是最新版本的HTML5应用的版本号,从而可以执行利用该配置文件对目标文件进行唯一性校验的操作。若不一致,则可以结束流程。
子步骤a3执行完毕后,再执行步骤12。
步骤13,HTML5运行引擎从预定存储空间中加载该目标文件。
HTML5运行引擎从预定存储空间中加载该目标文件,具体包括:HTML5运行引擎从预定存储空间中获取该目标文件,并将该目标文件加载到移动终端的内存中。
在一些情况下,所述预定存储空间中当前保存的该目标文件,有可能不是最新的目标文件。在这样的情况下,若HTML5运行引擎直接从预定存储空间中加载该目标文件,则加载到的不是最新的目标文件。
为避免加载到不是最新的目标文件的情况,在一种实施方式中,步骤13的具体实现方式可以包括以下两个子步骤:
子步骤b1,根据该目标文件的标识,以及配置文件中包含的文件的标识和文件的校验值的映射关系,查找配置文件中与该目标文件的标识相映射的校验值;
在执行子步骤b1前执行了子步骤a1~子步骤a3的情况下,子步骤b1中所述的配置文件,是通过执行子步骤a1~子步骤a3下载得到的配置文件。
若HTML5运行引擎在开始运行该HTML5应用之后,在执行到子步骤b1前,还没有执行过子步骤a3,则子步骤b1中所述的配置文件,可以是HTML5运行引擎在上一次运行该HTML5应用时,通过执行子步骤a1~子步骤a3下载得到,并保存在本地的。
子步骤b2,比较预定存储空间中当前保存的该目标文件的校验值,与查找到的校验值是否一致;若一致,则从预定存储空间中加载该目标文件。
需要说明的是,若不一致,则可以从服务器下载该目标文件,并加载下载到的目标文件。此外,为便于后续可以不用再从服务器下载该目标文件,在当前已经下载的目标文件满足存储条件时,可以将该目标文件存储至预定存储空间中。
这里所说的该目标文件满足存储条件,指的是:当预设的配置文件中存在目标文件的标识时,将目标文件存储至预定存储空间中。
步骤14,HTML5运行引擎从服务器下载目标文件,并加载下载到的目标文件。此外,为便于后续可以不用再从服务器下载该目标文件,在当前已经下载的目标文件满足存储条件时,可以将该目标文件存储至预定存储空间中。
采用本申请实施例1所提供的该方法,通过在响应于目标文件加载请求加载目标文件前,判断移动终端本地预定存储空间中是否存在该目标文件;当目标文件存在时,从预定存储空间中加载该目标文件。这样,便能够解决移动终端每次通过HTML5运行引擎运行HTML5应用时,均需要从网络端下载该HTML5的HTML5应用资源,导致每次运行该HTML5应用都需要耗费较多网络资源的问题。
实施例2
基于前述实施例1详细叙述了本申请的发明构思,为了便于更好的理解本申请的技术特征、手段和效果,下面结合一种实际应用场景,详细说明本申请实施例2提供的方案在实际中的应用流程。
在该场景下,存在一个基于HTML5语言开发的游戏客户端,该游戏客户端中集成有HTML5运行引擎和HTML5游戏应用的相关配置信息,在运行该游戏客户端时,HTML5运行引擎会根据HTML5游戏应用的相关配置信息,从服务器和/或本地存储空间中加载HTML5游戏应用的文件。
为便于描述,下文将基于HTML5语言开发的游戏客户端简称为游戏客户端。
具体地,实施例2提供的一种实际场景中的基于HTML5游戏应用的目标文件的加载方法的实施流程示意图如图3所示,包括如下主要步骤:
步骤31,在用户向移动终端发出启动游戏客户端的指示(比如点击游戏客户端的图标)后,HTML5运行引擎下载HTML5游戏应用目标版本的版本号;
本地移动终端用户在启动游戏客户端时,HTML5运行引擎会自动从网络端下载HTML5游戏应用的最新版本的版本号。
其中目标版本,是指移动终端用户在启动游戏客户端时,网络端存在的该HTML5游戏应用的最新版本。
目标版本的版本号,指的是该HTML5游戏最新版本的版本号。
为了判断本地HTML5游戏是否为最新版本,则需要执行步骤32。
步骤32,HTML5运行引擎判断目标版本的版本号是否与本地配置文件的版本号是否一致;
通过对目标版本的版本号与本地配置文件的版本号进行比对,可以确定两者是否相等。
本申请实施例可以根据判断结果,确定是否需要对本地配置文件进行更新。
步骤33,HTML5运行引擎若确定出目标版本的版本号与本地配置文件的版本号一致,直接运行HTML5游戏应用的首页;
若目标版本的版本号与本地配置文件的版本号相同,则表明当前本地HTML5游戏应用的版本为最新版本。
具体地,步骤33的实施流程图如图4所示,包括如下四个子步骤:
子步骤41,接收目标文件加载请求;
目标文件,指的是,根据游戏用户的选取指令,请求加载的目标文件。比如,游戏用户选择进入该HTML5游戏的某一个关卡,需要加载的目标文件,比如一些图片和音频资源等。
选择进入该关卡,即触发了所述加载请求。
子步骤42,判断移动终端本地预定存储空间中是否存在该目标文件;
为了避免现有技术中,游戏用户在每次进入游戏客户端,都要重新加载目标文件,从而可以对移动终端本地预定存储空间中是否已保存有目标文件进行判断,并根据判断结果,确定是否可以从移动终端本地来加载目标文件。
子步骤43,若存在,则从预定存储空间中加载目标文件;
若移动终端本地存在该目标文件,具体实现过程为:
(1)若本地预定存储空间中存在要加载的目标文件,则根据该目标文件标识及校验值,以及配置文件中包含的映射关系,对该目标文件进行唯一性校验;
需要说明的是,本申请实施例中,目标文件的标识是根据目标文件的名称计算得来的。
(2)若对该目标文件进行唯一性校验通过,则从预定存储空间中加载目标文件。
子步骤44,若不存在,则从服务器获取目标文件并加载。
具体地,子步骤44实现过程为:
(1)若本地预定存储空间中不存在目标文件,则从服务器获取该目标文件;
(2)根据预设的配置文件中包含的校验值,对获取到的目标文件进行唯一性校验;
其中,配置文件,包括应用程序的所有可加载文件的标识与校验值的映射关系。
具体地,配置文件中包含的与文件标识对应的校验值,用于对目标文件进行唯一性校验。
(3)若校验成功,则加载获取到的该目标文件。
在获取到的目标文件校验成功后,加载获取到的该目标文件,并在要加载的目标文件满足存储条件时,将该目标文件存储至预定存储空间中。
步骤34,若不相同,则下载目标版本的配置文件;
若目标版本的版本号与本地配置文件的版本号不相同,则本地HTML5游戏应用不是最新版本,需要从网络端下载目标版本(即最新版本)的配置文件。
为了保证下载的配置文件的正确性,则需要执行步骤35对所下载的目标版本的配置文件进行校验。
步骤35,对目标版本的配置文件进行校验;若校验结果正确,执行步骤36;否则,执行步骤33;
其中,目标版本的配置文件中包含该HTML5游戏应用的版本号,根据该版本号对目标版本的配置文件进行校验。若配置文件中包含的版本号与下载得到的目标版本的版本号相同,则校验结果为“正确”,校验通过;否则校验结果为“不正确”,校验不通过。
根据校验结果正确与否,可以确定是否将本地的配置文件替换为目标版本的配置文件。
步骤36,则将本地的配置文件替换为目标版本的配置文件;
若校验结果正确,则表明下载的目标版本的配置文件是符合要求的,则将本地的配置文件替换为目标版本的配置文件,用于进入HTML5游戏后,校验本地预定存储空间中存在的文件。
若校验结果不正确,则表明下载的目标版本的配置文件不符合要求,则直接进入游戏,进而执行子步骤41~子步骤44。
采用本申请实施例2提供的方法,由于能够在启动本地游戏客户端时进行版本检测,并在进入游戏客户端后,在响应于目标文件加载请求加载目标文件前,会判断移动终端本地预定存储空间中是否存在该目标文件;当目标文件存在时,便可以从预定存储空间中加载该目标文件。预定存储空间中的目标文件,是之前HTML5运行引擎加载目标文件时,从服务器获取并缓存于该预定存储空间中的,这样,便能够解决移动终端通过HTML5运行引擎运行HTML5应用时,需要先从网络端下载HTML5应用资源,导致每次加载HTML5应用时都需要耗费较多的网络资源来实现应用资源下载的问题。
实施例3
基于与实施例1和实施例2相同的发明构思,本申请实施例3提供了一种目标文件的加载装置,能够用于解决现有技术中的问题,如图5所示,包括以下功能单元:
目标文件判断单元51,用于在响应于目标文件加载请求加载目标文件前,判断移动终端本地预定存储空间中是否存在目标文件;所述目标文件,为基于第五版超文本标记语言HTML5开发的应用程序的可加载文件;所述预定存储空间中保存的文件,是在接收所述目标文件加载请求前,保存在所述预定存储空间中的。
第一加载单元52,用于在目标文件存在时,从预定存储空间中加载所述目标文件;
第二加载单元53,用于在所述目标文件不存在时,从服务器获取所述目标文件并加载。
可选的,所述装置还可以包括:
版本号处理单元54,用于在目标文件判断单元51判断移动终端本地预定存储空间中是否存在所述目标文件前,在目标文件判断单元51响应于目标文件加载请求加载目标文件前,下载所述应用程序的目标版本的版本号;判断出所述目标版本的版本号与所述应用程序的本地保存的版本号一致。
可选的,所述装置还可以包括:配置文件下载单元55,用于若判断出所述目标文件的版本号与所述应用程序的本地保存的版本号不一致,则从服务器下载所述应用程序的配置文件;所述配置文件,包括所述应用程序的所有可加载文件的标识与校验值的映射关系;其中,应用程序的校验值,用于对应用程序进行唯一性校验;则
第一加载单元52,可以用于:
若存在,则根据所述目标文件标识及校验值,以及所述配置文件中包含的所述映射关系,对所述目标文件进行唯一性校验;
若对所述目标文件进行唯一性校验通过,则从所述预定存储空间中加载所述目标文件。
其中,目标文件标识,是根据所述目标文件的名称计算得到。
可选的,本申请实施例中,配置文件中包含所述应用程序的版本号;
根据所述目标文件标识及校验值,以及所述配置文件中包含的所述映射关系,对所述目标文件进行唯一性校验,包括:
在判断出所述目标版本的版本号与所述配置文件中包含的版本号一致后,根据所述目标文件标识及校验值,以及所述映射关系,对所述目标文件进行唯一性校验。
可选的,所述第二加载单元53,具体可以用于:
若不存在,则从所述服务器获取所述目标文件;
根据预设的配置文件中包含的校验值,对获取到的所述目标文件进行唯一性校验;所述配置文件,包括所述应用程序的所有可加载文件的标识与校验值的映射关系;其中,应用程序的校验值,用于对应用程序进行唯一性校验;
若校验成功,则加载获取到的所述目标文件。
为了便于HTML5运行引擎在运行HTML5应用时,避免每次运行都要加载目标文件,所述装置还包括:目标文件存储单元56,用于当预设的配置文件中存在所述目标文件的文件标识时,将所述目标文件存储至所述预定存储空间中。
采用本申请实施例3提供的装置,通过在响应于目标文件加载请求加载目标文件前,判断移动终端本地预定存储空间中是否存在该目标文件;当目标文件存在时,从预定存储空间中加载该目标文件。这样,便能够解决移动终端每次通过HTML5运行引擎运行HTML5应用时,均需要从网络端下载该HTML5的HTML5应用资源,导致每次运行该HTML5应用都需要耗费较多网络资源的问题。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
以上仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

Claims (7)

1.一种目标文件的加载方法,其特征在于,包括:
在响应于目标文件加载请求加载目标文件前,判断移动终端本地预定存储空间中是否存在所述目标文件;所述目标文件,为基于第五版超文本标记语言HTML5开发的应用程序的可加载文件;所述预定存储空间中保存的文件,是在接收所述目标文件加载请求前,保存在所述预定存储空间中的;
若存在,则从所述预定存储空间中加载所述目标文件;
若不存在,则从服务器获取所述目标文件并加载;
其中,判断移动终端本地预定存储空间中是否存在所述目标文件前,所述方法还包括:
在响应于目标文件加载请求加载目标文件前,下载所述应用程序的目标版本的版本号;
判断所述目标版本的版本号与所述应用程序的本地保存的版本号是否一致;
若判断出所述目标文件的版本号与所述应用程序的本地保存的版本号不一致,则从服务器下载所述应用程序的配置文件;所述从服务器下载所述应用程序的配置文件,称之为下载的配置文件,包括所述应用程序的所有可加载文件的标识与校验值的映射关系;其中,所述下载的配置文件中可加载文件的校验值,用于对所述目标文件进行唯一性校验;
其中,若存在,则从所述预定存储空间中加载所述目标文件,包括:
若存在,则根据目标文件标识及校验值,以及预设的配置文件或者所述下载的配置文件中包含的所述映射关系,对所述目标文件进行唯一性校验;其中,所述预设的配置文件,包括所述应用程序的所有可加载文件的标识与校验值的映射关系;其中,所述预设的配置文件中可加载文件的校验值,用于对所述目标文件进行唯一性校验;
若对所述目标文件进行唯一性校验通过,则从所述预定存储空间中加载所述目标文件。
2.如权利要求1所述的方法,其特征在于,所述目标文件标识,根据所述目标文件的名称计算得到。
3.如权利要求1所述的方法,其特征在于,所述预设的配置文件或下载的配置文件中包含所述应用程序的版本号;
根据所述目标文件标识及校验值,以及预设的配置文件或者所述下载的配置文件中包含的所述映射关系,对所述目标文件进行唯一性校验,包括:
在判断出所述目标版本的版本号与预设的配置文件或者所述下载的配置文件中包含的版本号一致后,根据所述目标文件标识及校验值,以及所述映射关系,对所述目标文件进行唯一性校验。
4.如权利要求1所述的方法,其特征在于,若不存在,则从服务器获取所述目标文件并加载,具体包括:
若不存在,则从所述服务器获取所述目标文件;
根据所述预设的配置文件或所述下载的配置文件中包含的校验值,对获取到的所述目标文件进行唯一性校验;
若校验成功,则加载获取到的所述目标文件。
5.如权利要求4所述方法,其特征在于,所述方法还包括:
在所述目标文件满足存储条件时,将所述目标文件存储至所述预定存储空间中。
6.如权利要求5所述方法,其特征在于,在所述目标文件满足存储条件时,将所述目标文件存储至所述预定存储空间中,包括:
当预设的配置文件中存在所述目标文件的文件标识时,将所述目标文件存储至所述预定存储空间中。
7.一种目标文件的加载装置,其特征在于,包括:
目标文件判断单元,用于在响应于目标文件加载请求加载目标文件前,判断移动终端本地预定存储空间中是否存在所述目标文件;所述目标文件,为基于第五版超文本标记语言HTML5开发的应用程序的可加载文件;所述预定存储空间中保存的文件,是在接收所述目标文件加载请求前,保存在所述预定存储空间中的;
第一加载单元,用于在所述目标文件存在时,从所述预定存储空间中加载所述目标文件;
第二加载单元,用于在所述目标文件不存在时,从服务器获取所述目标文件并加载;
版本号处理单元,用于在目标文件判断单元判断移动终端本地预定存储空间中是否存在所述目标文件前,在响应于目标文件加载请求加载目标文件前,下载所述应用程序的目标版本的版本号;判断所述目标版本的版本号与所述应用程序的本地保存的版本号是否一致;
配置文件下载单元,用于若判断出所述目标文件的版本号与所述应用程序的本地保存的版本号不一致,则从服务器下载所述应用程序的配置文件;所述从服务器下载所述应用程序的配置文件,称之为下载的配置文件,包括所述应用程序的所有可加载文件的标识与校验值的映射关系;其中,所述下载的配置文件中可加载文件的校验值,用于对所述目标文件进行唯一性校验;
其中,所述第一加载单元,还用于:
若存在,则根据目标文件标识及校验值,以及预设的配置文件或者所述下载的配置文件中包含的所述映射关系,对所述目标文件进行唯一性校验;其中,所述预设的配置文件,包括所述应用程序的所有可加载文件的标识与校验值的映射关系;其中,所述预设的配置文件中可加载文件的校验值,用于对所述目标文件进行唯一性校验;
若对所述目标文件进行唯一性校验通过,则从所述预定存储空间中加载所述目标文件。
CN201610970760.4A 2016-10-28 2016-10-28 一种目标文件的加载方法及装置 Active CN106569859B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610970760.4A CN106569859B (zh) 2016-10-28 2016-10-28 一种目标文件的加载方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610970760.4A CN106569859B (zh) 2016-10-28 2016-10-28 一种目标文件的加载方法及装置

Publications (2)

Publication Number Publication Date
CN106569859A CN106569859A (zh) 2017-04-19
CN106569859B true CN106569859B (zh) 2020-10-30

Family

ID=58539900

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610970760.4A Active CN106569859B (zh) 2016-10-28 2016-10-28 一种目标文件的加载方法及装置

Country Status (1)

Country Link
CN (1) CN106569859B (zh)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107133053A (zh) * 2017-06-05 2017-09-05 上海鋆创信息技术有限公司 一种应用程序的页面跳转方法和装置、存储介质及终端
CN109582458A (zh) * 2017-09-28 2019-04-05 北京国双科技有限公司 资源信息加载方法、装置、存储介质及处理器
CN107809470B (zh) * 2017-10-12 2020-12-22 北京京东尚科信息技术有限公司 应用程序自动化部署的方法和装置
CN108008984A (zh) * 2017-11-15 2018-05-08 武汉斗鱼网络科技有限公司 一种资源文件下载更新方法及装置
CN109710867A (zh) * 2018-12-20 2019-05-03 贵阳朗玛信息技术股份有限公司 数据处理方法及装置
CN109710870A (zh) * 2018-12-27 2019-05-03 北京微播视界科技有限公司 H5页面的加载方法、装置、电子设备及可读存储介质
CN111562949B (zh) * 2019-01-29 2023-10-10 飞狐信息技术(天津)有限公司 一种模型文件加载方法及装置
CN109901874A (zh) * 2019-03-06 2019-06-18 珠海金山网络游戏科技有限公司 一种文件加载方法及装置、计算设备和存储介质
CN111078257B (zh) * 2019-12-19 2023-09-08 杭州安恒信息技术股份有限公司 一种h5应用包的加载方法及相关装置
CN111176754B (zh) * 2019-12-25 2023-11-10 北京蓝亚盒子科技有限公司 Html5应用运行方法、装置、运行器及计算机可读存储介质
CN113468454A (zh) * 2020-03-31 2021-10-01 北京沃东天骏信息技术有限公司 渲染html页面的方法和装置
CN111679835A (zh) * 2020-04-26 2020-09-18 五八有限公司 应用程序处理方法、装置、终端及存储介质
CN112241473A (zh) * 2020-09-07 2021-01-19 上海连尚网络科技有限公司 一种用于为应用配置数据的方法与设备
CN112328277B (zh) * 2020-10-19 2023-04-07 武汉木仓科技股份有限公司 一种应用的资源更新方法、装置以及服务器
CN112699083A (zh) * 2020-12-30 2021-04-23 五八有限公司 一种文件加载方法、装置、电子设备及可读存储介质
CN113064669A (zh) * 2021-04-02 2021-07-02 北京天空卫士网络安全技术有限公司 一种加载控制方法和装置
CN114489856A (zh) * 2022-01-28 2022-05-13 中国农业银行股份有限公司 应用程序配置文件获取方法、装置和设备
CN117695658A (zh) * 2023-11-23 2024-03-15 华南理工大学 一种网络游戏数据管理方法、装置、系统和介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103902696A (zh) * 2014-03-28 2014-07-02 广州华多网络科技有限公司 一种加载资源文件的方法及装置
CN104065637A (zh) * 2013-07-10 2014-09-24 腾讯科技(深圳)有限公司 网页游戏运行的方法及装置
CN105022750A (zh) * 2014-04-28 2015-11-04 腾讯科技(北京)有限公司 资源文件加载方法和装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080301667A1 (en) * 2007-05-30 2008-12-04 Google Inc. Dynamically Updating Software Applications on a Device
CN101742076A (zh) * 2010-01-21 2010-06-16 深圳市同洲电子股份有限公司 一种数字电视接收终端升级方法及数字电视接收终端

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104065637A (zh) * 2013-07-10 2014-09-24 腾讯科技(深圳)有限公司 网页游戏运行的方法及装置
CN103902696A (zh) * 2014-03-28 2014-07-02 广州华多网络科技有限公司 一种加载资源文件的方法及装置
CN105022750A (zh) * 2014-04-28 2015-11-04 腾讯科技(北京)有限公司 资源文件加载方法和装置

Also Published As

Publication number Publication date
CN106569859A (zh) 2017-04-19

Similar Documents

Publication Publication Date Title
CN106569859B (zh) 一种目标文件的加载方法及装置
CN110058873B (zh) 应用页面更新方法、装置、设备和存储介质
CN109032691B (zh) 一种小程序运行方法、装置及存储介质
CN106445583B (zh) 一种页面显示方法、设备及系统
EP3525410B1 (en) Account login method, apparatus, and server
CN105335187B (zh) 一种应用的处理方法及装置
US20230177124A1 (en) Software maintenance, distribution and loading
US20140351807A1 (en) Method and communication device for updating web application
CN106873960B (zh) 一种应用软件的更新方法和设备
CN108319662A (zh) 页面处理方法、装置、电子设备及可读存储介质
CN107608663B (zh) 一种移动应用插件及移动应用的开发方法及装置
CN106294113B (zh) 一种基于可编程式测试服务的创建方法及装置
CN103902696A (zh) 一种加载资源文件的方法及装置
CN111279312B (zh) 服务应用的备选服务路径
CN107391182B (zh) 一种主题安装包的生成方法、装置、服务器及存储介质
US20170270106A1 (en) Methods and apparatuses for storing file path and accessing local file
CN107480117B (zh) 自动化页面表单数据的恢复方法及装置
CN107707584A (zh) 一种应用加载方法、终端及平台服务器
CN107220074A (zh) 对支撑层软件功能的访问、升级方法及装置
CN108021564B (zh) 一种页面重定向的方法和设备
CN111695060A (zh) 页面切换方法、装置、设备和存储介质
CN106293790B (zh) 基于Firefox操作系统的应用程序升级方法和装置
CN113656107A (zh) 移动应用的加载方法、装置及电子设备
CN110806935A (zh) 应用程序构建方法、装置和系统
CN109684026B (zh) App皮肤更换方法、装置、电子设备及存储介质

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
CB03 Change of inventor or designer information

Inventor after: Xie Chenghong

Inventor after: Wang Yawei

Inventor after: Hu Gao

Inventor after: Ma Yukai

Inventor before: Xie Chenghong

Inventor before: Wang Yawei

CB03 Change of inventor or designer information
CP03 Change of name, title or address

Address after: 100094 1301, building 4, area 4, courtyard 81, Beiqing Road, Haidian District, Beijing

Patentee after: Beijing LANYA Box Technology Co.,Ltd.

Address before: 100097 Room 303, 3rd floor, building 1, No. 25, lantianchang South Road, Haidian District, Beijing

Patentee before: Soyou network technology (Beijing) Co.,Ltd.

CP03 Change of name, title or address