一种应用生成方法、装置、设备以及存储介质
文献发布时间:2024-04-18 19:58:26
技术领域
本发明涉及计算机技术领域,尤其涉及一种应用生成方法、装置、设备以及存储介质。
背景技术
在现有的业务系统中,存储有预先设定好的应用模板,当用户新创建一个应用时,系统会根据所述应用模板,复制出一套与所述应用模板一模一样的表数据,继而根据所述表数据自动生成一个初始新应用。
但是由于所述应用模板中包含了业务系统的所有内置功能模块,在生成一个初始新应用时,无法根据用户的实际需求选择需要的功能模块,所生成的初始新应用直接就包含了所有的内置功能模块,脱离用户的实际需求,多出了很多无用的功能模块,造成资源的浪费。
发明内容
本发明提供了一种应用生成方法、装置、设备以及存储介质,可以根据用户的实际需求选择需要的内置功能模块,来生成所需的应用。
为了解决上述技术问题,本发明实施例提供了一种应用生成方法,包括:
响应用户的内置安装包生成请求,生成一用于选择组成内置安装包的内置功能模块的内置功能模块选择界面;
响应用户在所述内置功能模块选择界面的选取操作,确定用户所选择的内置功能模块;
根据用户所选择的内置功能模块,获取各内置功能模块所对应的程序文件,将所获取的各程序文件进行压缩,得到一内置安装包;
将所述内置安装包对应的版本标志为最新版本,并将所述最新版本的版本信息进行发布;
对所述版本发布后的内置安装包进行安装,生成一应用。
作为优选方案,所述对所述版本发布后的内置安装包进行安装,生成一应用,包括:
接收一应用生成请求,根据所述应用生成请求确定待生成应用的生成模式;其中所述生成模式为:应用安装或应用升级;
当所述生成模式为应用安装时,则直接对所述版本发布后的内置安装包进行安装,生成一应用;
当所述生成模式为应用升级时,根据所述应用生成请求确定待升级的目标应用,继而对所述版本发布后的内置安装包进行安装,并在安装过程中对所述目标应用进行应用升级。
作为优选方案,所述当所述生成模式为应用安装时,则直接对所述版本发布后的内置安装包进行安装,生成一应用,包括:
当所述生成模式为应用安装时,根据所述内置安装包的版本信息,确定所述内置安装包是否存在更早版本的内置安装包;
若不存在,则直接对所述内置安装包进行安装,生成一应用;
若存在,则获取所有更早版本的内置安装包,并对各内置安装包的版本发布时间进行排序,从最早版本的内置安装包开始,逐一对各内置安装包进行安装,生成一应用。
作为优选方案,所述对所述版本发布后的内置安装包进行安装,并在安装过程中对所述目标应用进行应用升级,包括:
根据所述内置安装包的版本信息,确定所述内置安装包是否存在更早版本的内置安装包;
若不存在,则直接对所述内置安装包进行安装,并在安装过程中对所述目标应用进行升级,生成一应用;
若存在,则获取所有更早版本的内置安装包,并对各内置安装包的版本发布时间进行排序,从最早版本的内置安装包开始,逐一对各内置安装包进行安装,并在安装过程中依次对所述目标应用进行应用升级。
作为优选方案,所述对各内置安装包进行安装,包括:
对于每一内置安装包,对内置安装包进行解析,得到内置安装包中所包含的各内置功能模块;
判断各所述内置功能模块是否存在前置功能模块;
若不存在,则直接对所述内置安装包进行安装;
若存在,则获取所述前置功能模块,将所述内置安装包和所述内置功能模块一起进行安装。
作为优选方案,在对各内置安装包进行安装之前,还包括:
创建与待安装的内置安装包个数相同的线程;
给每一待安装的内置安装包匹配一用于安装的线程。
作为优选方案,在对各内置安装包进行安装之前之后,还包括:
在各内置安装包安装完成之后,保留所创建的各线程,以使各线程可以在下一次安装时进行重复利用。
在上述实施例的基础上,本发明另一实施例提供了一种应用生成装置,包括:选择界面生成模块、内置功能确定模块、内置安装包生成模块、版本信息发布模块以及应用生成模块;
所述选择界面生成模块,用于响应用户的内置安装包生成请求,生成一用于选择组成内置安装包的内置功能模块的内置功能模块选择界面;
所述内置功能确定模块,用于响应用户在所述内置功能模块选择界面的选取操作,确定用户所选择的内置功能模块;
所述内置安装包生成模块,用于根据用户所选择的内置功能模块,获取各内置功能模块所对应的程序文件,将所获取的各程序文件进行压缩,得到一内置安装包;
所述版本信息发布模块,用于将所述内置安装包对应的版本标志为最新版本,并将所述最新版本的版本信息进行发布;
所述应用生成模块,用于对所述版本发布后的内置安装包进行安装,生成一应用。
在上述实施例的基础上,本发明又一实施例提供了一种应用生成设备,所述设备包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现上述发明实施例所述的应用生成方法。
在上述实施例的基础上,本发明又一实施例提供了一种存储介质,所述存储介质包括存储的计算机程序,其中,在所述计算机程序运行时控制所述存储介质所在设备执行上述发明实施例所述的应用生成方法。
相比于现有技术,本发明实施例具有如下有益效果:
在本发明中,响应用户在所述内置功能模块选择界面的选取操作,确定用户所选择的内置功能模块;根据用户所选择的内置功能模块,获取各内置功能模块所对应的程序文件,将所获取的各程序文件进行压缩,得到一内置安装包;将所述内置安装包对应的版本标志为最新版本,并将所述最新版本的版本信息进行发布;对所述版本发布后的内置安装包进行安装,生成一应用。
通过本发明,可以根据用户在内置功能模块选择界面中所选择的内置功能模块,来组成内置安装包,生成用户所需的应用,避免资源的浪费。
附图说明
图1是本发明一实施例提供的一种应用生成方法的流程示意图;
图2是本发明的应用生成流程示意图;
图3是本发明一实施例提供的一种应用生成装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一
请参照图1,为本发明一实施例提供的一种应用生成方法的流程示意图,包括如下具体步骤:
S1、响应用户的内置安装包生成请求,生成一用于选择组成内置安装包的内置功能模块的内置功能模块选择界面;
请参照图2,为本发明的应用生成流程示意图。在一业务系统中,租户登录进入企业的管理平台,再从管理平台点击进入内置功能管理页面,即内置功能模块选择界面,在所述内置功能模块选择界面中,根据实际的业务需求选择所需的内置功能模块。
在本发明实施例中,所述内置功能模块包括但不限于以下几种:
1、内置管理功能:内置列表、内置新增、内置编辑和内置详情;
2、内置版本管理模块:版本列表、版本新增、版本详情、版本发布和版本删除;
3、内置安装模块:批量安装/升级、应用安装/升级。
S2、响应用户在所述内置功能模块选择界面的选取操作,确定用户所选择的内置功能模块;
用户在所述内置功能模块选择界面选择完毕之后,点击确认;系统响应用户在所述内置功能模块选择界面的选取操作,确定用户所选择的内置功能模块。
S3、根据用户所选择的内置功能模块,获取各内置功能模块所对应的程序文件,将所获取的各程序文件进行压缩,得到一内置安装包;
系统自动根据用户所选择的内置功能模块,获取各内置功能模块所对应的程序文件,生成一内置信息,将所生成的内置信息进行压缩,得到一内置安装包。
S4、将所述内置安装包对应的版本标志为最新版本,并将所述最新版本的版本信息进行发布;
内置安装包生成之后,用户点击上传安装包,系统自动将所生成的内置安装包进行上传,并将所述内置安装包对应的版本标志为最新版本,将所述最新版本的版本信息进行发布。
在本发明的业务系统中,内置安装包的版本信息上传成功后,还需要进行版本发布,版本发布成功后才能进行内置安装包的安装/升级,未发布则不允许安装/升级。
S5、对所述版本发布后的内置安装包进行安装,生成一应用。
优选的,所述对所述版本发布后的内置安装包进行安装,生成一应用,包括:
接收一应用生成请求,根据所述应用生成请求确定待生成应用的生成模式;
其中所述生成模式为:应用安装或应用升级;当所述生成模式为应用安装时,则直接对所述版本发布后的内置安装包进行安装,生成一应用;当所述生成模式为应用升级时,根据所述应用生成请求确定待升级的目标应用,继而对所述版本发布后的内置安装包进行安装,并在安装过程中对所述目标应用进行应用升级。
优选的,所述当所述生成模式为应用安装时,则直接对所述版本发布后的内置安装包进行安装,生成一应用,包括:当所述生成模式为应用安装时,根据所述内置安装包的版本信息,确定所述内置安装包是否存在更早版本的内置安装包;若不存在,则直接对所述内置安装包进行安装,生成一应用;若存在,则获取所有更早版本的内置安装包,并对各内置安装包的版本发布时间进行排序,从最早版本的内置安装包开始,逐一对各内置安装包进行安装,生成一应用。
优选的,所述对所述版本发布后的内置安装包进行安装,并在安装过程中对所述目标应用进行应用升级,包括:根据所述内置安装包的版本信息,确定所述内置安装包是否存在更早版本的内置安装包;若不存在,则直接对所述内置安装包进行安装,并在安装过程中对所述目标应用进行升级,生成一应用;若存在,则获取所有更早版本的内置安装包,并对各内置安装包的版本发布时间进行排序,从最早版本的内置安装包开始,逐一对各内置安装包进行安装,并在安装过程中依次对所述目标应用进行应用升级。
用户在系统上点击生成一个应用时,系统首先确定用户所选择的内置安装包,判断该内置安装包的版本信息是否已经在系统上进行发布,若已发布,则对该内置安装包进行安装。
在安装过程中,有两种应用生成模式:应用安装或应用升级。当所述生成模式为应用安装时,则直接对所述版本发布后的内置安装包进行安装,生成一应用。当所述生成模式为应用升级时,根据所述应用生成请求确定待升级的目标应用,继而对所述版本发布后的内置安装包进行安装,并在安装过程中对所述目标应用进行应用升级,将所述内置安装包的程序文件覆盖目标应用的原安装路径下的原程序文件。
在本发明的业务系统中,内置版本之间存在相互依赖:例如安装A内置安装包时,A内置安装包为较高的版本,系统会自动将该版本之前的版本进行有序安装/升级。
由于内置版本之间存在依赖性,系统在安装之前,还需要根据内置安装包的版本信息,确定所述内置安装包是否存在更早版本的内置安装包。若不存在,则直接对所述内置安装包进行安装/升级。若存在,则获取该版本之前的更早版本的内置安装包,并对各内置安装包的版本发布时间进行排序,从最早版本的内置安装包开始,逐一对各内置安装包进行安装/升级。
优选的,所述对各内置安装包进行安装,包括:对于每一内置安装包,对内置安装包进行解析,得到内置安装包中所包含的各内置功能模块;判断各所述内置功能模块是否存在前置功能模块;若不存在,则直接对所述内置安装包进行安装;若存在,则获取所述前置功能模块,将所述内置安装包和所述内置功能模块一起进行安装。
在本发明的业务系统中,内置功能模块之间也存在相互依赖:例如安装B内置功能模块时,系统检查到安装B必须需要A内置功能模块作为前置功能模块,才可以正常使用,则系统会先对A进行安装,然后再安装B。
在对内置安装包进行安装时,由于内置之间存在依赖性,系统还需要对内置安装包进行解析,得到内置安装包中所包含的各内置功能模块,继而判断各所述内置功能模块是否存在前置功能模块;其中,内置功能模块存在前置功能模块时,由于二者之间的依赖性,必须先安装所述前置功能模块,再安装所述内置功能模块。若不存在,则直接对所述内置安装包进行安装;若存在,则获取所述前置功能模块,将所述内置安装包和所述内置功能模块一起进行安装。
需要说明的是,在本发明中,内置安装包的安装过程还可分为批量安装/升级和应用单独安装/升级:
批量安装/升级:用户选择一个内置安装包,然后选择多个应用,系统就会根据所选择的内置安装包,在所选择的多个应用中同时进行安装,在各应用中生成相同的功能;
应用单独安装/升级:用户选择多个内置安装包,然后选择一个应用,系统就会将所选择的多个内置安装包在该应用中同时进行安装,在一个应用中生成多种功能。
优选的,在对各内置安装包进行安装之前,还包括:创建与待安装的内置安装包个数相同的线程;给每一待安装的内置安装包匹配一用于安装的线程。
优选的,在对各内置安装包进行安装之前之后,还包括:在各内置安装包安装完成之后,保留所创建的各线程,以使各线程可以在下一次安装时进行重复利用。
在安装所述内置安装包时,本发明以线程池的方式来使用线程,降低系统的资源消耗,提高系统的响应速度。
其中,所述线程池的使用方式为:
a、在安装所述内置安装包时,使用多线程,同时创建多个线程,创建与待安装的内置安装包个数相同的线程;给每一待安装的内置安装包匹配一用于安装的线程。使得各应用之间(各内置安装/升级时)无需等待上一线程的执行结果,各应用(内置)执行自己的安装任务,提高系统的响应速度;
b、在创建新线程进行安装/升级之后,不同于以往的方式(销毁线程,在下一次进行安装/升级时,再创建一个新线程),不销毁线程,在下一次进行安装/升级时,重复利用,降低系统的资源消耗。
由此可见,本发明提供了一种应用生成方法,通过本发明,可以根据用户在内置功能模块选择界面中所选择的内置功能模块,来组成内置安装包,生成用户所需的应用,避免资源的浪费。
实施例二
请参照图3,为本发明一实施例提供的一种应用生成装置的结构示意图,该装置包括:选择界面生成模块、内置功能确定模块、内置安装包生成模块、版本信息发布模块以及应用生成模块;
所述选择界面生成模块,用于响应用户的内置安装包生成请求,生成一用于选择组成内置安装包的内置功能模块的内置功能模块选择界面;
所述内置功能确定模块,用于响应用户在所述内置功能模块选择界面的选取操作,确定用户所选择的内置功能模块;
所述内置安装包生成模块,用于根据用户所选择的内置功能模块,获取各内置功能模块所对应的程序文件,将所获取的各程序文件进行压缩,得到一内置安装包;
所述版本信息发布模块,用于将所述内置安装包对应的版本标志为最新版本,并将所述最新版本的版本信息进行发布;
所述应用生成模块,用于对所述版本发布后的内置安装包进行安装,生成一应用。
需说明的是,以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。另外,本发明提供的装置实施例附图中,模块之间的连接关系表示它们之间具有通信连接,具体可以实现为一条或多条通信总线或信号线。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
所述领域的技术人员可以清楚地了解到,为的方便和简洁,上述描述的装置的具体工作过程,可参考前述方法实施例中对应的过程,在此不再赘述。
实施例三
相应地,本发明实施例提供了一种应用生成设备,所述设备包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现上述发明实施例所述的应用生成方法。
设备可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述设备可包括,但不仅限于,处理器、存储器。
所称处理器可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,所述处理器是所述设备的控制中心,利用各种接口和线路连接整个设备的各个部分。
实施例四
相应地,本发明实施例提供了一种存储介质,所述存储介质包括存储的计算机程序,其中,在所述计算机程序运行时控制所述存储介质所在设备执行上述发明实施例所述的应用生成方法。
所述存储器可用于存储所述计算机程序,所述处理器通过运行或执行存储在所述存储器内的计算机程序,以及调用存储在存储器内的数据,实现所述设备的各种功能。所述存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序等;存储数据区可存储根据手机的使用所创建的数据等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(FlashCard)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
所述存储介质为计算机可读存储介质,所述计算机程序存储在所述计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围。
- 一种APP的自动生成方法、装置、终端设备及可读存储介质
- 一种三维水电预埋图的生成方法、装置、设备及存储介质
- 一种图像生成方法、装置、设备和存储介质
- 一种区块链ID生成及使用方法、装置、电子设备以及存储介质
- 一种会话生成方法、装置、终端设备及存储介质
- 应用程序生成方法、生成装置、电子设备及存储介质
- 一种应用程序安装包的生成方法、装置、设备及存储介质