应用程序的更新方法、装置、电子设备和存储介质制造方法及图纸

技术编号:37805190 阅读:14 留言:0更新日期:2023-06-09 09:35
本发明专利技术提供了一种应用程序的更新方法、装置、电子设备和存储介质;该方法包括:响应于目标应用程序的启动,通过本地更新模块资源文件运行目标应用程序的原始更新模块;判断本地更新模块资源文件是否为最新更新模块资源文件;若本地更新模块资源文件不为最新更新模块资源文件,则对原始更新模块进行占用释放,并通过最新更新模块资源文件对占用释放后的原始更新模块进行重新加载,得到运行中的最新更新模块;基于运行中的最新更新模块,对目标应用程序中的业务逻辑进行更新。该方式中,通过最新更新模块资源文件对本地运行中的更新模块进行占用释放和重新加载,使本地的更新模块进行自我更新,从而提高应用程序中更新模块更新的效率和全面性。的效率和全面性。的效率和全面性。

【技术实现步骤摘要】
应用程序的更新方法、装置、电子设备和存储介质


[0001]本专利技术涉及应用程序更新
,尤其是涉及一种应用程序的更新方法、装置、电子设备和存储介质。

技术介绍

[0002]为了对应用程序进行版本管理和程序错误修复,应用程序中通常会内置补丁(patch)模块,在加载应用程序的业务功能之前,通过patch模块判断是否对应用程序的业务功能进行更新或修复,使得应用程序的更新或修复更及时。patch模块是应用程序更新和修复的独木桥,如果patch模块出现错误,严重时会影响业务功能的更新和修复,导致业务功能无法更新和修复,进而导致用户流失。因此,patch模块的自我更新是应用程序更新功能的重要组成部分。
[0003]现有的patch模块更新技术通常是采用与业务功能相似的热修复方式,由于patch模块的热修复文件不包含在常规的patch文件中,因此,在每一次需要进行热修复时,都要完成一套热修复文件的发布流程,以修复常规patch模块中的错误。同时,无论现有技术如何前置patch模块,都无法修复或更新patch模块的热修复功能之前的错误,而维护一套热修复文件的发布流程则使得应用程序的更新效率降低,可见,现有技术存在应用程序更新不全面、效率低的技术问题。

技术实现思路

