应用程序更新方法、装置、设备和存储介质与流程

专利2022-06-30  53


本发明实施例涉及计算机技术,尤其涉及一种应用程序更新方法、装置、设备和存储介质。



背景技术:

随着业务的快速发展,有些应用程序会出现频繁更新的现象,即应用程序中的一些重要功能模块的业务规则或业务逻辑经常变化,且需要将变化后的规则或逻辑立即发布到应用程序的运行环境中,同时要求服务不中断。

比如存在如下实际业务场景:某个系统的记账模块存在上千个外呼交易,在外呼外组件的过程中,不同的外组件对每个交易的请求报文中各字段栏位要求不同的全半角转换方法,并且这种要求后续可能存在变化,比如某些字段不需要这种转换了,或者又加入新的需求,以要求将某些字段中的英文小写全部转换为大写字母或者要求某些交易中的某些字段为空的情况下需要给个默认值等。再比如银行或保险业务过程中的一些业务检查规则,如票据或合同上某些栏位不能为空、某些栏位之间的关联检查逻辑等,也会频繁的变化。

针对上述业务需求变化频繁的场景,目前主要是通过发布应用程序新版本进行重新部署或者通过热加载技术来实现。发布应用程序新版本的主要过程是修改源码、编译、测试环境测试,之后再将新的应用程序版本发布到运行环境。热加载是指在运行时重新加载class文件以实现应用更新,java平台热加载的实现原理主要依赖java的类加载机制,其实现方式可以概括为:将需要更改的类文件经过修改源码、编译和测试的过程进行发布,并且在应用程序启动运行的同时开启一个后台线程,定时的检测该类文件的时间戳变化,如果类文件的时间戳发生变化,则将此类文件重新加载。

但是,现有的应用程序更新方案存在如下问题:(1)重新发布版本的方案仍然存在将java源码编译为java字节码的过程,耗时较长;并且在新版本部署过程中会造成应用服务短暂不可用。(2)热加载方式同样存在将java代码编译为java字节码的过程,耗时较长;并且,频繁的热加载也会造成jvm的方法区内存增加,容易造成内存溢出,严重情况下导致整个应用程序不可用。



技术实现要素:

本发明实施例提供一种应用程序更新方法、装置、设备和存储介质,以实现在应用服务不中断的基础上,实时更新应用程序功能,且提高应用程序的可维护性。

第一方面,本发明实施例提供了一种应用程序更新方法,包括:

在应用程序运行至预设程序位置时,依据所述预设程序位置对应的功能脚本标识确定目标功能脚本及所述目标功能脚本对应的开发语言标识,其中,所述预设程序位置为待更新的应用程序功能在所述应用程序中的位置,所述目标功能脚本用于实现所述应用程序功能;

依据所述开发语言标识确定所述目标功能脚本对应的目标脚本引擎;

以所述应用程序中的各目标变量作为所述目标功能脚本的输入参数,通过所述目标脚本引擎执行所述目标功能脚本,修改各所述目标变量的变量值,完成所述应用程序中所述应用程序功能的更新。

第二方面,本发明实施例还提供了一种应用程序更新装置,该装置包括:

目标脚本确定模块,用于在应用程序运行至预设程序位置时,依据所述预设程序位置对应的功能脚本标识确定目标功能脚本及所述目标功能脚本对应的开发语言标识,其中,所述预设程序位置为待更新的应用程序功能在所述应用程序中的位置,所述目标功能脚本用于实现所述应用程序功能;

目标脚本引擎确定模块,用于依据所述开发语言标识确定所述目标功能脚本对应的目标脚本引擎;

应用程序更新模块,用于以所述应用程序中的各目标变量作为所述目标功能脚本的输入参数,通过所述目标脚本引擎执行所述目标功能脚本,修改各所述目标变量的变量值,完成所述应用程序中所述应用程序功能的更新。

第三方面,本发明实施例还提供了一种电子设备,该电子设备包括:

一个或多个处理器;

存储装置,用于存储一个或多个程序,

当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本发明任意实施例所提供的应用程序更新方法。

第四方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现本发明任意实施例所提供的应用程序更新方法。

