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

技术编号:32857346 阅读:11 留言:0更新日期:2022-03-30 19:30
本申请实施例提供了一种应用程序更新方法、装置、电子设备及可读存储介质,涉及计算机技术领域。该方法包括:监控目标应用的Java归档文件的文件状态信息,若文件状态信息发生变化,则说明Java归档文件的文件内容发生变化,可以进一步确定被加载到内存中的Java归档文件的至少一个Java对象的第一版本信息,基于Java归档文件和确定出的第一版本信息,对至少一个Java对象进行检测,若检测结果为至少一个Java对象中存在发生变化的目标Java对象时,在目标应用运行过程中自动加载目标Java对象,实现在应用程序运行的状态下对目标应用进行更新,无需应用程序停止运行或重启,减少了用户等待时间,提高了用户体验。提高了用户体验。提高了用户体验。

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


[0001]本申请涉及计算机
,具体而言,本申请涉及一种应用程序更新方法、装置、电子设备及可读存储介质。

技术介绍

[0002]对于一款应用软件,如果要实现长时间地占据市场,则需要根据市场需求和技术发展不断完善应用软件的各项功能,可以根据需要编写各式各样的更新数据包,以通过更新数据包对应用软件进行更新。
[0003]目前,更新数据包内可以包括多个类或/和对象。若需要根据更新数据包修改或者添加应用软件内容的类或/和对象时,需要停止运行应用软件,才能基于更新数据包对应用软件进行更新,造成一段时间应用软件不可运行。

技术实现思路

