一种应用安装方法及装置与流程

文档序号:15557439发布日期:2018-09-29 01:27阅读:152来源:国知局

本发明涉及软件技术领域,特别是涉及一种应用安装方法及装置。



背景技术:

随着计算机技术不断发展,大量应用软件被开发和使用,使得终端功能得到极大丰富。不同应用之间存在兼容问题,下载的应用添加至操作系统默认的系统应用库后,如果新添加的应用与系统应用库中的其他应用不兼容,则新添加的应用无法运行,同时也影响其他应用运行。

为防止应用不兼容问题的发生,通常会在终端本地创建一个或多个相对独立的虚拟环境,由于虚拟环境中安装的应用是独立运行的,因此避免了应用不兼容问题的发生。

目前,创建虚拟环境的主要技术是应用容器引擎(docker)技术,docker技术建立一个完全独立的虚拟环境即docker容器,docker容器配置有独立的操作系统,使用独立的操作系统控制应用下载并安装至docker容器中。

独立的操作系统会下载应用的源代码和安装命令等安装信息,安装命令通常有多条,在该操作系统安装应用至docker容器中的过程中,若某一条安装命令在执行过程中出现问题,则该操作系统需要重新执行应用的所有安装命令,从而导致应用安装耗时较长,应用安装效率较低。另外,建立独立的操作系统的过程非常复杂,增加了软件开发的难度和成本。



技术实现要素:

本发明提供一种应用安装方法及装置,以解决现有技术方案中若某一条安装命令在执行过程中出现问题,则该操作系统需要重新执行应用的所有安装命令,从而导致应用安装耗时较长,应用安装效率较低的问题。

为了解决上述问题,本发明公开了一种应用安装方法,包括:

接收应用安装请求;

触发运行脚本,获得所选应用的安装信息及所述所选应用对应的目标虚拟环境;

按照与所述安装信息及目标虚拟环境对应的编译规则和安装规则对所述所选应用的安装信息进行处理,使得所述所选应用安装在所述目标虚拟环境中。

优选地,所述的触发运行脚本,获得所选应用的安装信息及所述所选应用对应的目标虚拟环境的步骤包括:

触发运行所述脚本,通过网络访问下载所述所选应用的安装信息。

优选地,所述的触发运行所述脚本,通过网络访问下载所述所选应用的安装信息的步骤包括:

触发运行所述脚本,输出配置界面;

接收用户在所述配置界面输入的所述所选应用的查找信息及所述所选应用对应的目标虚拟环境,所述查找信息包括标识信息和下载链接中的至少一种;

根据所述所选应用的查找信息,通过网络访问下载所述所选应用的安装信息。

优选地,所述的触发运行所述脚本,通过网络访问下载所述所选应用的安装信息的步骤包括:

根据应用与下载链接的对应关系,确定所述所选应用的下载链接;

通过访问所述下载链接下载所述所选应用的安装信息。

优选地,在所述的通过网络访问下载所述所选应用的安装信息的步骤之前,所述方法还包括:

判定存储空间中未存储有所述所选应用的安装信息;

所述方法还包括:

响应于所述存储空间中存储有所述所选应用的安装信息,从所述存储空间中获取所述所选应用的安装信息。

优选地,在所述的按照与所述安装信息及目标虚拟环境对应的编译规则和安装规则对所述所选应用的安装信息进行处理,使得所述所选应用安装在所述目标虚拟环境中的步骤之后,所述方法还包括:

记录所述所选应用的存储路径;

将所述存储路径发送至物理机操作系统存储,以使所述物理机操作系统根据所述存储路径查找到所述所选应用。

为了解决上述问题,本发明实施例还公开了一种应用安装装置,包括:

请求接收模块,用于接收应用安装请求:

信息获取模块,用于触发运行脚本,获得所选应用的安装信息及所述所选应用对应的目标虚拟环境;

应用安装模块,用于按照与所述安装信息及目标虚拟环境对应的编译规则和安装规则对所述所选应用的安装信息进行处理,使得所述所选应用安装在所述目标虚拟环境中。

优选地,所述信息获取模块,具体用于触发运行所述脚本,通过网络访问下载所述所选应用的安装信息。

优选地,所述信息获取模块包括:

界面输出子模块,用于触发运行所述脚本,输出配置界面;

信息接收子模块,用于接收用户在所述配置界面输入的所述所选应用的查找信息及所述所选应用对应的目标虚拟环境,所述查找信息包括标识信息和下载链接中的至少一种;

信息下载子模块,用于根据所述所选应用的查找信息,通过网络访问下载所述所选应用的安装信息。

优选地,所述信息获取模块包括:

链接确定子模块,用于根据应用与下载链接的对应关系,确定所述所选应用的下载链接;

信息获得子模块,用于通过访问所述下载链接下载所述所选应用的安装信息。

优选地,所述装置还包括:

信息判定模块,用于所述的通过网络访问下载所述所选应用的安装信息的步骤之前,判定存储空间中未存储有所述所选应用的安装信息;

所述装置还包括:

信息提取模块,用于响应于所述存储空间中存储有所述所选应用的安装信息,从所述存储空间中获取所述所选应用的安装信息。

优选地,所述装置还包括:

路径记录模块,用于在所述的按照与所述安装信息及目标虚拟环境对应的编译规则和安装规则对所述所选应用的安装信息进行处理,使得所述所选应用安装在所述目标虚拟环境中的步骤之后,记录所述所选应用的存储路径;

路径发送模块,用于将所述存储路径发送至物理机操作系统存储,以使所述物理机操作系统根据所述存储路径查找到所述所选应用。

为了解决上述问题,本发明实施例还公开了一种可读存储介质,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行上述的应用安装方法。

为了解决上述问题,本发明实施例还公开了一种电子设备,包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现上述的应用安装方法。

与现有技术相比,本发明包括以下优点:

本发明实施例提供了一种应用安装方法及装置,使用脚本执行应用的下载和安装,脚本内可以预置有编译规则和安装规则,当所选应用的安装过程出现问题时,脚本可以根据编译规则和安装规则解决安装问题并继续执行剩余安装,从而保证所选应用顺利安装至目标虚拟环境中,完成对目标虚拟环境的更新。由于无需重新执行所有安装过程,因此大大缩短了应用安装时间,提高了应用安装效率。同时,相比于背景技术中的独立的操作系统,脚本具有软件开发简单、代码尺寸小以及成本低等优点。

附图说明

图1示出了本发明实施例提供的一种应用安装方法的步骤流程图;

图2示出了本发明实施例提供的另一种应用安装方法的步骤流程图;

图3示出了本发明实施例提供的一种应用安装装置的结构示意图。

具体实施方式

为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。

实施例一

参照图1,示出了本发明实施例提供的一种应用安装的步骤流程图,具体可以包括:

步骤101、接收应用安装请求。

本发明实施例中,终端内预先创建至少一个虚拟环境,当创建两个以上虚拟环境时,两个以上虚拟环境之间相互独立,虚拟环境的存储形式可以有多种,例如以文件夹形式存储等。同时,终端内存储有预先开发的脚本,该脚本用于下载应用以及安装应用至虚拟环境内。

用户预安装应用至虚拟环境中时,可以向终端发送应用的安装请求,具体地,用户可以通过指定操作向终端发送应用的安装请求。

步骤102、触发运行脚本,获得所选应用的安装信息及所选应用对应的目标虚拟环境。

所选应用为用户预下载并安装至虚拟环境中的应用。所选应用的安装信息为用于安装所选应用至虚拟环境中的信息,安装信息可以包括应用源代码和安装命令等信息。目标虚拟环境为用于存储所选应用的虚拟环境。

在接收应用安装请求后,触发运行脚本,通过脚本获取所选应用的安装信息及所选应用对应的目标虚拟环境。

脚本获得安装信息和目标虚拟环境的方式可以有多种,例如,触发运行脚本后输出配置界面,接收用户在脚本的配置界面上输入的目标虚拟环境以获得目标虚拟环境,通过网络访问获得安装信息等,可以根据实际设置获得安装信息和目标虚拟环境的方式。

步骤103、按照与安装信息及目标虚拟环境对应的编译规则和安装规则对所选应用的安装信息进行处理,使得所选应用安装在目标虚拟环境中。