本发明实施例通过在应用程序运行至预设程序位置时,依据所述预设程序位置对应的功能脚本标识确定目标功能脚本及所述目标功能脚本对应的开发语言标识,其中,所述预设程序位置为待更新的应用程序功能在所述应用程序中的位置,所述目标功能脚本用于实现所述应用程序功能;依据所述开发语言标识确定所述目标功能脚本对应的目标脚本引擎;以所述应用程序中的各目标变量作为所述目标功能脚本的输入参数,通过所述目标脚本引擎执行所述目标功能脚本,修改各所述目标变量的变量值,完成所述应用程序中所述应用程序功能的更新。实现了将应用程序中需要更新的程序功能封装在独立于应用程序的功能脚本中,既能避免更新程序功能过程中对原有应用程序处理逻辑的修改,提高应用程序代码的可维护性,又能借助于脚本语言自身的解释执行特性,避免更新的程序功能的代码编译过程,使得需要更新的程序功能可在线编辑,提高应用程序更新的效率。并在应用程序运行至功能脚本对应的预设程序位置时,使得功能脚本随着应用程序的运行而实时生效,提高了更新应用程序功能的实时性。

附图说明

图1是本发明实施例一中的一种应用程序更新方法的流程图;

图2是本发明实施例二中的一种应用程序更新装置的结构示意图;

图3是本发明实施例三中的一种电子设备的结构示意图。

具体实施方式

下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。

实施例一

本实施例提供的应用程序更新方法可适用于基于java平台开发的应用程序的更新和升级,尤其适用于应用程序中频繁变化处理逻辑的功能的更新。该方法可以由应用程序更新装置来执行,该装置可以由软件和/或硬件的方式实现,该装置可以集成在安装有应用程序的电子设备中,例如典型的是用户终端设备,例如手机、平板电脑或台式电脑等。参见图1,本实施例的方法具体包括如下步骤:

s110、在应用程序运行至预设程序位置时,依据所述预设程序位置对应的功能脚本标识确定目标功能脚本及所述目标功能脚本对应的开发语言标识。

其中,所述预设程序位置为待更新的应用程序功能在所述应用程序中的位置。即预设程序位置是应用程序中需要实现待更新的应用程序功能的代码对应的程序代码位置。功能脚本标识是指唯一表征一个功能脚本的信息。功能脚本标识与预设程序位置处的代码内容相关。示例性地,所述预设程序位置为所述目标功能脚本的脚本接口所在的位置,所述功能脚本标识为所述脚本接口的接口名称。即预设程序位置处的代码是待更新的应用程序功能对应的目标功能脚本的脚本调用接口api,那么功能脚本标识便为接口名称。又如,如果预设程序位置处的代码是诸如注解等标识性代码语句,那么功能脚本标识便为注解等标识性语句中的脚本名称。功能脚本是指实现某一应用程序功能的脚本,其可以采用任一通用脚本语言编写,并且其与应用程序分离,是独立于应用程序代码的独立脚本。所述目标功能脚本是用于实现待更新的应用程序功能的功能脚本。开发语言标识是指能够表征脚本开发语言的信息。

具体地,为了更加便捷且快速地更新应用程序,本发明实施例中将应用程序中需要更新的应用程序功能封装至独立于应用程序的功能脚本中,并且在应用程序中、实现该应用程序功能的位置处,预埋该功能脚本对应的功能脚本标识。在应用程序正常运行至预设程序位置时,会根据预埋的功能脚本标识来查找并获取目标功能脚本,通过目标功能脚本的执行来实现应用程序功能。这样,当应用程序功能的处理逻辑需要更新时,便可及时修改功能脚本中的脚本内容,而不用修改应用程序的代码逻辑,从而不会影响原本的应用程序运行,既能实时更新应用程序功能,又能实时地将更新的应用程序功能生效,且不会出现应用服务中断的情况。

另外,考虑到不同的开发人员有不同的开发语言偏好,功能脚本的开发语言可能不同,故为了能够正确执行该目标功能脚本,在确定了目标功能脚本后,本发明实施例中还需确定该目标功能脚本的开发语言标识。