[0004]本申请实施例的目的旨在能解决应用程序更新时需要停止运行并重启的技术问题。
[0005]第一方面,提供了一种应用程序更新方法,该方法包括:
[0006]监控处于运行状态的目标应用的Java归档文件的文件状态信息;Java归档文件包括至少一个Java对象;
[0007]若文件状态信息发生变化,则确定在文件状态信息变化前被加载到内存中的Java归档文件的至少一个Java对象的第一版本信息;
[0008]基于Java归档文件和第一版本信息,对至少一个Java对象进行检测;
[0009]若检测结果为至少一个Java对象中存在发生变化的目标Java对象时,在目标应用运行过程中加载目标Java对象,以对目标应用进行更新。
[0010]在第一方面的可选实施例中,在若文件状态信息发生变化,则确定在文件状态信息变化前被加载到内存中的Java归档文件的至少一个Java对象的第一版本信息之前,方法还包括:
[0011]按照预设时间间隔对目标应用的Java归档文件的文件状态信息进行监控,获取到当前文件状态信息;
[0012]若当前文件状态信息与上一次获取到的Java归档文件的文件状态信息不同,则确定文件状态信息发生变化。
[0013]在第一方面的可选实施例中,基于Java归档文件和第一版本信息,对至少一个Java对象进行检测,包括:
[0014]对于每个Java对象,从Java归档文件中获取该Java对象的当前的第二版本信息;
[0015]针对每个Java对象,比较Java对象对应的第一版本信息和第二版本信息,若Java对象的第一版本信息和第二版本信息不相同,则确定Java对象发生变化,并将Java对象作为目标Java对象。
[0016]在第一方面的可选实施例中,在目标应用运行过程中加载目标Java对象,包括:
[0017]针对每个目标Java对象,确定目标Java对象对应的目标类加载器;
[0018]通过目标类加载器将目标Java对象加载到内存中。
[0019]在第一方面的可选实施例中,方法还包括:
[0020]获取针对目标应用的更新文件以及更新文件对应的文件标识信息;
[0021]基于文件标识信息从目标应用的当前文件中确定出与更新文件匹配的目标Java归档文件,采用更新文件对目标Java归档文件进行替换,并更新目标Java归档文件的文件状态信息。
[0022]第二方面,提供了一种应用程序更新装置,该装置包括:
[0023]监控模块,用于监控处于运行状态的目标应用的Java归档文件的文件状态信息;Java归档文件包括至少一个Java对象;
[0024]版本信息获取模块,用于若文件状态信息发生变化,则确定在文件状态信息变化前被加载到内存中的Java归档文件的至少一个Java对象的第一版本信息;
[0025]应用程序更新模块,用于基于Java归档文件和第一版本信息,对至少一个Java对象进行检测;若检测结果为至少一个Java对象中存在发生变化的目标Java对象时,在目标应用运行过程中加载目标Java对象,以对目标应用进行更新。
[0026]在第二方面的可选实施例中,还包括文件状态信息确定模块,具体用于:
[0027]按照预设时间间隔对目标应用的Java归档文件的文件状态信息进行监控,获取到当前文件状态信息;
[0028]若当前文件状态信息与上一次获取到的Java归档文件的文件状态信息不同,则确定文件状态信息发生变化。
[0029]在第二方面的可选实施例中,应用程序更新模块在基于Java归档文件和第一版本信息,对至少一个Java对象进行检测时,具体用于:
[0030]对于每个Java对象,从Java归档文件中获取该Java对象的当前的第二版本信息;
[0031]针对每个Java对象,比较Java对象对应的第一版本信息和第二版本信息,若Java对象的第一版本信息和第二版本信息不相同,则确定Java对象发生变化,并将Java对象作为目标Java对象。
[0032]在第二方面的可选实施例中,应用程序更新模块在目标应用运行过程中加载目标Java对象时,具体用于:
[0033]针对每个目标Java对象,确定目标Java对象对应的目标类加载器;
[0034]通过目标类加载器将目标Java对象加载到内存中。
[0035]在第二方面的可选实施例中,还包括状态信息更新模块,具体用于:
[0036]获取针对目标应用的更新文件以及更新文件对应的文件标识信息;
[0037]基于文件标识信息从目标应用的当前文件中确定出与更新文件匹配的目标Java归档文件,采用更新文件对目标Java归档文件进行替换,并更新目标Java归档文件的文件状态信息。
[0038]第三方面,提供了一种电子设备,该电子设备包括:
[0039]存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时实现上述任一实施例的应用程序更新的方法。
[0040]第四方面,提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,该程序被处理器执行时实现上述任一实施例的应用程序更新的方法。
[0041]第五方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行时实现第一方面实施例中所提供的方法。
[0042]上述的应用程序更新方法,监控处于运行状态的目标应用的Java归档文件的文件状态信息,若文件状态信息发生变化,则说明Java归档文件的文件内容发生变化,进一步确定被加载到内存中的Java归档文件的至少一个Java对象的第一版本信息。若基于Java归档文件和第一文件属性信息,确定至少一个Java对象中存在发生变化的目标Java对象时,则在目标应用运行过程中加载目标Java对象,以对目标应用进行更新。通过对文件状态信息进行监控,并确定出文件状态信息发生变化的Java归档文件的第一版本信息,基于Java归档文件和确定出的第一版本信息,对至少一本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种应用程序更新方法,其特征在于,包括:监控处于运行状态的目标应用的Java归档文件的文件状态信息;所述Java归档文件包括至少一个Java对象;若所述文件状态信息发生变化,则确定在所述文件状态信息变化前被加载到内存中的所述Java归档文件的至少一个Java对象的第一版本信息;基于所述Java归档文件和所述第一版本信息,对所述至少一个Java对象进行检测;若所述检测结果为所述至少一个Java对象中存在发生变化的目标Java对象时,在所述目标应用运行过程中加载所述目标Java对象,以对所述目标应用进行更新。2.根据权利要求1所述的应用程序更新方法,其特征在于,在所述若所述文件状态信息发生变化,则确定在所述文件状态信息变化前被加载到内存中的所述Java归档文件的至少一个Java对象的第一版本信息之前,所述方法还包括:按照预设时间间隔对所述目标应用的所述Java归档文件的文件状态信息进行监控,获取到当前文件状态信息;若所述当前文件状态信息与上一次获取到的所述Java归档文件的文件状态信息不同,则确定所述文件状态信息发生变化。3.根据权利要求1至2中任一项所述的应用程序更新方法,其特征在于,所述基于所述Java归档文件和所述第一版本信息,对所述至少一个Java对象进行检测,包括:对于每个Java对象,从所述Java归档文件中获取该Java对象的当前的第二版本信息;针对每个Java对象,比较所述Java对象对应的所述第一版本信息和所述第二版本信息,若所述Java对象的第一版本信息和第二版本信息不相同,则确定所述Java对象发生变化,并将所述Java对象作为目标Java对象。4.根据权利要求3所述的应用程序更新方法,其特征在于,所述在所述目标应用运行过程中加载所述目标Java对象,包括:针对每个所述目标Java对象,确定所述目标Java对象对应的目标类加载器;通过所述目标类加载器将所述目标Java对象加载到...

【专利技术属性】
技术研发人员:胡汝道吴守钰崔晋强
申请(专利权)人:中电金信软件有限公司
类型:发明
国别省市:

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

1