[0004]有鉴于此,本专利技术的目的在于提供一种应用程序的更新方法、装置、电子设备和存储介质,以提高应用程序更新的效率和全面性。
[0005]第一方面,本专利技术实施例提供了一种应用程序的更新方法,方法包括:响应于目标应用程序的启动,通过所述目标应用程序的本地更新模块资源文件运行所述目标应用程序的原始更新模块;判断所述本地更新模块资源文件是否为最新更新模块资源文件;若所述本地更新模块资源文件不为最新更新模块资源文件,则对所述原始更新模块进行占用释放,并通过所述最新更新模块资源文件对占用释放后的原始更新模块进行重新加载,得到运行中的最新更新模块;基于所述运行中的最新更新模块,对所述目标应用程序中的业务逻辑进行更新。
[0006]第二方面,本专利技术实施例提供了一种应用程序的更新装置,装置包括:响应单元,用于响应于目标应用程序的启动,通过所述目标应用程序的本地更新模块资源文件运行所述目标应用程序的原始更新模块;判断单元,用于判断所述本地更新模块资源文件是否为最新更新模块资源文件;重载单元,用于若所述本地更新模块资源文件不为最新更新模块资源文件,则对所述原始更新模块进行占用释放,并通过所述最新更新模块资源文件对占用释放后的原始更新模块进行重新加载,得到运行中的最新更新模块;更新单元,用于基于所述运行中的最新更新模块,对所述目标应用程序中的业务逻辑进行更新。
[0007]第三方面,本专利技术实施例提供了一种电子设备,包括处理器和存储器,存储器存储
有能够被处理器执行的机器可执行指令,处理器执行机器可执行指令以实现上述应用程序的更新方法。
[0008]第四方面,本专利技术实施例提供了一种计算机可读存储介质,计算机可读存储介质存储有机器可执行指令,机器可执行指令在被处理器调用和执行时,机器可执行指令促使处理器实现上述应用程序的更新方法。
[0009]本专利技术实施例带来了以下有益效果:
[0010]上述应用程序的更新方法、装置、电子设备和存储介质,响应于目标应用程序的启动,通过所述目标应用程序的本地更新模块资源文件运行所述目标应用程序的原始更新模块;判断所述本地更新模块资源文件是否为最新更新模块资源文件;若所述本地更新模块资源文件不为最新更新模块资源文件,则对所述原始更新模块进行占用释放,并通过所述最新更新模块资源文件对占用释放后的原始更新模块进行重新加载,得到运行中的最新更新模块;基于所述运行中的最新更新模块,对所述目标应用程序中的业务逻辑进行更新。该方式中,目标应用程序启动之后,首先通过本地更新模块资源文件运行原始更新模块,如果本地更新模块资源文件不是最新更新模块资源文件,则进入原始更新模块的自我更新模块,基于最新更新模块资源文件进行占用释放和重新加载,得到本地运行中的最新更新模块,使得无需重新完成一套更新模块的发布流程,即可全面地更新本地更新模块,提高应用程序中更新模块更新的效率和全面性。
[0011]本专利技术的其他特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本专利技术而了解。本专利技术的目的和其他优点在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
[0012]为使本专利技术的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
[0013]为了更清楚地说明本专利技术具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施方式,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0014]图1为本专利技术实施例中应用程序的更新方法的一个实施例流程图;
[0015]图2为本专利技术实施例中应用程序的更新方法的另一个实施例流程图;
[0016]图3为本专利技术实施例提供的一种应用程序的更新装置的示意图;
[0017]图4为本专利技术实施例提供的一种电子设备的示意图。
具体实施方式
[0018]为使本专利技术实施例的目的、技术方案和优点更加清楚,下面将结合附图对本专利技术的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。
[0019]本专利技术的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第
四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”或“具有”及其任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
[0020]为便于理解,下面对本专利技术实施例的具体流程进行描述,请参阅图1,本专利技术实施例中应用程序的更新方法的一个实施例包括:
[0021]步骤S10、响应于目标应用程序的启动,通过目标应用程序的本地更新模块资源文件运行目标应用程序的原始更新模块;
[0022]可以理解的是,应用程序(Application,APP)是指为完成某项或多项特定任务的计算机程序,它运行在用户模式,可以和用户进行交互,具有可视的用户界面。目标应用程序中包含业务模块和更新模块,其中,业务模块用于运行目标应用程序的业务逻辑,更新模块用于运行业务模块和更新模块的更新逻辑,本专利技术实施例是对应用程序中更新模块本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种应用程序的更新方法,其特征在于,所述方法包括:响应于目标应用程序的启动,通过所述目标应用程序的本地更新模块资源文件运行所述目标应用程序的原始更新模块;判断所述本地更新模块资源文件是否为最新更新模块资源文件;若所述本地更新模块资源文件不为最新更新模块资源文件,则对所述原始更新模块进行占用释放,并通过所述最新更新模块资源文件对占用释放后的原始更新模块进行重新加载,得到运行中的最新更新模块;基于所述运行中的最新更新模块,对所述目标应用程序中的业务逻辑进行更新。2.根据权利要求1所述的方法,其特征在于,所述若所述本地更新模块资源文件不为最新更新模块资源文件,则对所述原始更新模块进行占用释放,并通过所述最新更新模块资源文件对占用释放后的原始更新模块进行重新加载,得到运行中的最新更新模块,包括:若所述本地更新模块资源文件不为最新更新模块资源文件,则下载最新更新模块资源文件,并对运行中的所述原始更新模块进行运行状态重置,得到重置状态的原始更新模块;对所述重置状态的更新模块进行已运行模块和未运行模块的释放,得到部分释放状态的原始更新模块;将所述最新更新模块资源文件加载至内存中,并对所述内存中的最新更新模块资源文件进行加载,得到部分释放状态的最新更新模块;通过所述内存中的最新更新模块资源文件对所述部分释放状态的最新更新模块进行正在运行模块的热更新,得到运行中的最新更新模块。3.根据权利要求2所述的方法,其特征在于,所述若所述本地更新模块资源文件不为最新更新模块资源文件,则下载最新更新模块资源文件,并对运行中的所述原始更新模块进行运行状态重置,得到重置状态的原始更新模块,包括:若所述本地更新模块资源文件不为最新更新模块资源文件,则下载最新更新模块资源文件;将运行中的所述原始更新模块的运行状态重置为预设初始值,并对被占用资源进行释放,得到重置状态的原始更新模块。4.根据权利要求2所述的方法,其特征在于,所述对所述重置状态的更新模块进行已运行模块和未运行模块的释放,得到部分释放状态的原始更新模块,包括:通过预设的垃圾回收机制,对所述重置状态的更新模块进行内存垃圾的递归清除,得到部分释放状态的原始更新模块。5.根据权利要求2所述的方法,其特征在于,所述通过所述内存中的最新更新模块资源文件对所述部分释放状态的最新更新模块进行正在运行模块的热更新,得到运行中的最新更新模块,包括:对所述内存中最新更新模块资源文件的正在运行模块文件,并将所述正在运行模块文件中的二进制内容替换正在运行模块的二...

【专利技术属性】
技术研发人员:贺勤
申请(专利权)人:网易杭州网络有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1