应用程序的维护方法、装置、电子设备及存储介质与流程
未命名
07-22
阅读:136
评论:0
1.本技术涉及应用程序管理技术领域,尤其涉及一种应用程序的维护方法、装置、电子设备及存储介质。
背景技术:
2.应用程序是智能手机、平把电脑等智能设备上必不可少的软件。当应用程序需要维护时,相关技术通常采用热修复、推送小版本或者强制更新等手段。但相关技术的上述手段往往存在维护周期长、无法体现针对不同用户的应用程序进行差异化维护等缺陷。
技术实现要素:
3.本技术实施例提供一种应用程序的维护方法、装置、电子设备及存储介质,以实现主动对小范围客户端的应用程序进行维护。
4.第一方面,本技术实施例提供了一种应用程序的维护方法,该方法包括:
5.在检测到指定客户端的应用程序处于待维护状态的情况下,根据应用程序的待维护情况,确定维护指令集合;
6.根据指定客户端的标识,将维护指令集合发送给指定客户端。
7.第二方面,本技术实施例提供了一种应用程序的维护方法,该方法包括:
8.在接收到维护指令集合的情况下,根据预先制定的指令模板对维护指令集合中的内容进行编排,得到待执行的维护指令;
9.执行维护指令,并将执行维护指令的结果作为执行回执进行反馈。
10.第三方面,本技术实施例提供了一种应用程序的维护装置,该装置可以包括:
11.维护指令集合确定模块,用于在检测到指定客户端的应用程序处于待维护状态的情况下,根据应用程序的待维护情况,确定维护指令集合;
12.维护指令集合发送模块,用于根据指定客户端的标识,将维护指令集合发送给指定客户端。
13.第四方面,本技术实施例提供了一种应用程序的维护装置,该装置可以包括:
14.指令编排模块,用于在接收到维护指令集合的情况下,根据预先制定的指令模板对维护指令集合中的内容进行编排,得到待执行的维护指令;
15.结果反馈模块,用于执行维护指令,并将执行维护指令的结果作为执行回执进行反馈。
16.第五方面,本技术实施例提供了一种电子设备,包括存储器、处理器及存储在存储器上的计算机程序,所述处理器在执行所述计算机程序时实现上述任一项所述的方法。
17.第六方面,本技术实施例提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一项所述的方法。
18.与现有技术相比,本技术具有如下优点:
19.依据本技术实施例,一方面可以及时确定出指定客户端中应用程序是否处于需要
维护的状态,以满足应用程序维护的时效性的需求。另一方面,可以为小范围用户解决应用程序维护的痛点。相比于大规模的维护,可以实现维护指令集合的定向推送。即,只针对指定客户端的单独推送,不涉及其他用户。
20.上述说明仅是本技术技术方案的概述,为了能够更清楚了解本技术的技术手段,可依照说明书的内容予以实施,并且为了让本技术的上述和其他目的、特征和优点能够更明显易懂,以下特举本技术的具体实施方式。
附图说明
21.在附图中,除非另外规定,否则贯穿多个附图相同的附图标记表示相同或相似的部件或元素。这些附图不一定是按照比例绘制的。应该理解,这些附图仅描绘了根据本技术的一些实施方式,而不应将其视为是对本技术范围的限制。
22.图1为本技术提供的应用程序的维护方法的场景示意图;
23.图2为本技术一实施例的应用程序的维护方法的流程图;
24.图3是本技术另一实施例的应用程序的维护方法的流程图;
25.图4是本技术一实施例的应用程序的维护装置的结构框图;
26.图5是本技术另一实施例的应用程序的维护装置的结构框图;以及
27.图6为用来实现本技术实施例的电子设备的框图。
具体实施方式
28.在下文中,仅简单地描述了某些示例性实施例。正如本领域技术人员可认识到的那样,在不脱离本技术的构思或范围的情况下,可通过各种不同方式修改所描述的实施例。因此,附图和描述被认为本质上是示例性的,而非限制性的。
29.为便于理解本技术实施例的技术方案,以下对本技术实施例的相关技术进行说明。以下相关技术作为可选方案与本技术实施例的技术方案可以进行任意结合,其均属于本技术实施例的保护范围。
30.图1为示例性的用于实现本技术实施例的方法的一个应用场景的示意图。当前实施例的执行主体可以是客户端管理平台。该客户端管理平台的其中一个功能是对智能手机、平板电脑等客户端中的应用程序进行维护。维护可以包括故障恢复、功能变更等。功能变更又可以包括对已有功能的调整或增加新的功能等。客户端管理平台可以利用埋点技术或者日志解析技术等方式确定客户端是否处于待维护的状态。示例性地,待维护的状态可以包括由于客户端内存不足导致应用程序卡顿。或者,待维护状态可以包括使用者先后两次登录应用程序时ip地址属地的距离间隔过大等。例如,前次登录应用程序的ip地址属地为北京、当前次登录应用程序的ip地址属地为纽约,而前后两次登录时间间隔为10分钟。由此可以表示用户被盗号等需要进行维护的情况。或者,待维护状态还可以包括对应用程序添加新的功能等。在确定客户端处于待维护的状态时,可以针对待维护的状态生成对应的维护指令集合。在将维护指令集合发送时,可以只选择发送对象为待维护的客户端。由于维护指令集合的生成以及发送是基于客户端管理平台对客户端设备的检测进行的,因此可以满足维护的时效性。此外,在将维护指令集合发送时,只选择待维护的客户端,从而可以做到精准维护、个性化维护。利用上述方式与相关技术中热修复、推送小版本或者强制更新等
维护手段进行互补,可以实现对应用程序维护的优化。此外,可以通过预先在客户端进行配置,以使得客户端在接收到维护指令集合时生成触达回执进行反馈。进一步的,客户端在执行完维护指令集合中的指令后,还会生成执行回执进行反馈。由此,可以使得客户端管理平台对维护进程实时了解。
31.需要说明的是,本技术所涉及的客户端相关信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,并且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准,并提供有相应的操作入口,供用户选择授权或者拒绝。
32.本技术实施例提供了一种应用程序的维护方法,如图2所示为本技术一实施例的应用程序的维护方法的流程图,对应第一实施例,该方法可以包括:
33.步骤s201:在检测到指定客户端的应用程序处于待维护状态的情况下,根据应用程序的待维护情况,确定维护指令集合。
34.本技术第一实施例的执行主体可以是客户端管理平台。客户端管理平台可以利用埋点技术或者日志解析技术等方式确定指定客户端是否处于待维护的状态。
35.示例性的,以应用程序具有视频通话功能为示例,以下简称视频通话应用程序。如果检测到用户a在利用手机执行视频通话应用程序的视频会议功能时,出现画面卡顿、声画不同步等情况时,可以确定用户a的手机为指定客户端,运行在用户a的手机上的视频通话应用程序正处于需要维护的状态。
36.又例如,应用程序为社交类应用程序或金融类应用程序等包含个人信息的应用程序。如果检测到用户先后两次登录时ip地址属地的距离大于对应的距离阈值,且先后两次登录的时间间隔又短于对应的时间阈值,可以确定在先和在后登录的客户端为指定客户端。由于存在登录异常的风险,由此可以确定前述包含个人信息的应用程序存在登录异常,由此处于需要维护的状态。
37.再例如,应用程序具有模块化的信息显示界面,针对不同节假日或纪念日可以在问候类的显示界面设置对应的底纹或个性化文字等。例如,在生日或纪念日时可以采用红色底纹和蛋糕、鲜花等图案。个性化文字可以是“xxx(用户名)祝您生日快乐/结婚今年日快乐”等。由此,可以实现应用程序信息显示界面的调整和变动。由此也可以认为应用程序处于需要维护的状态。即,对于维护而言,可以包括对应用程序故障的处理,也可以包括新功能的增加,对已有功能的改进升级等。
38.针对不同的待维护情况,可以确定与之对应的维护指令集合。以视频通话应用程序的待维护情况为图像卡顿或音画不同步为示例,维护指令集合可以包括清除缓存指令、调整网络指令、重启指令等。以社交类应用程序或金融类应用程序的待维护情况为异常登录为示例,维护指令集合可以包括锁定应用程序各项功能的指令、强制退出登录指令等。以应用程序的待维护情况为更新显示界面为示例,维护指令集合可以包括画面更新指令、重启指令等。维护指令集合中可以只包括一个维护指令,也可以包括多个维护指令。
39.指定客户端可以是应用程序的注册用户所使用的客户端、应用程序的付费用户、vip用户或者是标记用户等所使用的客户端。由此,可以实现对不同用户的定制化维护服务。通过上述过程,可以及时发现指定客户端的应用程序是否处于需要维护的状态,一旦确
定出指定客户端中应用程序需要维护,可以及时生成维护指令集合,从而提高维护效率。
40.步骤s202:根据指定客户端的标识,将维护指令集合发送给指定客户端。
41.指定客户端的标识可以利用应用程序注册者的标识、客户端所对应的设备的标识以及维护指令集合的传输通道确定。其中,应用程序注册者的标识可以包含注册者的注册名、登录名、常用ip地址属地等信息。设备的标识可以包括用户当前使用应用程序所运行的设备的品牌、型号、序列号等信息。维护指令集合的传输通道是基于应用程序确定的。例如,在应用程序安装的过程中,会安装用于接收信息推送的软件开发工具包(software development kit,sdk),以建立信息接收通道用于信息的传输。
42.利用应用程序注册者的标识、设备的标识以及维护指令集合的传输通道确定出指定客户端的标识后,即可将维护指令集合定向发送给指定客户端。
43.通过上述过程,一方面可以及时确定出指定客户端中应用程序是否处于需要维护的状态,以满足应用程序维护的时效性的需求,例如可以在特定时间限定的场景,做一些任务的下发。此外,针对一些特殊场景,本质上只需要在客户端执行简单的操作指令即可实现应用程序的维护,本技术的上述方法可以解决上述问题而无需进行如热修复,发小版本,或者更新版本强制更新等复杂的维护过程。最后,本技术的上述方法可以为小范围用户解决应用程序维护的痛点。相比于大规模的维护,可以实现维护指令集合的定向推送。即,只针对指定客户端的单独推送,不涉及其他用户。
44.在一种实施方式中,步骤s201中涉及的根据应用程序的待维护情况,确定维护指令集合,可以包括:
45.步骤s2011:对应用程序的运行状态进行解析,确定与解析结果对应的至少一个维护指令;解析结果用于表征应用程序的待维护情况。
46.针对应用程序类型的不同,应用程序的运行状态可以是与应用程序的类型相对应。例如,针对游戏类应用程序,可以将画面是否流畅、对操作指令的响应是否及时等作为运行状态。针对视频通话应用程序,可以将画面是否卡顿、是否出现音画不同步等作为运行状态。对此,针对上述运行状态进行解析,可以初步确定可能存在内存不足的问题、网络问题等,以此表征应用程序的待维护情况。基于此,可以对应将清除缓存指令、更换网络信道指令等作为与解析结果对应的维护指令。
47.又例如,对于社交类应用程序、金融类应用程序,可以将是否存在登录异常、操作异常作为运行状态。对此,针对上述运行状态进行解析,可以确定可能存在被盗号的问题、被黑客入侵的问题等,以此表征应用程序的待维护情况。基于此,可以对应将强制退出登录指令、操作锁定指令等作为与解析结果对应的维护指令。
48.步骤s2012:对维护指令进行配置,得到维护指令集合。
49.对维护指令进行配置,可以包括配置维护指令的执行时间、执行次数等。执行时间可以包括开始执行维护指令的时间(例如xx月xx日零点执行清除缓存指令),也可以包括维护指令执行的持续时间(例如在立春节气当天执行显示画面变更指令)。执行次数可以包括只执行一次,也可以包括间隔1小时执行一次等。对维护指令进行配置,还可以包括控制维护指令执行的方式,例如,前台执行或后台执行等。在维护指令包括多个的情况下,对维护指令进行配置还可以包括各维护指令的执行次序等。在对维护指令进行配置后,即可得到维护指令集合。
50.在一种实施方式中,步骤s2011中涉及的对应用程序的运行状态进行解析,确定与解析结果对应的至少一个维护指令,可以包括:
51.步骤s20111:将解析结果与多个预置结果进行匹配。
52.预置结果可以是预先配置的,配置的依据可以根据历史经验总结出来的。例如,以视频通话类应用程序为示例,由于指定客户端的机型较为陈旧而出现的画面卡顿或音画不同步的运行状态对应的预置结果可以是内存占用过度。又例如,在解析出指定客户端的机型的发行日期距今至少3年,且出现画面卡顿或音画不同步的运行状态,可以直接将解析结果与预置结果中的内存占用过度匹配。
53.又或者,根据历史经验确定出位于xx市xx区xx街道使用xx网络运行商的宽带网络容易出现信号不稳定的情况。由此,可以将网络信号不稳定作为预置结果。基于此,在解析出指定客户端的ip地址属地属于该街道且使用该网络运营商的宽带网络时,可以直接将解析结果与预置结果中的网络信号不稳定匹配。
54.步骤s20112:将匹配成功的预置结果所对应的维护指令确定为与解析结果对应的维护指令。
55.由于预置结果通常是根据历史经验总结出来的。基于此,对于预置结果,对应会设置有行之有效的至少一个维护指令。在对应用程序的解析结果与预置结果匹配成功的情况下,随即即可连带确定出与预置结果对应的至少一个维护指令。由此,可以将匹配成功的预置结果所对应的维护指令作为与解析结果对应的维护指令。
56.通过上述过程,可以对解析结果进行预置,相应的,对于预置结果可以匹配出至少一个维护指令。由此,可以更进一步提高对应用程序维护的响应速度。
57.在一种实施方式中,步骤s2012中所涉及的对维护指令进行配置,得到维护指令集合,可以具体包括:
58.对维护指令的执行方式、维护指令对应的业务数据和维护指令的生命周期中的至少一种进行配置;维护指令的执行方式包括前台执行或后台执行。
59.维护指令的执行方式可以包括前台执行或后台执行。所谓前台执行可以是指在客户端运行维护指令的过程是在客户端的显示模块上实时显示的执行方式。所谓后台执行可以是指维护指令是在应用程序被关闭时可以继续执行维护指令的执行方式。对于执行方式是前台执行的维护指令,其优势在于可以使客户实时了解客户端正在进行应用程序的维护,从而使得用户直观的了解维护过程和维护进度。对于执行方式是后台执行的维护指令,其优势是在用户没有感知的情况下,对需要维护的应用程序进行维护。
60.维护指令对应的业务数据是与应用程序运行时相关的数据。以应用程序是购物类应用程序为示例,业务数据可以包括不同垂类的商品分类。例如酒类、电器类、书籍类等不同垂类的封面图或者不同垂类的排布方式等。以应用程序是视频通话应用程序为示例,业务数据可以包括网络链路、网络信道等。由于应用程序的部分维护需要基于业务数据。因此,对于应用程序的上述维护场景,需要在维护指令中确定对应的业务数据。
61.维护指令的生命周期可以包括维护指令生效的时刻、维护指令生效的时间段、维护指令执行的次数等。以维护指令生效的时刻为示例,可以是在未来指定时刻执行。以维护指令生效时段为示例,可以是未来的某一天执行。通过设置维护指令的生命周期,可以精准的对维护指令的执行进行部署。
62.在确定与解析结果对应的维护指令,并对维护指令进行配置后,即可得到维护指令集合。该维护指令集合即为即将要发送给指定客户端的维护指令集合。
63.在一种实施方式中,在维护指令的数量为多个的情况下,步骤s2012中所涉及的对维护指令进行配置,得到维护指令集合,还可以包括:
64.对每个维护指令的执行顺序进行配置。
65.如果在对应用程序的运行状态进行解析后,确定出与解析结果对应的维护指令有多个,则还需要进一步对维护指令的执行顺序进行配置。示例性地,对于视频通话应用程序,对应用程序的运行状态进行解析后,确定出与解析结果对应的维护指令包括清除缓存指令、重启指令。对此,可以将维护指令的执行顺序配置为先执行清除缓存指令,后执行重启指令。
66.通过上述过程,如果存在多个维护指令,则需要对多个指令的执行顺序进行配置,从而达成维护目的。
67.在一种实施方式中,在将维护指令集合发送给指定客户端之前,还可以包括以下步骤:
68.利用指定规则,对维护指令集合进行审核;指定规则用于指示维护指令集合待发送的对象、维护指令集合中维护指令的正确性、对维护指令进行配置的合理性中的至少一种。
69.在生成维护指令,以及对维护指令进行配置从而生成维护指令集合之后,为了增加客户端的安全性和稳定性,还可以对维护指令进行审核。只有审核通过的维护指令集合才符合下发标准。
70.审核可以基于指定规则进行,而指定规则可以用于指示维护指令集合待发送的对象。例如,指定客户端分别是用户a的手机和用户b的平板电脑(pad)。因此,在理论上维护指令集合的发送对象仅包括用户a的手机和用户b的pad。如果审核过程中发现待发送对象还包括其他客户端、遗漏了用户a的手机或遗漏了用户b的pad,则可以确定维护指令集合待发送的对象存在错误,审核无法通过。
71.此外,指定规则还可以用于指示维护指令集合中维护指令的正确性。例如,以视频通话应用程序为示例,对于客户端在使用视频通话应用程序时出现网络卡顿的情况,对应的维护指令可以包括清除缓存指令、关闭与其不兼容的其他应用程序指令、查询并调整网络限流指令、恢复网络设置指令等多个。维护指令的选择需要与维护指令的相关信息、客户端所处的环境,使用者对客户端的使用等多种信息确定。如果在确定维护指令时是随机确定的,或者是并未结合全部信息确定的,便容易会导致维护指令选择的不正确。因此,可以根据维护指令的相关信息、客户端所处的环境、使用者对客户端的使用等多种信息相结合,对指示维护指令集合中维护指令的正确性进行审核。维护指令的相关信息可以是维护指令的说明信息、标注信息等。上述说明信息、标注信息可以是在维护指令编码时写入的,用于对维护指令的功能、使用场景等进行介绍的信息。
72.此外,指定规则可以用于指示对维护指令进行配置的合理性。例如,某些维护指令只适用于在后台执行,但配置为前台执行。由此,可以确定维护指令集合存在配置合理性的错误。又例如,某两个维护指令之间存在着较为固定的先后执行顺序,如果检测到执行顺序与固定的先后执行顺序不符,也可以确定维护指令集合存在配置合理性的错误。
73.上述审核可以是自动化审核模式也可以是人工审核模式,还可以是自动化审核和人工审核相结合的模式。通过上述过程,可以增加客户端在对维护指令集合进行执行时的安全性和稳定性。
74.在一种实施方式中,步骤s202中所涉及的指定客户端的标识的确定方式,可以包括:
75.步骤s2021:确定应用程序的指令推送通道。
76.传输推送通道是基于应用程序确定的。例如,在应用程序安装在客户端的过程中,会安装用于接收信息推送的sdk以建立信息接收通道用于信息的接收。传输通道可以是应用程序厂商的传输通道,也可以是第三方厂商的传输通道。
77.步骤s2022:确定指定客户端中的应用程序的相关信息;相关信息用于表征指定客户端的身份。
78.应用程序的相关信息可以包括注册用户的信息以及注册时系统分配给用户的信息等,例如,注册用户的信息可以表征注册用户的身份以及等级等信息。注册用户的身份信息用于与其他用户区分。注册用户的等级信息可以用于表示用户的重要程度。例如,等级可以包括vip用户、普通注册用户等。注册时系统分配给用户的信息可以表示用户注册时的序号,例如第一个用户注册时,系统分配给第一个用户的信息是a1。第二个用户注册时,系统分配给第二个用户的信息是a2。
79.步骤s2023:利用相关信息和指令推送通道,确定指定客户端的标识。
80.根据应用程序的相关信息可以确定用户的身份、等级等。根据用户的身份、等级等信息可以确定该用户是否为指定用户。一旦确定用户是指定用户,那么该用户当前所使用的设备即可作为指定客户端。该指定客户端的序列号等信息可以从身份表征维度反应指定客户端的标识。指令推送通道作为指定客户端的信息接收通道,可以从可用通信渠道的维度反应指定客户端的标识。基于此,依据指定客户端的序列号等信息确定指定客户端的唯一性,依据指令推送通道确定指定客户端的通信渠道的可用性,从而可以将维护指令集合发送给指定的客户端。
81.通过上述过程,可以确定出需要主动进行应用程序维护的小范围用户。
82.在一种实施方式中,还可以包括以下步骤:
83.根据指定客户端的回执,确定维护指令集合的效果;回执是指定客户端基于回执指令生成的,回执指令是预先发送给指定客户端的。
84.在应用程序的安装包中可以附加有回执指令,回执指令的用途可以包括用于控制客户端在接收到维护指令集合的同时生成触达回执。触达回执用于表征客户端已接收到维护指令集合。在接收到触达回执的情况下,即可确定客户端已成功接收到维护指令集合。
85.进一步的,客户端在生成触达指令的同时,还会启动维护指令集合结果收集指令。维护指令集合结果收集指令用于控制客户端进行执行结果的收集。即,在维护指令集合执行完毕后会收集执行结果。简单而言,执行结果可以包括执行成功或执行不成功。针对执行结果是成功的情况,可以直接将执行结果成功的信息作为回执发送给客户端管理平台,以使客户端管理平台确定维护指令集合的效果为执行成功。反之,针对执行结果是不成功的情况,除了生成执行不成功的结果外,还需将执行维护指令集合过程中的日志信息作为回执,发送给执行结果客户端管理平台,以使得客户端管理平台进行分析。
86.客户端管理平台对于指定客户端的回执,可以进行实时显示,从而可以实现维护过程的可视化。
87.本技术实施例提供了一种应用程序的维护方法,如图3所示为本技术一实施例的应用程序的维护方法的流程图,对应第二实施例,该方法可以包括:
88.步骤s301:在接收到维护指令集合的情况下,根据预先制定的指令模板对维护指令集合中的内容进行编排,得到待执行的维护指令。
89.本技术第二实施例的执行主体可以是客户端。具体而言,客户端可以是指定客户端,例如,可以是指定用户所使用的客户端。所谓指定用户可以是vip用户、标记用户等。在第二实施例中,客户端对于维护指令集合的接收可以是被动的。即,客户端并未执行维护指令集合的索取动作,而是被动接收由客户端管理平台发来的维护指令集合。客户端管理平台可以利用埋点或者解析设备日志等方式确定客户端是否处于待维护的状态。在确定出处于待维护的状态的情况下,针对不同的待维护情况,可以确定与之对应的维护指令集合。
90.指令模板为结构化模板,用于将从维护指令集合解析出的内容进行编排,以得到客户端可以识别并进行执行的维护指令。例如,根据执行顺序,可以将解析出的多个维护指令进行排序。根据执行时间,可以确定每个维护指令的生命周期。在根据指令模板对维护指令集合中的内容进行编排后,可以将维护指令分发至对应的指令执行引擎。
91.步骤s302:执行维护指令,并将执行维护指令的结果作为执行回执进行反馈。
92.在得到待执行的维护指令后,随即可执行维护指令。在维护指令全部执行完毕后,会生成执行维护指令后的结果作为执行回执。执行维护指令后的结果可以包括维护成功或者未维护成功两种。如果是维护成功的结果,可以直接将维护成功的信息作为执行回执。如果是维护不成功的结果,可以将未维护成功的信息以及未维护成功的原因作为执行回执。未维护成功的原因可以通过运行诊断指令生成,运行诊断指令可以包括自检网络,修复网络重连接等。
93.通过上述过程,客户端可以根据接收到的维护指令集合进行维护操作,上述维护过程与传统的热修复,发小版本,或者更新版本强制更新等复杂的维护过程行程互补,有效降低了用户潜在的投诉风险。
94.在一种实施方式中,在执行维护指令之前,还可以包括:
95.对维护指令进行校验,校验包括维护指令与维护指令的执行系统的兼容校验和维护指令的权限校验、维护指令的执行时间校验中的至少一种。
96.在利用指令模板对维护指令集合中的内容进行编排,得到待执行的维护指令后,还可以对维护指令进行校验。校验可以包括兼容校验和权限校验中的至少一种。
97.兼容校验可以是检测维护指令与维护指令的执行系统的版本是否匹配、平台是否匹配等。所谓维护指令的执行系统的版本可以是安装应用程序的手机或者pad的操作系统的版本。例如,有些指令的执行方式只支持后台执行,但有些指令的执行方式可以支持前台执行也可以支持后台执行。而对于应用程序的执行方式,执行系统的版本差异也可能会导致应用程序能否正常执行。例如,对于1.0版本的执行系统只支持后台执行,而1.1版本的执行系统可以同时支持前台执行和后台执行。由此,在1.0版本下,若执行方式为后台执行,则会发生校验无法通过的情况。基于此,利用维护指令与维护指令的执行系统的兼容校验可以使得应用程序正常运行。所谓平台可以包括维护指令的执行系统的操作平台,检测维护
指令是否与维护指令的执行系统的操作平台兼容。
98.权限校验可以是对客户端的标识、在客户端登录应用程序的注册用户的信息等进行校验。例如,客户端管理平台发送的维护指令集合的发送对象是指定客户端。权限校验可以包括利用当前客户端的标识以及注册用户的信息与指定客户端进行匹配,从而确定是否具有对维护指令集合的访问权限。
99.维护指令的执行时间校验可以是校验维护指令的执行时长、执行次数等是否正确。例如,对于生日当天出现的维护指令,执行时间校验可以是只限生日当天执行。如果出现连续两天执行,便可确定校验失败。
100.通过上述过程,可以提高维护指令执行的稳定性和正确性。
101.在一种实施方式中,在接收到维护指令集合的情况下,还可以包括:
102.生成触达回执进行反馈,触达回执用于表征已接收到到维护指令集合。
103.在应用程序的安装包中可以附加有回执指令的安装程序,由此,在客户端安装应用程序后,即可表示客户端已成功获取到回执指令。回执指令的用途可以包括使客户端在接收到维护指令集合的同时生成触达回执。触达回执用于表明客户端已接收到维护指令集合。
104.与本技术实施例提供的方法的应用场景以及方法相对应地,本技术实施例还提供一种应用程序的维护装置。如图4所示为本技术一实施例的应用程序的维护装置的结构框图,该应用程序的维护装置可以包括:
105.维护指令集合确定模块401,用于在检测到指定客户端的应用程序处于待维护状态的情况下,根据应用程序的待维护情况,确定维护指令集合;
106.维护指令集合发送模块402,用于根据指定客户端的标识,将维护指令集合发送给指定客户端。
107.在一种实施方式中,维护指令集合确定模块401,可以包括:
108.运行状态解析子模块,用于对应用程序的运行状态进行解析,确定与解析结果对应的至少一个维护指令;解析结果用于表征应用程序的待维护情况;
109.配置子模块,用于对维护指令进行配置,得到维护指令集合。
110.在一种实施方式中,运行状态解析子模块,可以包括:
111.匹配单元,用于将解析结果与多个预置结果进行匹配;
112.维护指令确定单元,用于将匹配成功的预置结果所对应的维护指令确定为与解析结果对应的维护指令。
113.在一种实施方式中,配置子模块,可以具体用于:
114.对维护指令的执行方式、维护指令对应的业务数据和维护指令的生命周期中的至少一种进行配置;维护指令的执行方式包括前台执行或后台执行。
115.在一种实施方式中,在维护指令的数量为多个的情况下,配置子模块,还可以具体用于:
116.对每个维护指令的执行顺序进行配置。
117.在一种实施方式中,还包括审核模块,审核模块具体可以用于:
118.在将维护指令集合发送给指定客户端之前,利用指定规则,对维护指令集合进行审核;指定规则用于指示维护指令集合待发送的对象、维护指令集合中维护指令的正确性、
对维护指令进行配置的合理性中的至少一种。
119.在一种实施方式中,维护指令集合确定模块,可以包括:
120.指令推送通道确定模块,用于确定应用程序的指令推送通道;
121.注册用户的信息确定模块,用于确定指定客户端中的应用程序的相关信息;
122.客户端的标识确定模块,用于利用相关信息和指令推送通道,确定指定客户端的标识。
123.在一种实施方式中,还包括效果确定模块,效果确定模块具体可以用于:
124.根据指定客户端的回执,确定维护指令集合的效果;回执是指定客户端基于回执指令生成的,回执指令是预先发送给指定客户端的。
125.与本技术实施例提供的方法的应用场景以及方法相对应地,本技术实施例还提供一种应用程序的维护装置。如图5所示为本技术一实施例的应用程序的维护装置的结构框图,可以包括:
126.指令编排模块501,用于在接收到维护指令集合的情况下,根据预先制定的指令模板对维护指令集合中的内容进行编排,得到待执行的维护指令;
127.结果反馈模块502,用于执行维护指令,并将执行维护指令的结果作为执行回执进行反馈。
128.在一种实施方式中,还可以包括校验模块,校验具体可以用于:
129.在执行维护指令之前,对维护指令进行校验,校验包括维护指令与维护指令的执行系统的兼容校验和维护指令的权限校验、维护指令的执行时间校验中的至少一种。
130.在一种实施方式中,在接收到维护指令集合的情况下,还可以包括触达回执反馈模块,触达回执反馈模块具体可以用于:
131.生成触达回执进行反馈,触达回执用于表征已接收到维护指令集合。
132.本技术实施例各装置中的各模块的功能可以参见上述方法中的对应描述,并具备相应的有益效果,在此不再赘述。
133.图6为用来实现本技术实施例的电子设备的框图。如图6所示,该电子设备包括:存储器610和处理器620,存储器610内存储有可在处理器620上运行的计算机程序。处理器620执行该计算机程序时实现上述实施例中的方法。存储器610和处理器620的数量可以为一个或多个。
134.该电子设备还包括:
135.通信接口630,用于与外界设备进行通信,进行数据交互传输。
136.如果存储器610、处理器620和通信接口630独立实现,则存储器610、处理器620和通信接口630可以通过总线相互连接并完成相互间的通信。该总线可以是工业标准体系结构(industry standard architecture,isa)总线、外部设备互连(peripheral component interconnect,pci)总线或扩展工业标准体系结构(extended industry standardarchitecture,eisa)总线等。该总线可以分为地址总线、数据总线、控制总线等。为便于表示,图6中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
137.可选的,在具体实现上,如果存储器610、处理器620及通信接口630集成在一块芯片上,则存储器610、处理器620及通信接口630可以通过内部接口完成相互间的通信。
138.本技术实施例提供了一种计算机可读存储介质,其存储有计算机程序,该程序被
处理器执行时实现本技术实施例中提供的方法。
139.本技术实施例还提供了一种芯片,该芯片包括处理器,用于从存储器中调用并运行存储器中存储的指令,使得安装有芯片的通信设备执行本技术实施例提供的方法。
140.本技术实施例还提供了一种芯片,包括:输入接口、输出接口、处理器和存储器,输入接口、输出接口、处理器以及存储器之间通过内部连接通路相连,处理器用于执行存储器中的代码,当代码被执行时,处理器用于执行申请实施例提供的方法。
141.应理解的是,上述处理器可以是中央处理器(central processing unit,cpu),还可以是其他通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者是任何常规的处理器等。值得说明的是,处理器可以是支持进阶精简指令集机器(advanced risc machines,arm)架构的处理器。
142.进一步地,可选的,上述存储器可以包括只读存储器和随机访问存储器。该存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以包括只读存储器(read-only memory,rom)、可编程只读存储器(programmable rom,prom)、可擦除可编程只读存储器(erasable prom,eprom)、电可擦除可编程只读存储器(electrically eprom,eeprom)或闪存。易失性存储器可以包括随机访问存储器(randomaccess memory,ram),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的ram均可用。例如,静态随机访问存储器(static ram,sram)、动态随机访问存储器(dynamic randomaccess memory,dram)、同步动态随机访问存储器(synchronous dram,sdram)、双倍数据速率同步动态随机访问存储器(double data rate sdram,ddr sdram)、增强型同步动态随机访问存储器(enhanced sdram,esdram)、同步链接动态随机访问存储器(sync link dram,sldram)和直接内存总线随机访问存储器(direct rambus ram,dr ram)。
143.在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生依照本技术的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输。
144.在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包括于本技术的至少一个实施例或示例中。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
145.此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或隐含地包括至少一个该特征。在本技术的描述中,“多个”的含义是两个或两个以上,除非另有
明确具体的限定。
146.流程图中描述的或在此以其他方式描述的任何过程或方法可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分。并且本技术的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能。
147.在流程图中描述的或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。
148.应理解的是,本技术的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。上述实施例方法的全部或部分步骤是可以通过程序来指令相关的硬件完成,该程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
149.此外,在本技术各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。上述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读存储介质中。该存储介质可以是只读存储器,磁盘或光盘等。
150.以上所述,仅为本技术的示例性实施方式,但本技术的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术记载的技术范围内,可轻易想到其各种变化或替换,这些都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应以权利要求的保护范围为准。
技术特征:
1.一种应用程序的维护方法,其特征在于,包括:在检测到指定客户端的应用程序处于待维护状态的情况下,根据所述应用程序的待维护情况,确定维护指令集合;根据所述指定客户端的标识,将所述维护指令集合发送给所述指定客户端。2.根据权利要求1所述的方法,其特征在于,所述根据所述应用程序的待维护情况,确定维护指令集合,包括:对所述应用程序的运行状态进行解析,确定与解析结果对应的至少一个维护指令;所述解析结果用于表征所述应用程序的待维护情况;对所述维护指令进行配置,得到所述维护指令集合。3.根据权利要求2所述的方法,其特征在于,所述对所述应用程序的运行状态进行解析,确定与解析结果对应的至少一个维护指令,包括:将所述解析结果与多个预置结果进行匹配;将匹配成功的预置结果所对应的维护指令确定为所述与解析结果对应的维护指令。4.根据权利要求2或3所述的方法,其特征在于,所述对所述维护指令进行配置,得到所述维护指令集合,包括:对所述维护指令的执行方式、所述维护指令对应的业务数据和所述维护指令的生命周期中的至少一种进行配置;所述维护指令的执行方式包括前台执行或后台执行。5.根据权利要求4所述的方法,其特征在于,在所述维护指令的数量为多个的情况下,所述对所述维护指令进行配置,得到所述维护指令集合,还包括:对每个所述维护指令的执行顺序进行配置。6.根据权利要求2所述的方法,其特征在于,在所述将所述维护指令集合发送给所述指定客户端之前,还包括:利用指定规则,对所述维护指令集合进行审核;所述指定规则用于指示所述维护指令集合待发送的对象、所述维护指令集合中维护指令的正确性、对所述维护指令进行配置的合理性中的至少一种。7.根据权利要求1所述的方法,其特征在于,所述指定客户端的标识的确定方式,包括:确定所述应用程序的指令推送通道;确定所述指定客户端中的所述应用程序的相关信息;所述相关信息用于表征所述指定客户端的身份;利用所述相关信息和所述指令推送通道,确定所述指定客户端的标识。8.根据权利要求1所述的方法,其特征在于,还包括:根据所述指定客户端的回执,确定所述维护指令集合的效果;所述回执是所述指定客户端基于回执指令生成的,所述回执指令是预先发送给所述指定客户端的。9.一种应用程序的维护方法,其特征在于,包括:在接收到维护指令集合的情况下,根据预先制定的指令模板对所述维护指令集合中的内容进行编排,得到待执行的维护指令;执行所述维护指令,并将执行所述维护指令的结果作为执行回执进行反馈。10.根据权利要求9所述的方法,其特征在于,在所述执行所述维护指令之前,还包括:对所述维护指令进行校验,所述校验包括所述维护指令与所述维护指令的执行系统的
兼容校验、所述维护指令的权限校验、所述维护指令的执行时间校验中的至少一种。11.根据权利要求9所述的方法,其特征在于,在接收到维护指令集合的情况下,还包括:生成触达回执进行反馈,所述触达回执用于表征已接收到所述维护指令集合。12.一种应用程序的维护装置,其特征在于,包括:维护指令集合确定模块,用于在检测到指定客户端的应用程序处于需要维护的状态,根据所述应用程序的待维护情况,确定维护指令集合;维护指令集合发送模块,用于根据所述指定客户端的标识,将所述维护指令集合发送给所述指定客户端。13.一种应用程序的维护装置,其特征在于,包括:指令编排模块,用于在接收到维护指令集合的情况下,根据预先制定的指令模板对所述维护指令集合中的内容进行编排,得到待执行的维护指令;结果反馈模块,用于执行所述维护指令,并将执行所述维护指令的结果作为执行回执进行反馈。14.一种电子设备,包括存储器、处理器及存储在存储器上的计算机程序,所述处理器在执行所述计算机程序时实现权利要求1-11中任一项所述的方法。15.一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-11中任一项所述的方法。
技术总结
本申请提供了一种应用程序的维护方法、装置、电子设备及存储介质,其中,方法包括:在检测到指定客户端的应用程序处于待维护的情况下,根据应用程序的待维护情况,确定维护指令集合;根据指定客户端的标识,将维护指令集合发送给指定客户端依据本申请实施例,一方面可以及时确定出指定客户端中应用程序是否处于需要维护的状态,以满足应用程序的时效性的需求。另一方面,可以为小范围用户解决应用程序维护的痛点。维护的痛点。维护的痛点。
技术研发人员:毛正卫 王友葆 覃啟东 孙士伍 代巨鹏 张韶伟 刘晓 秦凯
受保护的技术使用者:阿里云计算有限公司
技术研发日:2023.04.14
技术公布日:2023/7/20
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