本发明实施例中,脚本内预先存储有应用的编译规则和安装规则,应用的编译规则和安装规则与应用的安装信息及目标虚拟环境存在对应关系,不同的目标虚拟环境可以对应不同的安装规则。本发明在获得所选应用的安装信息后,确定与安装信息和目标虚拟环境对应的编译规则和安装规则,之后按照确定的编译规则和安装规则对所选应用的安装信息进行处理,将所选应用安装在目标虚拟环境中。

安装信息可以包括应用的多种信息,如安装信息可以包括所选应用的源代码和多条安装命令等。当安装信息包括所选应用的源代码和多条安装命令时,如果在所选应用的安装过程中某一条安装命令出现问题,这时脚本暂停所选应用的安装,并根据所选应用的安装规则对安装问题进行处理,待安装问题解决后继续执行剩余安装,从而保证了所选应用顺利安装至目标虚拟环境中,由于无需重新执行所有安装过程,因此大大缩短了应用安装时间,提高了应用安装效率。

实现脚本的上述功能的方式有多种,例如,脚本内存储的编译规则和安装规则可以限定所选应用的多条安装命令的安装顺序等,在应用安装过程中,当某一条安装命令出现问题时,脚本记录出现问题的安装命令在所有安装命令中的位置,待该条安装命令的问题解决后,脚本根据记录的出现问题的安装命令的位置,继续执行剩余安装命令,完成剩余安装。

实际中,可以预先在脚本内存储不同应用的编译规则和安装规则,在脚本接收到所选应用的安装信息后,确定出与安装信息及目标虚拟环境对应的编译规则和安装规则,如果脚本未存储对应的编译规则和安装规则,则脚本可以输出提示信息供用户查看,这时用户可以通过脚本输出的配置界面输入所选应用对应的编译规则和安装规则,更新脚本存储的应用与规则的对应关系。

通常应用的安装信息与多种因素有关,如应用种类、应用版本等,编译规则和安装规则与多种因素有关,如应用种类、应用版本、目标虚拟环境等,也可以理解为编译规则和安装规则与应用的安装信息、目标虚拟环境等有关。本发明可以在脚本中存储应用信息(如应用名称、应用版本、应用的安装信息)-目标虚拟环境-编译规则-安装规则的对应关系,便于所需编译规则和安装规则的查找,还可以是其他形式的对应关系,本发明实施例在此不做限制。

可以根据实际设置虚拟环境的语言环境,例如,设置python语言环境,python应用可以在python语言环境中编译,python语言环境中可以同时安装2.7.6版本和3.6.2版本,可以根据用户选择下载并安装所需版本的python应用。

本发明实施例可以使用以下标准开发工具:makefile文件、脚本(bash或windows批处理文件)以及命令行下载程序(例如wget,aria2等)。还可以是其他适用的开发工具。

脚本的尺寸非常小,可达到1mb以下,因此使用脚本下载和安装应用至虚拟环境,可以大大减少代码编写量,简化软件开发工作。可以使用本发明实施例提供的脚本下载开源应用,并将开源应用安装在虚拟环境中,因此可以允许开发公共开源应用,且在开发过程中应用可以根据需要被编译多次。由于终端内建立的多个虚拟环境是相对独立的,因此安装和测试新虚拟环境时,不会对使用的其他虚拟环境产生影响。可以通过配置将应用安装至新虚拟环境内。

本发明实施例提供了一种应用安装方法及装置,使用脚本执行应用的下载和安装,脚本内可以预置有编译规则和安装规则,当所选应用的安装过程出现问题时,脚本可以根据编译规则和安装规则解决安装问题并继续执行剩余安装,从而保证所选应用顺利安装至目标虚拟环境中,完成对目标虚拟环境的更新。由于无需重新执行所有安装过程,因此大大缩短了应用安装时间,提高了应用安装效率。同时,相比于背景技术中的独立的操作系统,脚本具有软件开发简单、代码尺寸小以及成本低等优点。

实施例二

参照图2,示出了本发明实施例提供的另一种应用安装方法的步骤流程图,具体可以包括:

步骤201、接收应用安装请求。

步骤202、触发运行脚本,获得所选应用的安装信息及所选应用对应的目标虚拟环境。

本发明实施例中,可以预先下载所选应用的安装信息至指定的存储空间,存储空间可以有多种,如缓存等,可以根据实际设置存储空间的容量,如存储空间可以是尺寸大于5gb的缓存。