示例性地,所述依据所述预设程序位置对应的功能脚本标识确定目标功能脚本包括:依据所述功能脚本标识,从内存缓存中获取所述目标功能脚本。具体地,功能脚本可以存储至配置文件、数据库和本地内存缓存中,当应用程序运行至预设程序位置时,便从存储功能脚本的位置获取目标功能脚本。但是,为了避免每次执行功能脚本时都从配置文件或数据库中读取脚本所带来的io开销,本实施例中会预先将该应用程序中涉及到的各功能脚本加载到内存缓存中,以进一步提高应用程序功能生效的实时性。

示例性地,在所述依据所述预设程序位置对应的功能脚本标识确定目标功能脚本及所述目标功能脚本对应的开发语言标识之前,还包括:在监测到配置文件或数据库中与所述应用程序匹配的功能脚本的时间戳变化时,从所述配置文件或所述数据库中获取新的功能脚本,覆盖所述内存缓存中的相应功能脚本,以更新所述内存缓存中的各功能脚本。具体地,为了进一步提高应用程序功能更新的实时性,本实施例中需要监测相关功能脚本的时间戳。即持续监测配置文件或者数据库中功能脚本的时间戳是否更新。若否,则继续监测;若是,则从配置文件或数据库中读取更新了时间戳的功能脚本,并利用更新的功能脚本覆盖内存缓存中的相应功能脚本。应当理解的是,配置文件或数据库中的功能脚本都是通过脚本验证工具检查了脚本的正确性的。该脚本验证工具用于检查脚本是否符合其对应语言的语法规范,以及可手工输入测试参数进行在线测试脚本正确性。

示例性地,确定所述目标功能脚本对应的开发语言标识包括:判断所述内存缓存中是否存在所述目标功能脚本对应的开发语言标识;若是,则从所述内存缓存中读取所述开发语言标识;若否,则对所述目标功能脚本的功能脚本内容进行分析,确定所述目标功能脚本对应的开发语言标识。具体地,在确定开发语言标识时,先判断内存缓存中是否存储了目标功能脚本的开发语言标识。若是,则直接读取即可。若否,则需要对目标功能脚本的脚本内容进行词法分析和语法分析,以分析出目标功能脚本对应的开发语言标识。之后,将分析出的开发语言标识关联存储至目标功能脚本所在的内存缓存中,供后续查询使用。这样设置的好处在于,能够提高开发语言标识确定的效率,从而进一步提高应用程序功能生效的实时性。

s120、依据所述开发语言标识确定所述目标功能脚本对应的目标脚本引擎。

其中,目标脚本引擎是用于执行目标功能脚本的脚本引擎。

具体地,功能脚本的开发语言不同,便需要不同的脚本引擎来执行相应开发语言的功能脚本。所以,本实施例中需要根据开发语言标识,从各种脚本引擎中筛选出与目标功能脚本匹配的目标脚本引擎。

示例性地,所述依据所述开发语言标识确定所述目标功能脚本对应的目标脚本引擎包括:依据所述开发语言标识,从预设脚本引擎平台中确定所述目标功能脚本对应的目标脚本引擎,其中,所述预设脚本引擎平台集成了各java平台的脚本引擎。具体地,为了提高目标脚本引擎确定的速度,本实施例中设计了预设脚本引擎平台,该预设脚本引擎平台支持各类java平台的脚本引擎,支持java程序动态执行javascript、groovy、jruby和python等开发语言编写的脚本。

s130、以所述应用程序中的各目标变量作为所述目标功能脚本的输入参数,通过所述目标脚本引擎执行所述目标功能脚本,修改各所述目标变量的变量值,完成所述应用程序中所述应用程序功能的更新。

其中,目标变量是指待更新的应用程序功能中需要处理的变量。

具体地,应用程序在运行至预设程序位置时,便已经获得了多个变量的值,为了正确执行目标功能脚本,需要从各变量中确定出目标功能脚本所需的各目标变量,并将这些目标变量作为目标功能脚本的输入参数,来触发目标脚本引擎执行目标功能脚本。目标功能脚本执行过程中会对输入的各目标变量的值进行逻辑运算处理,从而改变其数值。所以,当目标功能脚本执行结束后,便会修改应用程序中各目标变量的值,即完成所述应用程序中所述应用程序功能,进而触发应用程序继续正常运行。如果目标功能脚本有更新,那该过程便是完成所述应用程序中所述应用程序功能的更新。

