一种应用程序升级方法及装置制造方法及图纸

技术编号:22594345 阅读:20 留言:0更新日期:2019-11-20 10:54
本申请涉及计算机软件技术领域,提供一种应用程序升级方法及装置。其中,应用程序升级方法包括:从服务器获取升级包,升级包中包括升级文件以及本次升级的规则文件,本次升级的规则文件中包括升级文件的描述信息以及本次升级后需要保活的目标应用程序;根据升级文件的描述信息安装升级文件;运行目标应用程序,并监测目标应用程序的存活状态。一方面,该方法通过监测到的存活状态能够及时发现目标应用程序出现的异常状况。另一方面,该方法在升级完成后可以立即对目标应用程序进行保活,执行方式简单高效,拓展了升级操作的功能。此外,该方法只需要对规则文件进行适当配置就可以实现应用升级,升级包制作也很简单。

An upgrade method and device of application program

The application relates to the technical field of computer software, and provides an application program upgrading method and device. Among them, the application upgrade method includes: obtain the upgrade package from the server, the upgrade package includes the upgrade file and the rule file of this upgrade, the rule file of this upgrade includes the description information of the upgrade file and the target application to be saved after this upgrade; install the upgrade file according to the description information of the upgrade file; run the target application and monitor The survival state of the target application. On the one hand, the method can detect the abnormal condition of the target application in time by monitoring the survival state. On the other hand, this method can save the target application immediately after the upgrade is completed, and the execution mode is simple and efficient, which expands the function of upgrade operation. In addition, the method only needs to configure the rule file properly to realize the application upgrade, and the upgrade package is also very simple.

【技术实现步骤摘要】
一种应用程序升级方法及装置
本专利技术涉及计算机软件
,具体而言,涉及一种应用程序升级方法及装置。
技术介绍
根据具体的业务需求,操作系统中安装的一些应用程序需要长时间运行,目前传统的升级工具虽然能够完成应用程序的升级,但并不关心升级后这些应用程序的运行状况如何,从而一旦某些应用程序出现运行异常,可能导致设备瘫痪等严重问题。
技术实现思路
本申请实施例的目的在于提供一种应用程序升级方法及装置,通过在升级包中的规则文件中指定升级后需要保活的目标应用程序,使得在升级完成后可以对目标应用程序的存活状态进行监测,以便及时发现目标应用运行过程中的异常状况,从而可以改善上述技术问题。为实现上述目的,本申请提供如下技术方案:第一方面,本申请实施例提供一种应用程序升级方法,应用于一电子设备,所述方法包括:从服务器获取升级包,所述升级包中包括升级文件以及本次升级的规则文件,其中,本次升级的规则文件中包括所述升级文件的描述信息以及本次升级后需要保活的目标应用程序;根据所述升级文件的描述信息安装所述升级文件;运行所述目标应用程序,并监测所述目标应用程序的存活状态。在上述方法中,从服务器获取的升级包中除了包括升级文件外,还包括本次升级的规则文件,本次升级的规则文件中既包括升级文件的描述信息,又指定了本次升级后需要保活的目标应用程序,其中,升级文件的描述信息用于升级文件的安装,而目标应用程序则在升级包安装完成后被启动运行,并进行存活状态的监测。从而,一旦目标应用程序在运行过程中出现了导致其不再存活的异常状况,监测者能够通过判断其存活状态及时发现这些异常状况,并可以采取相应的处理措施,避免出现设备瘫痪等严重问题,维持设备的稳定运行。其中,应用程序存活表明其正常运行,应用程序不再存活表明其未正常运行:例如异常终止、陷入死循环、僵尸进程(应用程序不再运行但资源未释放)等。同时,上述方法在升级完成后可以立即根据本次升级的规则文件的内容对目标应用程序进行保活,没有其他中间环节,执行方式简单高效,还拓展了升级操作的功能。此外,上述方法在升级时只依赖升级包中的规则文件,从而,只需要对规则文件进行适当地配置就可以轻松实现应用升级,其升级包制作也非常简单,不像一些现有技术中的升级过程需要单独建立脚本文件,升级包制作比较复杂。在第一方面的一些实现方式中,所述描述信息包括所述升级文件的版本信息以及安装目录信息,所述根据所述升级文件的描述信息安装所述升级文件,包括:将本次升级的规则文件中的版本信息与所述电子设备本地保存的上次升级的规则文件中的版本信息进行比较;若两个版本信息不同,则将所述升级文件安装至本次升级的规则文件中的安装目录信息所指定的目录下。通过对比版本信息,就能够快速确定哪些升级文件确实需要安装并将需要安装的升级文件安装到本次升级的规则文件中的安装目录信息所指定的目录下,这一安装方式简单高效。在第一方面的一些实现方式中,所述描述信息还包括在所述升级文件安装前要执行的操作信息和/或在所述升级文件安装后要执行的操作信息。升级文件安装前要执行的操作,例如创建安装目录;升级文件安装后要执行的操作,例如使安装的某个配置文件生效。在描述信息中包含这两项信息或者其中之一可以使得安装过程更具灵活性,满足实际的安装需求。在第一方面的一些实现方式中,所述方法还包括:在所述电子设备启动时,根据所述电子设备本地保存的最近一次升级的规则文件确定需要保活的目标应用程序;运行所述目标应用程序,并监测所述目标应用程序的存活状态。除了在升级完成后需要对目标应用程序进行保活,若电子设备在运行过程中进行了重新启动,启动后也要对目标应用程序进行保活,确保目标应用程序在电子设备工作期间始终运行并处于受监测的状态。在第一方面的一些实现方式中,所述升级文件包括:应用程序的程序文件和/或应用程序依赖的文件。应用程序的程序文件可以是一些可执行的文件,例如代码编译产生的文件;应用程序依赖的文件可以是一些不可执行的,但会被可执行文件所使用的文件,例如资源文件、配置文件等。在第一方面的一些实现方式中,所述目标应用程序的程序文件的描述信息和其他升级文件的描述信息分别设置在本次升级的规则文件中不同的段落。将目标应用程序的程序文件的描述信息单独放置在规则文件中的一个段落,方便升级结束后查找目标应用程序,以便将其启动并监测其存活状态。在第一方面的一些实现方式中,所述监测所述目标应用程序的存活状态,包括:接收所述目标应用程序定期发送的心跳信息,并记录所述心跳信息的接收时间;定期扫描纪录的接收时间,并在判断所述接收时间距离当前时间的间隔未超过预设时长时,确定所述应用程序仍然存活,以及在判断所述接收时间距离当前时间的间隔超过预设时长时,确定所述应用程序不再存活。正常情况下,目标应用程序定期发送的心跳信息,这个时间间隔通常比预设时长短很多,因此记录的接收时间会很快更新,如果某个目标应用程序对应的接收时间长时间未更新(超过了预设时长),表明该目标应用程序的运行已经出现异常,无法再按期发送心跳信息,进而可以采取相应的处理措施。在接收心跳信息时,若有多个目标应用程序,可以通过设置ID对其进行区分。此外,采用心跳的方式进行保活,相较于一些采用检查进程控制符(ProcessIdentifier,PID)的方式,对于目标应用程序陷入循环或者成为僵尸进程的情况也能够及时发现,对于目标应用程序的监测更加精确。在第一方面的一些实现方式中,所述心跳信息通过用户数据报协议(UserDatagramProtocol,UDP)报文的方式发送。采用UDP比采用传输控制协议(TransmissionControlProtocol,TCP)的实现方式更简单、效率更高,因为发送心跳信息的目的只是告知对方自身仍然存活,并且心跳信息会定期不断地发送,对信息传递的可靠性要求不高。此外,UDP作为一种广泛使用的协议,相较于其他一些进程间的通信方式也更加通用。在第一方面的一些实现方式中,所述从服务器获取升级包,包括:接收所述服务器发送的升级指令,所述升级指令中携带有升级包的地址;根据所述地址从所述服务器上拉取所述升级包。用户可以访问服务器(例如,服务器提供的页面)做出升级操作,服务器响应用户做出的升级操作生成升级指令并下发给电子设备,由电子设备执行升级,用户不需要自己输入指令升级,升级过程对普通用户友好。在第一方面的一些实现方式中,所述升级指令中还携带有校验信息,在所述从服务器获取升级包之后,以及在所述根据所述升级文件的描述信息安装所述升级文件之前,所述方法还包括:利用所述校验信息校验所述升级包中的升级文件的完整性。升级包在传输过程中可能发生损坏等问题,在升级前先利用校验信息校验升级包中的升级文件的完整性,有利于避免升级过程失败。一旦校验未通过,则可以采取重新下载升级包等措施。第二方面,本申请实施例提供一种应用程序升级方法,应用于一电子设备,所述电子设备上运行有升级保活服务,本文档来自技高网...