本发明实施例所述的应用安装方法可以应用于终端,终端内设置有物理机操作系统,物理机操作系统为通常所述的os(operatingsystem,操作系统),是管理和控制计算机硬件与软件资源的计算机程序,物理机操作系统对应物理环境,同时本发明提供的终端内还设置有虚拟机操作系统,虚拟机操作系统对应虚拟环境。可以根据实际设置上述的存储空间的位置,如存储空间可以设置在物理环境内,便于查找。

步骤203、当存储空间中存储有所选应用的安装信息时,从存储空间中获取所选应用的安装信息。

脚本运行后,可以先执行判断存储空间中是否存储有所选应用的安装信息的步骤,判定存储空间存储有所选应用的安装信息后,直接从存储空间中提取所选应用的安装信息。

对于存储空间内未存储的安装信息,可以通过网络下载的方式将未存储的安装信息下载至存储空间,对存储空间的信息内容进行更新,便于后续使用。

由于无需通过网络下载安装信息,因此简化了安装信息的获取过程,缩短了安装信息的下载时间以及应用安装时间,进一步提高了应用安装效率。当终端未连接网络时,本方法可以实现所选应用的安装信息的获取,进而实现所选应用的安装,因此本方案适用于终端未连接网络的场景。

步骤204、响应于存储空间中未存储所选应用的安装信息,通过网络访问下载所选应用的安装信息。

当判定存储空间中未存储所选应用的安装信息时,通过网络访问下载所选应用的安装信息,该操作需要在终端连接网络的场景下进行。

通过网络访问下载所选应用的安装信息的方式可以有多种,例如,第一种方式,触发运行脚本,输出配置界面,接收用户在配置界面输入的所选应用的查找信息及所选应用对应的目标虚拟环境,其中,查找信息至少包括标识信息和下载链接中的至少一种,根据所选应用的查找信息,网络下载所选应用的安装信息;第二种方式,根据预先存储的应用与下载链接的对应关系,确定所选应用的下载链接,通过访问下载链接下载所选应用的安装信息。

针对上述第一种方式,配置界面输出后,当脚本接收到用户在配置界面上输入的所选应用的下载链接时,脚本可以通过直接访问下载链接下载安装信息,输入下载链接的方式有多种,例如从配置界面上显示的多个下载链接中选择,或用户直接编写等;当脚本接收到用户在配置界面上输入的所选应用的标识信息时,脚本可以访问网络查找与标识信息对应的下载链接,并通过网络访问下载链接下载所选应用的安装信息。脚本内可以记录有不同应用的下载链接,多个下载链接可以以列表或其他形式存储。用户可以根据需要更新脚本记录的下载链接,以满足用户需求,方便应用下载。

针对上述第二种方式,脚本还可以预先存储应用与下载链接的对应关系,具体可以存储应用的标识信息与下载链接的对应关系,在接收到用户在配置界面输入的应用后,查找与该应用对应的下载链接,并通过访问该下载链接下载所选应用的安装信息。

应用的标识信息的信息内容可以有多种,如应用名称、应用版本以及应用图标等中的一种或多种,可以根据实际进行设置。

步骤205、按照与安装信息及目标虚拟环境对应的编译规则和安装规则对所选应用的安装信息进行处理,使得所选应用安装在所述目标虚拟环境中。

本发明实施例中,脚本内预置有编译规则和安装规则,在按照预置的编译规则和安装规则安装所选应用时,不会弹出应用的协议许可界面,而是对应用的协议进行默认许可,在保证用户有权限下载和安装应用的同时,免去了重新授权协议的操作,提高了用户体验。

本发明实施例中,在按照预置的编译规则和安装规则对所选应用的安装信息进行处理,使得所选应用安装在目标虚拟环境中之后,本方法还可以记录所选应用的存储路径,之后将存储路径发送至物理机操作系统存储,以使物理机操作系统能够根据存储路径快速查找到所选应用。可以根据实际设置存储路径在物理机操作系统中的存储位置,例如存储路径存储在物理机操作系统的环境变量中等。记录所选应用的存储路径并将其存储至物理机操作系统内,缩短了物理机操作系统对所选应用的查找时间,提高了所选应用的查找效率。实际中还可以根据需要将所选应用的存储路径存储发送至虚拟机操作系统存储。

