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

文档序号:31128656发布日期:2022-08-13 04:38阅读:54来源:国知局
应用更新方法、装置、电子设备和存储介质与流程

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


背景技术:

2.在互联网发展迅猛的当下,很多互联网公司基于移动互联网开发出很多的应用。应用在客户端的程序在安装完成后,再对其进行更新是较为困难的。
3.现有技术中,对应用进行更新,需要服务器发布新的apk(android package,安卓安装包),并通知客户端安装新的apk。客户端通过发布的apk进行应用更新,需要用户主动下载apk,增加操作成本,更新效率低。


技术实现要素:

4.本技术提供一种应用更新方法、装置、电子设备、解调系统和存储介质,以提高应用更新的效率。
5.第一方面,本技术实施例提供了一种应用更新方法,该应用更新方法包括:
6.获取服务端中任一应用的目标脚本文件,将目标脚本文件存储至客户端硬盘;
7.响应于用户触发的响应事件,判断目标脚本文件中是否存在与响应事件关联的局部目标脚本;
8.若是,则根据局部目标脚本对响应事件进行响应,以实现对应用的响应事件所关联的局部目标脚本进行更新。
9.第二方面,本技术实施例还提供了一种应用更新装置,该应用更新装置包括:
10.目标脚本文件获取模块,用于获取服务端中任一应用的目标脚本文件,将目标脚本文件存储至客户端硬盘;
11.局部目标脚本判断模块,用于响应于用户触发的响应事件,判断目标脚本文件中是否存在与响应事件关联的局部目标脚本;
12.局部目标脚本更新模块,用于若是,则根据局部目标脚本对响应事件进行响应,以实现对应用的响应事件所关联的局部目标脚本进行更新。
13.第三方面,本技术实施例还提供了电子设备,该电子设备包括:
14.一个或多个处理器;
15.存储装置,用于存储一个或多个程序;
16.当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现如本技术实施例提供的任意一种应用更新方法。
17.第四方面,本技术实施例还提供了一种包括计算机可执行指令的存储介质,计算机可执行指令在由计算机处理器执行时用于执行如本技术实施例提供的任意一种应用更新方法。
18.本技术通过从服务端获取应用的目标脚本文件,并存储在客户端硬盘中,自动获
取应用的目标脚本,不需要人工下载和重启客户端,降低操作成本。在用户触发响应事件时,判断目标脚本文件中是否存在与响应事件关联的局部目标脚本,在存在与响应事件关联的局部目标脚本时,根据局部目标脚本对响应事件进行响应,可以快速的实现应用中响应事件对应功能的更新,提高对应用中响应事件关联的局部目标脚本的更新速率。因此通过本技术的技术方案,解决了客户端通过发布的apk进行应用更新,需要用户主动下载apk,增加操作成本,更新效率低的问题,达到了降低应用更新的操作成本,提高应用更新的便捷性,提高应用更新效率的效果。
附图说明
19.图1是本技术实施例一中的一种应用更新方法的流程图;
20.图2是本技术实施例二中的一种应用更新方法的流程图;
21.图3是本技术实施例三中的一种应用更新装置的结构示意图;
22.图4是本技术实施例四中的一种电子设备的结构示意图。
具体实施方式
23.为了使本技术领域的人员更好地理解本技术方案,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分的实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本技术保护的范围。
24.需要说明的是,本技术的说明书和权利要求书及上述附图中的术语“第一”和“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本技术的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
25.实施例一
26.图1为本技术实施例一提供的一种应用更新方法的流程图,本实施例可适用于应用程序进行更新的情况,该方法可以由应用更新装置执行,该装置可以采用软件和/或硬件实现,并具体配置于客户端中,例如,手机。
27.参见图1所示的应用更新方法,应用于客户端,具体包括如下步骤:
28.s110、获取服务端中任一应用的目标脚本文件,将目标脚本文件存储至客户端硬盘。
29.目标脚本文件可以为存储在服务端中的任一应用对应的脚本文件,用于对应用进行更新。示例性的,客户端可以按照固定的时间周期,例如,一天,查询服务端是否有目标脚本文件,也可以在服务端配置目标脚本文件后,通知客户端获取目标脚本文件,将目标脚本文件存储至客户端硬盘;优选的,还可以是客户端在每次应用启动时,查询服务端是否有目标脚本文件,提高后续用户触发相应的响应事件时的响应速率,本技术对此不作具体限定。
客户端获取目标脚本文件后,可以将脚本文件从服务端加载到客户端的硬盘中,以便于客户端调用目标脚本文件。客户端硬盘为客户端中的存储设备,用于存储任一应用的目标脚本文件和其他程序。
30.在一个可选实施例中,目标脚本文件为lua脚本文件。
31.lua(一种脚本语言,专用术语)是一种小巧的脚本语言,由c语言编写,可以与c++互相调用,因此几乎可以在所有的操作系统上进行编译和运行,具有对客户端的良好控制性,灵活性更高,通用性更强。将lua脚本文件注册到各种响应事件中,例如解析得到的控件的点击事件等,可以动态的更新应用的各种功能,修复缺陷,并且对于用户来说是无感的。由于lua脚本文件从由服务端获取的,所以服务端可以对客户端的各种功能进行动态更新。
32.lua良好的轻便性、跨平台性和兼容性,可以更为灵活的控制客户端,使用lua脚本文件作为目标脚本文件,可以提高应用更新的效率。
33.s120、响应于用户触发的响应事件,判断目标脚本文件中是否存在与响应事件关联的局部目标脚本。
34.响应事件为由于用户在客户端触发的操作而需要客户端进行响应的事件,用于指示客户端对用户的操作进行响应。例如,页面间跳转。局部目标脚本为目标脚本文件中对响应事件进行响应的脚本,也即可以对客户端中用户触发的响应事件进行响应的脚本。在应用在启动后,客户端会对该应用的页面进行监控,在用户触发发生响应事件时,客户端根据局部目标脚本的存储路径,在客户端硬盘中检测是否存在该响应事件的局部目标脚本;或者,还可以是,在应用启动后,客户端将硬盘中的目标脚本文件读取到内存中,当用户触发响应事件时,在客户端内存中检测是否存在该响应事件的局部目标脚本,以提高后续的响应速度。具体的,在应用的开发过程中,会对为应用中的响应事件关联对响应事件进行响应的基础程序的路径,同时为对该响应事件进行响应的局部目标脚本预留存储路径,在用户触发响应事件后,客户端根据相应的局部目标脚本在硬盘或者内存中的存储路径,查询是否存在响应事件关联的局部目标脚本。
35.s130、若是,则根据局部目标脚本对响应事件进行响应,以实现对应用的响应事件所关联的局部目标脚本进行更新。
36.若是,表示目标脚本文件中存在与响应事件关联的局部目标脚本,此时根据局部目标脚本对响应事件进行响应。示例性的,若局部目标脚本文件存储在硬盘中,则根据局部目标脚本的存储路径,从硬盘中获取局部目标脚本,并将局部目标脚本编译成可执行文件,运行该可执行文件,对响应事件进行响应;若局部目标脚本文件存储在内存中,则从内存中读取该局部脚本文件,对响应事件进行响应。此外,若不存在相应的局部目标脚本,则根据响应事件关联的基础程序的路径,获取响应事件关联的基础程序,并运行基础程序对响应事件进行响应。根据局部目标脚本对响应事件进行响应,实现了对应用的响应事件所关联的局部目标脚本进行更新,也可以理解为对响应事件对应的功能进行了更新。
37.在一个可选实施例中,应用更新方法还包括:统计响应事件的响应次数,将响应事件的响应次数上传至服务端,以提供更新应用的参考数据。
38.在对响应事件进行响应后,还可以通过局部目标脚本对响应次数进行统计,并将统计结果上传到服务器。更新应用的参考数据可以是为应用更新提供依据的参考的数据,例如,响应事件的响应次数,用于为应用更新提供数据基础。示例性的,更新应用的参考数
据,还可以包括,响应时间、时间延迟和资源占用率等。
39.服务器收集客户端的响应事件的响应次数,可以得到用户行为数据,可以分析用户在使用应用时的行为,得到用户最频繁的操作行为,也即响应次数最多的响应事件,进而对该响应事件进行更进一步的分析,可以更加有效的对应用进行更新,提高的有效性,提高用户体验。
40.在现有技术中,为了修复已经发布的应用中的问题,或者更新应用中的功能,通常采用以补丁包或apk更新程序的方案,例如,热应用技术。但是这些方法通常不支持即时生效,必须在重启后才能生效,随着新增的补丁修复包或apk的加大,加载以及应用启动需要花费的时间增加,应用更新效率低。
41.本实施例的技术方案,通过从服务端获取应用的目标脚本文件,并存储在客户端硬盘中,自动获取应用的目标脚本,不需要人工下载和重启客户端,降低操作成本。在用户触发响应事件时,判断目标脚本文件中是否存在与响应事件关联的局部目标脚本,在存在与响应事件关联的局部目标脚本时,根据局部目标脚本对响应事件进行响应,可以快速的实现应用中响应事件对应功能的更新,提高对应用中响应事件关联的局部目标脚本的更新速率。因此通过本技术的技术方案,解决了客户端通过发布的apk进行应用更新,需要用户主动下载apk,增加操作成本,更新效率低的问题,达到了降低应用更新的操作成本,提高应用更新的便捷性,提高应用更新效率的效果。
42.实施例二
43.图2为本技术实施例二提供的一种应用更新方法的流程图方法的流程图,本实施例的技术方案在上述技术方案的基础上进一步细化。
44.进一步地,在目标脚本文件中是否存在与响应事件关联的局部目标脚本的判断结果为是的情况下,将“根据所述局部目标脚本对所述响应事件进行响应”,细化为:“将局部目标脚本从客户端硬盘加载至内存中;解析局部目标脚本,得到响应事件的目标程序;根据目标程序对响应事件进行响应”,以自动实现对应用的更新。
45.参见图2所示的一种应用更新方法,包括:
46.s210、获取服务端中任一应用的目标脚本文件,将目标脚本文件存储至客户端硬盘。
47.在一个可选实施例中,获取服务端中任一应用的目标脚本文件,包括:响应于客户端的开启指令,判断服务端中是否存在任一应用的预设版本的目标脚本文件;若是,则获取任一应用的目标脚本文件。
48.任一应用可以为客户端中安装的应用中的任意一个应用。预设版本的目标脚本文件为预先在服务端设置的目标脚本文件的更新版本,用于对任一应用进行更新。在客户端开启后,例如,手机开机后,或者应用在客户端开启后,在服务端查询是否存在客户端中任一应用的预设版本的目标脚本文件,若存在,则将任一应用的目标脚本文件的脚本文件下载到客户端中,及时实现对客户端中任一应用的更新;若不存在,则不需要进行任何操作。具体的,客户端可以判断服务端中目标脚本文件的版本编号,例如,1.1,来确定是否存在任一应用的预设版本的目标脚本文件,若客户端中的应用中的目标脚本文件的编号等于服务端中的编号,则认为服务端中不存在预设版本的目标脚本文件;若客户端中的应用中的目标脚本文件的编号小于服务端中的编号,则认为服务端中存在预设版本的目标脚本文件。
需要说明的是,不存在客户端中的应用中的目标脚本文件的编号大于服务端中的编号的情况,若出现该情况,客户端向服务端进行报错提示,服务端提示相应的维护人员进行修复。
49.通过在响应客户端的开启指令时,查询服务端是否存在任一应用预设版本的目标脚本文件,并在存在时,下载到客户端中,可以及时的实现对应用的动态更新,不需要向用户推送应用更新信息,也不需要用户主动下载,降低用户操作成本,提高更新的及时性,提升用户体验。
50.s220、响应于用户触发的响应事件,判断目标脚本文件中是否存在与响应事件关联的局部目标脚本。
51.s230、将局部目标脚本从客户端硬盘加载至内存中。
52.内存负责在客户端硬盘和中央处理器中进行数据交换,完成对响应事件进行响应。将局部目标脚本从客户端硬盘加载至内存中,以便于后续对响应事件进行快速响应。
53.s240、解析局部目标脚本,得到响应事件的目标程序。
54.解析可以为将局部目标脚本解析为可执行文件,也即目标程序。具体的,可以通过脚本引擎将脚本文件解析为可执行文件,得到目标程序。目标程序为可以在客户端的中央处理器中运行的程序,用于对响应事件进行响应。目标程序可以和程序的原生程序实现相互调用,也即原生程序可以调用目标程序,目标程序也可以调用原生程序,因此目标程序可以方便的调用客户端系统中提供的各项功能,如查看通讯录,调用摄像头,跳转应用等。
55.在一个可选实施例中,在得到响应事件的目标程序后,将目标程序存储在内存中,用户触发响应事件后,从内存中获取目标程序对响应事件进行响应。
56.运行目标程序可以对响应事件进行响应。在得到响应事件的目标程序后,将目标程序存储在内存中,可以在用户再次触发该响应事件时,中央处理器可以直接获取目标程序,并运行目标程序对响应事件进行响应。
57.在得到响应事件的目标程序后,将目标程序存储在内存中,可以及时对该响应事件进行响应,提高响应速率。同时将目标程序存储在内存中,不需要再次对局部目标脚本进行解析,节约客户端资源。
58.s250、根据目标程序对响应事件进行响应。
59.在客户端的中央处理器中运行目标程序,通过运行目标程序完成对响应事件的响应,例如,根据目标程序中的函数对响应事件中的数据进行计算,得到计算结果,根据计算结果对响应事件进行响应。又例如,获取目标程序中的接口参数,调用系统接口。
60.在一个可选实施例中,根据目标程序对响应事件进行响应,包括:获取目标程序中的目标接口参数,根据目标接口参数调用目标接口,对响应事件进行响应。
61.目标接口参数为应用中实现不同功能的系统接口的参数,用于根据目标接口参数实现对目标接口的调用,以实现应用中的各种功能。示例性的,目标接口包括系统的原生接口,例如,调用摄像头接口、调用麦克风接口和查看图片接口等,和应用间的跳转接口等。在获取目标程序中的目标接口参数后,根据目标接口参数调用目接口,通过目标接口实现相应的功能,也即对响应事件进行响应。
62.通过目标程序中的目标接口参数,调用不同的目标接口,实现不同的功能,使得应用更新更加灵活;对系统中原生接口的调用,提高应用的兼容性;服务器可以在不发布新安装包的情况下对客户端的功能进行更新,也即应用更新,提高应用更新效率。
63.本实施例的技术方案,通过将局部目标脚本加载到内存中,并通过解析得到目标程序,根据目标程序实现对响应事件的响应。目标程序可以实现对原生程序的调用,可以动态的更新应用的各项响应,修复缺陷,解决了现有技术中,由于系统底层区别,或者包合并失败,更新失败的问题,并且更新对于用户来说是无感的,不需要用户重启应用,降低应用更新中操作成本,提高应用更新的灵活性。
64.实施例三
65.图3所示为本技术实施例三提供的一种应用更新装置的结构示意图,本实施例可适用于对应用进行更新的情况,配置于客户端,该应用更新装置的具体结构如下:
66.目标脚本文件获取模块310,用于获取服务端中任一应用的目标脚本文件,将目标脚本文件存储至客户端硬盘;
67.局部目标脚本判断模块320,用于响应于用户触发的响应事件,判断目标脚本文件中是否存在与响应事件关联的局部目标脚本;
68.局部目标脚本更新模块330,用于若是,则根据局部目标脚本对响应事件进行响应,以实现对应用的响应事件所关联的局部目标脚本进行更新。
69.本实施例的技术方案,通过从服务端获取应用的目标脚本文件,并存储在客户端硬盘中,自动获取应用的目标脚本,不需要人工下载和重启客户端,降低操作成本。在用户触发响应事件时,判断目标脚本文件中是否存在与响应事件关联的局部目标脚本,在存在与响应事件关联的局部目标脚本时,根据局部目标脚本对响应事件进行响应,可以快速的实现应用中响应事件对应功能的更新,提高对应用中响应事件关联的局部目标脚本的更新速率。因此通过本技术的技术方案,解决了客户端通过发布的apk进行应用更新,需要用户主动下载apk,增加操作成本,更新效率低的问题,达到了降低应用更新的操作成本,提高应用更新的便捷性,提高应用更新效率的效果。
70.可选的,目标脚本文件获取模块310,包括:
71.目标脚本文件判断单元,用于响应于客户端的开启指令,判断服务端中是否存在任一应用的预设版本的目标脚本文件;
72.目标脚本文件获取单元,用于若是,则获取任一应用的目标脚本文件。
73.可选的,目标脚本文件为lua脚本文件。
74.可选的,局部目标脚本更新模块330,包括:
75.局部目标脚本加载单元,用于将局部目标脚本从客户端硬盘加载至内存中;
76.局部目标脚本解析单元,用于解析局部目标脚本,得到响应事件的目标程序;
77.响应事件响应单元,用于根据目标程序对响应事件进行响应。
78.可选的,响应事件响应单元,包括:
79.目标接口调用子单元,用于获取目标程序中的目标接口参数,根据目标接口参数调用目标接口,对响应事件进行响应。
80.可选的,应用更新装置,还包括:
81.响应次数上传模块,用于统计响应事件的响应次数,将响应事件的响应次数上传至服务端,以提供更新应用的参考数据。
82.本技术实施例所提供的应用更新装置可执行本技术任意实施例所提供的应用更新方法,具备执行方法相应的功能模块和有益效果。
83.实施例四
84.图4为本技术实施例四提供的一种电子设备的结构示意图,如图4所示,该电子设备包括处理器410、存储器420、输入装置430和输出装置440;电子设备中处理器410的数量可以是一个或多个,图4中以一个处理器410为例;电子设备中的处理器410、存储器420、输入装置430和输出装置440可以通过总线或其他方式连接,图4中以通过总线连接为例。
85.存储器420作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本技术实施例中的应用更新方法对应的程序指令/模块(例如,目标脚本文件获取模块310、局部目标脚本判断模块320和局部目标脚本更新模块330)。处理器410通过运行存储在存储器420中的软件程序、指令以及模块,从而执行电子设备的各种功能应用以及数据处理,即实现上述的应用更新方法。
86.存储器420可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储器420可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器420可进一步包括相对于处理器410远程设置的存储器,这些远程存储器可以通过网络连接至电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
87.输入装置430可用于接收输入的字符信息,以及产生与电子设备的用户设置以及功能控制有关的键信号输入。输出装置440可包括显示屏等显示设备。
88.实施例五
89.本技术实施例五还提供一种包含计算机可执行指令的存储介质,计算机可执行指令在由计算机处理器执行时用于执行一种应用更新方法,该方法包括:获取服务端中任一应用的目标脚本文件,将目标脚本文件存储至客户端硬盘;响应于用户触发的响应事件,判断目标脚本文件中是否存在与响应事件关联的局部目标脚本;若是,则根据局部目标脚本对响应事件进行响应,以实现对应用的响应事件所关联的局部目标脚本进行更新。
90.当然,本技术实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的方法操作,还可以执行本技术任意实施例所提供的应用更新方法中的相关操作。
91.通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本技术可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、闪存(flash)、硬盘或光盘等,包括若干指令用以使得一台电子设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例所述的方法。
92.值得注意的是,上述搜索装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本技术的保护范围。
93.注意,上述仅为本技术的较佳实施例及所运用技术原理。本领域技术人员会理解,本技术不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、
重新调整和替代而不会脱离本技术的保护范围。因此,虽然通过以上实施例对本技术进行了较为详细的说明,但是本技术不仅仅限于以上实施例,在不脱离本技术构思的情况下,还可以包括更多其他等效实施例,而本技术的范围由所附的权利要求范围决定。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1