示例性地,所述以所述应用程序中的各目标变量作为所述目标功能脚本的输入参数包括:将各所述目标变量存储至预设字典结构,生成目标字典变量;以所述目标字典变量作为所述目标功能脚本的输入参数。具体地,为了提高各目标变量的管理效率,本实施例中会将各目标变量先存储至预设字典结构,生成目标字典变量,再将该目标字典变量作为输入参数输入目标功能脚本。相应地,目标功能脚本执行后,修改的便是目标字典变量的变量值。

本实施例的技术方案,通过在应用程序运行至预设程序位置时,依据所述预设程序位置对应的功能脚本标识确定目标功能脚本及所述目标功能脚本对应的开发语言标识,其中,所述预设程序位置为待更新的应用程序功能在所述应用程序中的位置,所述目标功能脚本用于实现所述应用程序功能;依据所述开发语言标识确定所述目标功能脚本对应的目标脚本引擎;以所述应用程序中的各目标变量作为所述目标功能脚本的输入参数,通过所述目标脚本引擎执行所述目标功能脚本,修改各所述目标变量的变量值,完成所述应用程序中所述应用程序功能的更新。实现了将应用程序中需要更新的程序功能封装在独立于应用程序的功能脚本中,既能避免更新程序功能过程中对原有应用程序处理逻辑的修改,提高应用程序代码的可维护性,又能借助于脚本语言自身的解释执行特性,避免更新的程序功能的代码编译过程,使得需要更新的程序功能可在线编辑,提高应用程序更新的效率。并在应用程序运行至功能脚本对应的预设程序位置时,使得功能脚本随着应用程序的运行而实时生效,提高了更新应用程序功能的实时性。

实施例二

本实施例提供一种应用程序更新装置,参见图2,该装置具体包括:

目标脚本确定模块210,用于在应用程序运行至预设程序位置时,依据所述预设程序位置对应的功能脚本标识确定目标功能脚本及所述目标功能脚本对应的开发语言标识,其中,所述预设程序位置为待更新的应用程序功能在所述应用程序中的位置,所述目标功能脚本用于实现所述应用程序功能;

目标脚本引擎确定模块220,用于依据所述开发语言标识确定所述目标功能脚本对应的目标脚本引擎;

应用程序更新模块230,用于以所述应用程序中的各目标变量作为所述目标功能脚本的输入参数,通过所述目标脚本引擎执行所述目标功能脚本,修改各所述目标变量的变量值,完成所述应用程序中所述应用程序功能的更新。

可选地,目标脚本确定模块210具体用于:

依据所述功能脚本标识,从内存缓存中获取所述目标功能脚本。

进一步地,目标脚本确定模块210还具体用于:

判断所述内存缓存中是否存在所述目标功能脚本对应的开发语言标识;

若是,则从所述内存缓存中读取所述开发语言标识;

若否,则对所述目标功能脚本的功能脚本内容进行分析,确定所述目标功能脚本对应的开发语言标识。

可选地,在上述装置的基础上,该装置还包括脚本更新模块,用于:

在所述依据所述预设程序位置对应的功能脚本标识确定目标功能脚本及所述目标功能脚本对应的开发语言标识之前,在监测到配置文件或数据库中与所述应用程序匹配的功能脚本的时间戳变化时,从所述配置文件或所述数据库中获取新的功能脚本,覆盖所述内存缓存中的相应功能脚本,以更新所述内存缓存中的各功能脚本。

可选地,应用程序更新模块230具体用于:

将各所述目标变量存储至预设字典结构,生成目标字典变量;

以所述目标字典变量作为所述目标功能脚本的输入参数。

可选地,所述预设程序位置为所述目标功能脚本的脚本接口所在的位置,所述功能脚本标识为所述脚本接口的接口名称。

可选地,目标脚本引擎确定模块220具体用于:

依据所述开发语言标识,从预设脚本引擎平台中确定所述目标功能脚本对应的目标脚本引擎,其中,所述预设脚本引擎平台集成了各java平台的脚本引擎。