物理机操作系统查找所选应用时,可以先判断是否存储有所选应用的存储路径,若存储有该指定路径,则可以根据存储路径快速查找到所选应用,若未存储该存储路径,则优先对虚拟环境进行查找,当虚拟环境为多个时,物理机操作系统可以依次对多个虚拟环境进行查找,当完成对所有虚拟环境的查找后仍未查找到所选应用时,再从物理机操作系统的系统应用库中查找。

本发明实施例提供了一种应用安装方法及装置,使用脚本执行应用的下载和安装,脚本内可以预置有编译规则和安装规则,当所选应用的安装过程出现问题时,脚本可以根据编译规则和安装规则解决安装问题并继续执行剩余安装,从而保证所选应用顺利安装至目标虚拟环境中,完成对目标虚拟环境的更新。由于无需重新执行所有安装过程,因此大大缩短了应用安装时间,提高了应用安装效率。同时,相比于背景技术中的独立的操作系统,脚本具有软件开发简单、代码尺寸小以及成本低等优点。

实施例三

参照图3,示出了本发明实施例提供的一种应用安装装置的结构示意图,具体可以包括:

请求接收模块301,用于接收应用安装请求。

信息获取模块302,用于触发运行脚本,获得所选应用的安装信息及所述所选应用对应的目标虚拟环境。

应用安装模块303,用于按照与所述安装信息及所述目标虚拟环境对应的编译规则和安装规则对所述所选应用的安装信息进行处理,使得所述所选应用安装在所述目标虚拟环境中。

优选地,所述信息获取模块302,具体用于触发运行所述脚本,通过网络访问下载所述所选应用的安装信息。

优选地,所述信息获取模块302包括:

界面输出子模块,用于触发运行所述脚本,输出配置界面;

信息接收子模块,用于接收用户在所述配置界面输入的所述所选应用的查找信息及所述所选应用对应的目标虚拟环境,所述查找信息包括标识信息和下载链接中的至少一种;

信息下载子模块,用于根据所述所选应用的查找信息,通过网络访问下载所述所选应用的安装信息。

优选地,所述信息获取模块302包括:

链接确定子模块,用于根据应用与下载链接的对应关系,确定所述所选应用的下载链接;

信息获得子模块,用于通过访问所述下载链接下载所述所选应用的安装信息。

优选地,所述装置还包括:

信息判定模块,用于所述的通过网络访问下载所述所选应用的安装信息的步骤之前,判定存储空间中未存储有所述所选应用的安装信息;

所述装置还包括:

信息提取模块,用于响应于所述存储空间中存储有所述所选应用的安装信息,从所述存储空间中获取所述所选应用的安装信息。

优选地,所述装置还包括:

路径记录模块,用于在所述的按照与所述安装信息及目标虚拟环境对应的编译规则和安装规则对所述所选应用的安装信息进行处理,使得所述所选应用安装在所述目标虚拟环境中的步骤之后,记录所述所选应用的存储路径;

路径发送模块,用于将所述存储路径发送至物理机操作系统存储,以使所述物理机操作系统根据所述存储路径查找到所述所选应用。

本发明实施例提供了一种应用安装方法及装置,使用脚本执行应用的下载和安装,脚本内可以预置有编译规则和安装规则,当所选应用的安装过程出现问题时,脚本可以根据编译规则和安装规则解决安装问题并继续执行剩余安装,从而保证所选应用顺利安装至目标虚拟环境中,完成对目标虚拟环境的更新。由于无需重新执行所有安装过程,因此大大缩短了应用安装时间,提高了应用安装效率。同时,相比于背景技术中的独立的操作系统,脚本具有软件开发简单、代码尺寸小以及成本低等优点。

优选的,本发明实施例还提供一种电子设备,其特征在于,包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现上述的应用安装方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。

本发明实施例还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述应用安装方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。其中,所述的计算机可读存储介质,如只读存储器(read-onlymemory,简称rom)、随机存取存储器(randomaccessmemory,简称ram)、磁碟或者光盘等。

对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。

本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。

最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。

以上对本发明所提供的一种应用安装方法和一种应用安装装置,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1