【技术保护点】
1.一种应用程序升级方法,其特征在于,应用于一电子设备,所述方法包括:/n从服务器获取升级包,所述升级包中包括升级文件以及本次升级的规则文件,其中,本次升级的规则文件中包括所述升级文件的描述信息以及本次升级后需要保活的目标应用程序;/n根据所述升级文件的描述信息安装所述升级文件;/n运行所述目标应用程序,并监测所述目标应用程序的存活状态。/n

【技术特征摘要】
1.一种应用程序升级方法,其特征在于,应用于一电子设备,所述方法包括:
从服务器获取升级包,所述升级包中包括升级文件以及本次升级的规则文件,其中,本次升级的规则文件中包括所述升级文件的描述信息以及本次升级后需要保活的目标应用程序;
根据所述升级文件的描述信息安装所述升级文件;
运行所述目标应用程序,并监测所述目标应用程序的存活状态。


2.根据权利要求1所述的应用程序升级方法,其特征在于,所述描述信息包括所述升级文件的版本信息以及安装目录信息,所述根据所述升级文件的描述信息安装所述升级文件,包括:
将本次升级的规则文件中的版本信息与所述电子设备本地保存的上次升级的规则文件中的版本信息进行比较;
若两个版本信息不同,则将所述升级文件安装至本次升级的规则文件中的安装目录信息所指定的目录下。


3.根据权利要求2所述的应用程序升级方法,其特征在于,所述描述信息还包括在所述升级文件安装前要执行的操作信息和/或在所述升级文件安装后要执行的操作信息。


4.根据权利要求1所述的升级方法,其特征在于,所述方法还包括:
在所述电子设备启动时,根据所述电子设备本地保存的最近一次升级的规则文件确定需要保活的目标应用程序;
运行所述目标应用程序,并监测所述目标应用程序的存活状态。


5.根据权利要求1所述的应用程序升级方法,其特征在于,所述升级文件包括:应用程序的程序文件和/或应用程序依赖的文件。


6.根据权利要求5所述应用程序升级方法,其特征在于,所述目标应用程序的程序文件的描述信息和其他升级文件的描述信息分别...

【专利技术属性】
技术研发人员:王坤明
申请(专利权)人:北京元安物联技术有限公司
类型:发明
国别省市:北京;11

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

1