通过本发明实施例二的一种应用程序更新装置,实现了将应用程序中需要更新的程序功能封装在独立于应用程序的功能脚本中,既能避免更新程序功能过程中对原有应用程序处理逻辑的修改,提高应用程序代码的可维护性,又能借助于脚本语言自身的解释执行特性,避免更新的程序功能的代码编译过程,使得需要更新的程序功能可在线编辑,提高应用程序更新的效率。并在应用程序运行至功能脚本对应的预设程序位置时,使得功能脚本随着应用程序的运行而实时生效,提高了更新应用程序功能的实时性。

本发明实施例所提供的应用程序更新装置可执行本发明任意实施例所提供的应用程序更新方法,具备执行方法相应的功能模块和有益效果。

值得注意的是,上述应用程序更新装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。

实施例三

参见图3,本实施例提供了一种电子设备300,其包括:一个或多个处理器320;存储装置310,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器320执行,使得所述一个或多个处理器320实现本发明实施例所提供的应用程序更新方法,包括:

在应用程序运行至预设程序位置时,依据所述预设程序位置对应的功能脚本标识确定目标功能脚本及所述目标功能脚本对应的开发语言标识,其中,所述预设程序位置为待更新的应用程序功能在所述应用程序中的位置,所述目标功能脚本用于实现所述应用程序功能;

依据所述开发语言标识确定所述目标功能脚本对应的目标脚本引擎;

以所述应用程序中的各目标变量作为所述目标功能脚本的输入参数,通过所述目标脚本引擎执行所述目标功能脚本,修改各所述目标变量的变量值,完成所述应用程序中所述应用程序功能的更新。

当然,本领域技术人员可以理解,处理器320还可以实现本发明任意实施例所提供的应用程序更新方法的技术方案。

图3显示的电子设备300仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。

如图3所示,该电子设备300包括处理器320、存储装置310、输入装置330和输出装置340;电子设备中处理器320的数量可以是一个或多个,图3中以一个处理器320为例;电子设备中的处理器320、存储装置310、输入装置330和输出装置340可以通过总线或其他方式连接,图3中以通过总线350连接为例。

存储装置310作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明实施例中的应用程序更新方法对应的程序指令/模块(例如,应用程序更新装置中的目标脚本确定模块、目标脚本引擎确定模块和应用程序更新模块)。

存储装置310可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储装置310可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储装置310可进一步包括相对于处理器320远程设置的存储器,这些远程存储器可以通过网络连接至电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

输入装置330可用于接收输入的数字或字符信息,以及产生与电子设备的用户设置以及功能控制有关的键信号输入。输出装置340可包括显示屏等显示设备。

实施例四

本实施例提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行一种应用程序更新方法,该方法包括:

在应用程序运行至预设程序位置时,依据所述预设程序位置对应的功能脚本标识确定目标功能脚本及所述目标功能脚本对应的开发语言标识,其中,所述预设程序位置为待更新的应用程序功能在所述应用程序中的位置,所述目标功能脚本用于实现所述应用程序功能;

依据所述开发语言标识确定所述目标功能脚本对应的目标脚本引擎;

以所述应用程序中的各目标变量作为所述目标功能脚本的输入参数,通过所述目标脚本引擎执行所述目标功能脚本,修改各所述目标变量的变量值,完成所述应用程序中所述应用程序功能的更新。

当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的方法操作,还可以执行本发明任意实施例所提供的应用程序更新方法中的相关操作。

通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、闪存(flash)、硬盘或光盘等,包括若干指令用以使得一台电子设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所提供的应用程序更新方法。

注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。


技术特征:

1.一种应用程序更新方法,其特征在于,包括:

在应用程序运行至预设程序位置时,依据所述预设程序位置对应的功能脚本标识确定目标功能脚本及所述目标功能脚本对应的开发语言标识,其中,所述预设程序位置为待更新的应用程序功能在所述应用程序中的位置,所述目标功能脚本用于实现所述应用程序功能;

依据所述开发语言标识确定所述目标功能脚本对应的目标脚本引擎;

以所述应用程序中的各目标变量作为所述目标功能脚本的输入参数,通过所述目标脚本引擎执行所述目标功能脚本,修改各所述目标变量的变量值,完成所述应用程序中所述应用程序功能的更新。

2.根据权利要求1所述的方法,其特征在于,所述依据所述预设程序位置对应的功能脚本标识确定目标功能脚本包括:

依据所述功能脚本标识,从内存缓存中获取所述目标功能脚本。

3.根据权利要求2所述的方法,其特征在于,确定所述目标功能脚本对应的开发语言标识包括:

判断所述内存缓存中是否存在所述目标功能脚本对应的开发语言标识;

若是,则从所述内存缓存中读取所述开发语言标识;

若否,则对所述目标功能脚本的功能脚本内容进行分析,确定所述目标功能脚本对应的开发语言标识。

4.根据权利要求2所述的方法,其特征在于,在所述依据所述预设程序位置对应的功能脚本标识确定目标功能脚本及所述目标功能脚本对应的开发语言标识之前,还包括:

在监测到配置文件或数据库中与所述应用程序匹配的功能脚本的时间戳变化时,从所述配置文件或所述数据库中获取新的功能脚本,覆盖所述内存缓存中的相应功能脚本,以更新所述内存缓存中的各功能脚本。

5.根据权利要求1所述的方法,其特征在于,所述以所述应用程序中的各目标变量作为所述目标功能脚本的输入参数包括:

将各所述目标变量存储至预设字典结构,生成目标字典变量;

以所述目标字典变量作为所述目标功能脚本的输入参数。

6.根据权利要求1所述的方法,其特征在于,所述预设程序位置为所述目标功能脚本的脚本接口所在的位置,所述功能脚本标识为所述脚本接口的接口名称。

7.根据权利要求1所述的方法,其特征在于,所述依据所述开发语言标识确定所述目标功能脚本对应的目标脚本引擎包括:

依据所述开发语言标识,从预设脚本引擎平台中确定所述目标功能脚本对应的目标脚本引擎,其中,所述预设脚本引擎平台集成了各java平台的脚本引擎。

8.一种应用程序更新装置,其特征在于,包括:

目标脚本确定模块,用于在应用程序运行至预设程序位置时,依据所述预设程序位置对应的功能脚本标识确定目标功能脚本及所述目标功能脚本对应的开发语言标识,其中,所述预设程序位置为待更新的应用程序功能在所述应用程序中的位置,所述目标功能脚本用于实现所述应用程序功能;

目标脚本引擎确定模块,用于依据所述开发语言标识确定所述目标功能脚本对应的目标脚本引擎;

应用程序更新模块,用于以所述应用程序中的各目标变量作为所述目标功能脚本的输入参数,通过所述目标脚本引擎执行所述目标功能脚本,修改各所述目标变量的变量值,完成所述应用程序中所述应用程序功能的更新。

9.一种电子设备,其特征在于,所述电子设备包括:

一个或多个处理器;

存储装置,用于存储一个或多个程序,

当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-7中任一所述的应用程序更新方法。

10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-7中任一所述的应用程序更新方法。

技术总结
本发明实施例公开了一种应用程序更新方法、装置、设备和存储介质。该方法包括:在应用程序运行至预设程序位置时,依据预设程序位置对应的功能脚本标识确定目标功能脚本及目标功能脚本对应的开发语言标识,其中,预设程序位置为待更新的应用程序功能在应用程序中的位置,目标功能脚本用于实现应用程序功能;依据开发语言标识确定目标功能脚本对应的目标脚本引擎;以应用程序中的各目标变量作为目标功能脚本的输入参数,通过目标脚本引擎执行目标功能脚本,修改各目标变量的变量值,完成应用程序中应用程序功能的更新。通过上述技术方案,实现了在应用服务不中断的基础上,实时更新应用程序功能,且提高了应用程序的可维护性。

技术研发人员:方红涛;汪维;杨代兵;朱炜
受保护的技术使用者:中国建设银行股份有限公司;建信金融科技有限责任公司
技术研发日:2020.01.16
技术公布日:2020.06.05

转载请注明原文地址: https://bbs.8miu.com/read-60077.html

最新回复(0)