掌桥专利:专业的专利平台
掌桥专利
首页

安装程序生成方法、运行方法、装置、设备及存储介质

文献发布时间:2024-04-18 19:58:26


安装程序生成方法、运行方法、装置、设备及存储介质

技术领域

本公开涉及计算机技术领域,尤其涉及一种安装程序生成方法、运行方法、装置、设备及存储介质。

背景技术

在诸如教培、在线教育以及网络游戏等多种场景中,为了满足不同的业务需求,同一个软件项目通常需要开发团队开发不同的安装程序,以通过运行不同的安装程序得到不同的结果,从而满足各种各样的业务需求。

通常情况下,同一个软件项目的不同安装程序有很多相同的共有功能并存在相同的依赖功能,如果同一个软件项目的不同安装程序重复开发相同的共有功能和相同的依赖功能,增加了安装程序的开发难度和维护成本,进而提高了安装程序的安装难度和使用难度。

发明内容

为了解决上述技术问题,本公开提供了一种安装程序生成方法、装置、设备及存储介质。

第一方面,本公开提供了一种安装程序生成方法,应用于第一设备,该方法包括:

响应于目标项目的安装程序生成请求,配置包含共有功能的第一应用程序、不同特有功能分别对应的第二应用程序、包含所述第一应用程序和所述第二应用程序的依赖功能的服务程序;

基于所述第一应用程序、所述第二应用程序以及所述服务程序,生成所述目标项目的安装程序。

第二方面,本公开提供了一种安装程序运行方法,应用于第二设备,该方法包括:

响应于所述目标项目的安装请求,将所述目标项目的安装程序解压至指定路径,并将所述指定路径添加至注册表,其中,所述目标项目的安装程序包括第一应用程序、第二应用程序以及服务程序,所述第一应用程序、所述第二应用程序以及所述服务程序通过响应于所述目标项目的安装程序生成请求后配置得到,所述第一应用程序包含共有功能,不同第二应用程序分别对应不同的特有功能,所述服务程序包含所述第一应用程序和所述第二应用程序的依赖功能;

运行所述指定路径下解压后的安装程序。

第三方面,本公开提供了一种安装程序生成装置,配置于第一设备,该装置包括:

配置模块,用于响应于目标项目的安装程序生成请求,配置包含共有功能的第一应用程序、不同特有功能分别对应的第二应用程序、包含所述第一应用程序和所述第二应用程序的依赖功能的服务程序;

生成模块,用于基于所述第一应用程序、所述第二应用程序以及所述服务程序,生成所述目标项目的安装程序。

第四方面,本公开提供了一种安装程序运行装置,配置于第二设备,该装置包括:

安装模块,用于响应于所述目标项目的安装请求,将所述目标项目的安装程序解压至指定路径,并将所述指定路径添加至注册表,其中,所述目标项目的安装程序包括第一应用程序、第二应用程序以及服务程序,所述第一应用程序、所述第二应用程序以及所述服务程序通过响应于所述目标项目的安装程序生成请求后配置得到,所述第一应用程序包含共有功能,不同第二应用程序分别对应不同的特有功能,所述服务程序包含所述第一应用程序和所述第二应用程序的依赖功能;

运行模块,用于运行所述指定路径下解压后的安装程序。

第五方面,本公开实施例还提供了一种电子设备,该设备包括:

处理器;

存储器,用于存储可执行指令;

其中,处理器用于从存储器中读取可执行指令,并执行可执行指令以实现上述第一方面或者上述第二方面所提供的方法。

第六方面,本公开实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,其中,存储介质存储有计算机程序,当计算机程序被处理器执行时,使得处理器实现上述第一方面或者上述第二方面所提供的方法。

本公开实施例提供的技术方案与现有技术相比具有如下优点:

本公开实施例的一种安装程序生成方法、运行方法、装置、设备及存储介质,应用于第一设备,包括:响应于目标项目的安装程序生成请求,配置包含共有功能的第一应用程序、不同特有功能分别对应的第二应用程序、包含第一应用程序和第二应用程序的依赖功能的服务程序;基于第一应用程序、第二应用程序以及服务程序,生成目标项目的安装程序。这样,同一个软件项目中相同的共有功能和相同的依赖功能只需要开发一次,并打包到相同的安装程序中,因此,无需重复开发同一种功能,降低了安装程序的开发难度和维护成本,简化了安装程序的安装过程。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。

为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为本公开实施例提供的一种安装程序生成方法的流程示意图;

图2为本公开实施例提供的一种安装程序的项目架构示意图;

图3为本公开实施例提供的一种安装程序运行方法的流程示意图;

图4为本公开实施例提供的一种安装程序运行过程的逻辑示意图;

图5为本公开实施例提供的一种安装程序生成装置的结构示意图;

图6为本公开实施例提供的一种安装程序运行装置的结构示意图;

图7为本公开实施例提供的一种电子设备的结构示意图。

具体实施方式

下面将参照附图更详细地描述本公开的实施例。虽然附图中显示了本公开的某些实施例,然而应当理解的是,本公开可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例,相反提供这些实施例是为了更加透彻和完整地理解本公开。应当理解的是,本公开的附图及实施例仅用于示例性作用,并非用于限制本公开的保护范围。

应当理解,本公开的方法实施方式中记载的各个步骤可以按照不同的顺序执行,和/或并行执行。此外,方法实施方式可以包括附加的步骤和/或省略执行示出的步骤。本公开的范围在此方面不受限制。

本文使用的术语“包括”及其变形是开放性包括,即“包括但不限于”。术语“基于”是“至少部分地基于”。术语“一个实施例”表示“至少一个实施例”;术语“另一实施例”表示“至少一个另外的实施例”;术语“一些实施例”表示“至少一些实施例”。其他术语的相关定义将在下文描述中给出。需要注意,本公开中提及的“第一”、“第二”等概念仅用于对不同的装置、模块或单元进行区分,并非用于限定这些装置、模块或单元所执行的功能的顺序或者相互依存关系。

需要注意,本公开中提及的“一个”、“多个”的修饰是示意性而非限制性的,本领域技术人员应当理解,除非在上下文另有明确指出,否则应该理解为“一个或多个”。

本公开实施方式中的多个装置之间所交互的消息或者信息的名称仅用于说明性的目的,而并不是用于对这些消息或信息的范围进行限制。

为了降低安装程序的开发成本和维护成本,相关技术采用将多个应用程序打包成一个安装程序的方法,开发安装程序。但是,随着开发项目的规模和复杂度提高,安装程序的复杂度也会提高,产生代码冗余和难以维护的问题,不方便用户对代码进一步更新和扩展。

相关技术中还使用单页Web应用(Single Page Web Application,SPA)架构或者将多个应用程序打包成一个安装程序,具体是将配置有共有功能或者依赖功能的应用程序封装成为独立的前端应用,供其他应用程序调用。尽管使用单页Web应用SPA架构可以避免重复开发共有功能或者依赖功能的能力,但是这种方式也会生成多个安装程序,并安装多个安装程序,也无法解决安装难度和使用难度高的问题。

为了解决上述问题,下面结合图1至图2对本公开实施例提供的安装程序生成方法进行说明。在本公开实施例中,该安装程序生成方法可以由第一设备执行。第一设备可以理解为安装程序的开发平台。

图1示出了本公开实施例提供的一种安装程序生成方法的流程示意图。

如图1所示,该安装程序生成方法可以包括如下步骤。

S110、响应于目标项目的安装程序生成请求,配置包含共有功能的第一应用程序、不同特有功能分别对应的第二应用程序、包含第一应用程序和第二应用程序的依赖功能的服务程序。

在本实施例中,在诸如教培、在线教育以及网络游戏等多种场景中,当进行软件开发时,用户基于目标项目的项目需求在第一设备上编辑开发代码,在完成开发代码编辑后向第一设备发送安装程序生成请求,则第一设备响应于该请求生成不同的程序。

具体的,基于编辑好的开发代码,将多个功能对应的共有功能统一配置到第一应用程序、将特有功能分别配置到各自的第一应用程序中以及将共有功能和特有功能所依赖的功能统一配置到服务程序中。这样,无需重复开发共有功能或者依赖功能,避免出现代码冗余,降低了代码的开发难度和维护成本,当项目复杂度较高时,也会方便代码扩展和更新。

其中,不同程序的配置方式包括但不限于如下方式:利用跨平台的桌面应用开发框架执行预先配置的应用程序代码,生成第一应用程序、第二应用程序以及服务程序。可选的,跨平台的桌面应用开发框架包括但不限于electron开源框架。

其中,目标项目是指特定场景中的需求项目,例如教培或在线教育场景下的学习软件、游戏场景中的手游软件等。

其中,安装程序生成请求是指开发代码的编译指令,用于请求对开发代码进行编译,以生成不同的程序。

可以理解的是,由于第一应用程序配置有共有功能,则第一应用程序具有承载统一功能的能力。可选的,共有功能包括但不限于以下一种或者多种组合:登录功能、设备检测功能、不同业务对象的资源获取功能以及共有调度功能。其中,业务对象的资源获取功能可以是学习软件中的课表信息获取功能,也可以是手游软件中游戏画面获取功能。设备检测功能包括但不限于摄像头检测功能和麦克风检测功能。

示例性的,在教培或在线教育场景下,目标项目是学习软件,则第一应用程序是承载统一登录功能、设备检测功能、课表信息获取功能以及进程调度npm包。

可以理解的是,由于不同的第二应用程序配置其对应的特有功能,则第二应用程序能够承载各自的业务功能。可选的,特有功能包括以下一种或者多种组合:不同业务对象的互动功能和特有调度功能。其中,不同业务对象的互动功能可以是学习软件中的问答功能、课件播放功能等,也可以是手游软件中的打斗功能。

示例性的,在教培或在线教育场景下,目标项目是学习软件,则不同的第二应用程序承载诸如课件播放功能、问答功能、调取小游戏功能等。

可以理解的是,由于服务程序配置有依赖功能,则服务程序能够承载第一应用程序、不同的第二应用程序所依赖的能力。可选的,依赖功能包括以下一种或者多种组合:操作系统服务、网络服务、本地服务以及程序升级服务。

示例性的,在教培或在线教育场景下,目标项目是学习软件,则服务程序中的操作系统服务、网络服务、本地服务能够支持共有功能的统一登录功能、设备检测功能、课表信息获取功能、课件播放功能、问答功能、小游戏调取功能等,当共有功能或者特有功能需要升级时,还可以调用程序升级服务来支持升级。

S120、基于第一应用程序、第二应用程序以及服务程序,生成目标项目的安装程序。

在本实施例中,为了避免用户下载和安装多个安装程序,第一设备配置好不同的程序之后,基于第一应用程序、第二应用程序以及服务程序,生成同一的安装程序。

具体的,安装程序的生成方式包括但不限于如下方式:利用自动化构建部署工具对第一应用程序、第二应用程序以及服务程序进行打包处理,生成目标项目的安装程序。可选的,自动化构建部署工具包括但不限于Jenkins。

可选的,安装程序中的不同程序之间的通信方式包括但不限于进程间通信方式。

为了便于理解安装程序的组成,图2示出了安装程序的项目架构示意图,图2以安装程序是学习软件为例进行解释。如图2所示,安装程序包括第一应用程序1、第二应用程序2、第二应用程序3以及服务程序4。具体的,第一应用程序1配置有登录功能、设备检测功能、课表信息获取功能以及共有调度功能。第二应用程序2配置有课件播放功能和特有调度功能,第二应用程序3配置有小游戏调取功能和特有调度功能。服务程序4配置有操作系统服务、网络服务、本地服务以及程序升级服务。其中,第一应用程序1通过共有调度功能调用服务程序4中的相应服务,并且,第一应用程序1与服务程序4通过进程间通信方式(Inter-Process Communication,IPC)进行通信。第二应用程序2、第二应用程序3通过各自的特有调度功能调用服务程序4中的相应服务,并且,第二应用程序2、第二应用程序3与服务程序4通过进程间通信方式(IPC)进行通信。第一应用程序1与第二应用程序2、第二应用程序3通过进程间通信方式(IPC)进行通信。

这样,通过将多个不同的程序打包的同一个安装程序中,使得用户在使用该项目的功能时,无需安装多个安装程序,简化了安装程序的安装过程。

本公开实施例提供了一种安装程序生成方法,应用于第一设备,包括:响应于目标项目的安装程序生成请求,配置包含共有功能的第一应用程序、不同特有功能分别对应的第二应用程序、包含第一应用程序和第二应用程序的依赖功能的服务程序;基于第一应用程序、第二应用程序以及服务程序,生成目标项目的安装程序。这样,同一个软件项目中相同的共有功能和相同的依赖功能只需要开发一次,并打包到相同的安装程序中,因此,无需重复开发同一种功能,降低了安装程序的开发难度和维护成本,简化了安装程序的安装过程。

在本公开另一种实施方式中,提供了一种安装程序运行方法,并对安装程序运行方法进行具体的说明。

图3示出了本公开实施例提供的一种安装程序运行方法的流程示意图。该模板生成方法由第二设备执行。第二设备可以理解为安装程序的运行设备,例如是不同用户的手机、电脑、平板等客户端。

如图3所示,该安装程序生成方法可以包括如下步骤。

S310、响应于目标项目的安装请求,将目标项目的安装程序解压至指定路径,并将指定路径添加至注册表,其中,目标项目的安装程序包括第一应用程序、第二应用程序以及服务程序,第一应用程序、第二应用程序以及服务程序通过响应于目标项目的安装程序生成请求后配置得到,第一应用程序包含共有功能,不同第二应用程序分别对应不同的特有功能,服务程序包含第一应用程序和第二应用程序的依赖功能。

在本实施例中,当用户在各自的第二设备上使用目标项目的功能时,首先将安装程序解压至指定路径,以使安装程序被安装到第二设备上。

可选的,指定路径进一步包括第一应用程序、不同的第二应用程序、服务程序分别对应的安装路径以及这三种程序中不同功能的案子路径,以使后续使用其中一个或多个程序时,从待使用的程序对应的安装路径下调用所述待使用的程序即可。

可以理解的是,由于目标项目只对应一个安装程序,因此,使用目标项目的功能时,只需要安装一个安装程序即可,解决了用户需要下载和安装多个应用程序的问题,简化了用户的操作流程。

可以理解的是,由于安装程序中的共有功能统一配置到第一应用程序,依赖功能统一配置到服务程序,不同的第二应用程序承载不同的特有功能,这样,实现了对共有功能和依赖功能进行集中开发,降低了安装程序的包体积,方便快速安装和运行安装程序。

S320、运行指定路径下解压后的安装程序。

在本实施例中,安装程序在第二设备上安装完成后,从指定路径下查找解压后的安装程序并运行。

在本实施例中,安装程序的运行方式具体包括:S3201、运行解压后的安装程序中第一应用程序的共有功能;S3202、基于第一应用程序的共有功能,从解压后的安装程序中调用任意一个第二应用程序,并运行当前被调用的第二应用程序对应的特有功能。

其中,S3201具体包括:通过共有功能中的登录功能和目标业务对象的资源获取功能,获取用户登录信息和目标业务对象的相关参数;在用户登录信息和目标业务对象的相关参数通过校验的情况下,利用共有功能中的设备检测功能进行硬件设备检测;在硬件设备通过检测的情况下,运行共有功能中的共有调度功能;

相应的,S3202具体包括:通过共有调度功能与当前被调用的第二应用程序中的特有调度功能进行进程间通信,并运行当前被调用的第二应用程序对应的目标业务对象的互动功能。

具体的参见图4所示的安装程序运行过程的逻辑示意图,图4以安装程序是学习软件并利用该学习软件播放课件为例进行解释。首先,用户在学习软件上输入登录信息和课程信息,则第二设备对登录信息和课程信息进行校验,若登录信息和课程信息通过校验,则第二设备继续利用第一应用程序1中共有功能的设备检测功能进行硬件设备检测,具体对摄像头和麦克风等硬件进行检测;接着,在硬件设备通过检测的情况下,从注册表的指定路径中查找共有调度功能的安装路径,并运行共有功能中的共有调度功能;进一步的,通过共有调度功能与当前被调用的第二应用程序(例如第二应用程序2)中的特有调度功能进行进程间通信(IPC),以确定当前被调用的第二应用程序(例如第二应用程序2),并运行当前被调用的第二应用程序(例如第二应用程序2)对应的课表播放功能。

本公开实施例提供了一种安装程序运行方法,应用于第二设备,包括:响应于目标项目的安装请求,将目标项目的安装程序解压至指定路径,并将指定路径添加至注册表,其中,目标项目的安装程序包括第一应用程序、第二应用程序以及服务程序,第一应用程序、第二应用程序以及服务程序通过响应于目标项目的安装程序生成请求后配置得到,第一应用程序包含共有功能,不同第二应用程序分别对应不同的特有功能,服务程序包含第一应用程序和第二应用程序的依赖功能;运行指定路径下解压后的安装程序。当使用目标项目的功能时,只需要安装一个安装程序即可,简化了用户的操作流程,此外,安装程序中的共有功能统一配置到第一应用程序,依赖功能统一配置到服务程序,降低了安装程序的包体积,方便快速安装和运行安装程序。

在一些实施例中,当用户在安装程序上进行功能切换时,第二设备还可以执行如下步骤:响应于功能切换请求,基于第一应用程序的共有功能,对除了当前已被调用的第二应用程序继续进行调用,运行下一被调用的第二应用程序对应的特有功能,并销毁当前已被调用的第二应用程序。

继续参见图4,在运行当前被调用的第二应用程序(例如第二应用程序2)对应的课表播放功能的过程中,如果用户想要调取小游戏,向第二设备发送功能切换操作,则第二设备响应于该操作,并利用第一应用程序的共有调度功能与下一被调用的第二应用程序(例如第二应用程序3)中的特有调度功能进行进程间通信(IPC),以确定下一被调用的第二应用程序(例如第二应用程序3),并运行下一被调用的第二应用程序(例如第二应用程序3)对应的小游戏调取功能,同时,销毁当前被调用的第二应用程序(例如第二应用程序2)。

这样,当对第二应用程序进行切换调用时,只需要保留正在运行的第二应用程序,并销毁上一次被调用的第二应用程序,避免多个第二应用程序同时运行,达到降低资源占用的目的。

在一些实施例中,当第一应用程序和/或第二应用程序需要使用服务程序中的依赖功能时,第二设备还可以执行如下步骤:基于第一应用程序对应的共有功能中的共有调度功能,和/或,当前被调用的第二应用程序对应的特有功能中的特有调度功能,从指定路径中获取服务程序的安装路径;基于安装路径调用服务程序,并运行服务程序中的依赖功能;将服务程序中的依赖功能的运行数据反馈至第一应用程序对应的共有功能中的共有调度功能,和/或,将当前被调用的第二应用程序对应的特有功能中的共有调度功能。

继续参见图4,当第一应用程序1和第二应用程序2需要升级时,第一应用程序中的共有调度功能和第二应用程序2对应的特有功能中的特有调度功能,从指定路径中获取服务程序的安装路径,则第二设备基于安装路径调用服务程序,并运行服务程序4中的程序升级服务,以基于调用程序升级服务的运行数据对第一应用程序1和第二应用程序2进行辅助升级。

由此,安装程序运行过程中,能够通过共有调度功能和特有调度功能来实现不同程序之间的通信,保证安装程序平稳有序的运行。

本公开实施例还提供了一种用于实现上述的安装程序生成方法的安装程序生成装置,下面结合图5进行说明。在本公开实施例中,该安装程序生成装置可以为第一设备。第一设备可以理解为安装程序的开发平台。

图5示出了本公开实施例提供的一种安装程序生成装置的结构示意图。

如图5所示,安装程序生成装置500可以包括:

配置模块510,用于响应于目标项目的安装程序生成请求,配置包含共有功能的第一应用程序、不同特有功能分别对应的第二应用程序、包含所述第一应用程序和所述第二应用程序的依赖功能的服务程序;

生成模块520,用于基于所述第一应用程序、所述第二应用程序以及所述服务程序,生成所述目标项目的安装程序。

本公开实施例的一种安装程序生成装置,配置于第一设备,包括:响应于目标项目的安装程序生成请求,配置包含共有功能的第一应用程序、不同特有功能分别对应的第二应用程序、包含第一应用程序和第二应用程序的依赖功能的服务程序;基于第一应用程序、第二应用程序以及服务程序,生成目标项目的安装程序。这样,同一个软件项目中相同的共有功能和相同的依赖功能只需要开发一次,并打包到相同的安装程序中,因此,无需重复开发同一种功能,降低了安装程序的开发难度和维护成本,简化了安装程序的安装过程。

在一些可选的实施例中,所述共有功能包括以下一种或者多种组合:登录功能、设备检测功能、不同业务对象的资源获取功能以及共有调度功能;

所述特有功能包括以下一种或者多种组合:所述不同业务对象的互动功能和特有调度功能;

所述依赖功能包括以下一种或者多种组合:操作系统服务、网络服务、本地服务以及程序升级服务

在一些可选的实施例中,配置模块510具体用于:利用跨平台的桌面应用开发框架执行预先配置的应用程序代码,生成所述第一应用程序、所述第二应用程序以及所述服务程序。

在一些可选的实施例中,生成模块520具体用于:利用自动化构建部署工具对所述第一应用程序、所述第二应用程序以及所述服务程序进行打包处理,生成所述目标项目的安装程序。

需要说明的是,图5所示的安装程序生成装置500可以执行图1-2所示的方法实施例中的各个步骤,并且实现图1-2所示的方法实施例中的各个过程和效果,在此不做赘述。

本公开实施例还提供了一种用于实现上述的安装程序运行方法的安装程序运行装置,下面结合图6进行说明。在本公开实施例中,该安装程序运行装置可以为第二设备。第二设备可以理解为安装程序的运行设备,例如是不同用户的手机、电脑、平板等客户端。

图6示出了本公开实施例提供的一种安装程序运行装置的结构示意图。

如图6所示,安装程序运行装置600可以包括:

安装模块610,用于响应于所述目标项目的安装请求,将所述目标项目的安装程序解压至指定路径,并将所述指定路径添加至注册表,其中,所述目标项目的安装程序包括第一应用程序、第二应用程序以及服务程序,所述第一应用程序、所述第二应用程序以及所述服务程序通过响应于所述目标项目的安装程序生成请求后配置得到,所述第一应用程序包含共有功能,不同第二应用程序分别对应不同的特有功能,所述服务程序包含所述第一应用程序和所述第二应用程序的依赖功能;

运行模块620,用于运行所述指定路径下解压后的安装程序。

本公开实施例的一种安装程序生成装置,配置于第二设备,包括:响应于目标项目的安装请求,将目标项目的安装程序解压至指定路径,并将指定路径添加至注册表,其中,目标项目的安装程序包括第一应用程序、第二应用程序以及服务程序,第一应用程序、第二应用程序以及服务程序通过响应于目标项目的安装程序生成请求后配置得到,第一应用程序包含共有功能,不同第二应用程序分别对应不同的特有功能,服务程序包含第一应用程序和第二应用程序的依赖功能;运行指定路径下解压后的安装程序。当使用目标项目的功能时,只需要安装一个安装程序即可,简化了用户的操作流程,此外,安装程序中的共有功能统一配置到第一应用程序,依赖功能统一配置到服务程序,降低了安装程序的包体积,方便快速安装和运行安装程序。

在一些可选的实施例中,运行模块620,包括:

第一运行单元,用于运行所述解压后的安装程序中第一应用程序的共有功能;

第二运行单元,用于基于所述第一应用程序的共有功能,从所述解压后的安装程序中调用任意一个第二应用程序,并运行当前被调用的第二应用程序对应的特有功能。

在一些可选的实施例中,第一运行单元具体用于:通过所述共有功能中的登录功能和目标业务对象的资源获取功能,获取用户登录信息和目标业务对象的相关参数;

在所述用户登录信息和所述目标业务对象的相关参数通过校验的情况下,利用所述共有功能中的设备检测功能进行硬件设备检测;

在硬件设备通过检测的情况下,运行所述共有功能中的共有调度功能;

相应的,第二运行单元具体用于:通过所述共有调度功能与所述当前被调用的第二应用程序中的特有调度功能进行进程间通信,并运行所述当前被调用的第二应用程序对应的目标业务对象的互动功能。

在一些可选的实施例中,该装置还包括:

功能切换模块,用于响应于功能切换操作,基于所述第一应用程序的共有调度功能,对除了所述当前已被调用的第二应用程序继续进行调用,运行下一被调用的第二应用程序对应的特有功能,并销毁所述当前已被调用的第二应用程序

在一些可选的实施例中,该装置还包括:

获取模块,用于基于所述第一应用程序对应的共有功能中的共有调度功能,和/或,所述当前被调用的第二应用程序对应的特有功能中的特有调度功能,从所述指定路径中获取所述服务程序的安装路径;

依赖功能运行模块,用于基于所述安装路径调用所述服务程序,并运行所述服务程序中的依赖功能;

反馈模块,用于将所述服务程序中的依赖功能的运行数据反馈至所述第一应用程序对应的共有功能中的共有调度功能,和/或,将所述当前被调用的第二应用程序对应的特有功能中的共有调度功能。

需要说明的是,图6所示的安装程序生成装置600可以执行图3-4所示的方法实施例中的各个步骤,并且实现图3-4所示的方法实施例中的各个过程和效果,在此不做赘述。

本公开示例性实施例还提供一种电子设备,包括:至少一个处理器;以及与至少一个处理器通信连接的存储器。存储器存储有能够被至少一个处理器执行的计算机程序,计算机程序在被至少一个处理器执行时用于使电子设备执行根据本公开实施例的方法。

本公开示例性实施例还提供一种存储有计算机程序的非瞬时计算机可读存储介质,其中,计算机程序在被计算机的处理器执行时用于使计算机执行根据本公开实施例的方法。

本公开示例性实施例还提供一种计算机程序产品,包括计算机程序,其中,计算机程序在被计算机的处理器执行时用于使计算机执行根据本公开实施例的方法。

参考图7,现将描述可以作为本公开的服务端或客户端的电子设备700的结构框图,其是可以应用于本公开的各方面的硬件设备的示例,该电子设备700可以是上述第一设备或者第二设备。电子设备旨在表示各种形式的数字电子的计算机设备,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务端、刀片式服务端、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。

如图7所示,电子设备700包括计算单元701,其可以根据存储在只读存储器(ROM)702中的计算机程序或者从存储单元708加载到随机访问存储器(RAM)703中的计算机程序,来执行各种适当的动作和处理。在RAM703中,还可存储电子设备700操作所需的各种程序和数据。计算单元701、ROM702以及RAM703通过总线704彼此相连。输入/输出(I/O)接口705也连接至总线704。

电子设备700中的多个部件连接至I/O接口705,包括:输入单元706、输出单元707、存储单元708以及通信单元709。输入单元706可以是能向电子设备700输入信息的任何类型的设备,输入单元706可以接收输入的数字或字符信息,以及产生与电子设备的用户设置和/或功能控制有关的键信号输入。输出单元707可以是能呈现信息的任何类型的设备,并且可以包括但不限于显示器、扬声器、视频/音频输出终端、振动器和/或打印机。存储单元708可以包括但不限于磁盘、光盘。通信单元709允许电子设备700通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据,并且可以包括但不限于调制解调器、网卡、红外通信设备、无线通信收发机和/或芯片组,例如蓝牙TM设备、WiFi设备、WiMax设备、蜂窝通信设备和/或类似物。

计算单元701可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元701的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元701执行上文所描述的各个方法和处理。例如,在一些实施例中,安装程序生成方法或者安装程序运行方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元708。在一些实施例中,计算机程序的部分或者全部可以经由ROM702和/或通信单元709而被载入和/或安装到电子设备700上。在一些实施例中,计算单元701可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行安装程序生成方法或者安装程序运行方法。

用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务端上执行。

在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。

如本公开使用的,术语“机器可读介质”和“计算机可读介质”指的是用于将机器指令和/或数据提供给可编程处理器的任何计算机程序产品、设备、和/或装置(例如,磁盘、光盘、存储器、可编程逻辑装置(PLD)),包括,接收作为机器可读信号的机器指令的机器可读介质。术语“机器可读信号”指的是用于将机器指令和/或数据提供给可编程处理器的任何信号。

为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。

可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务端)、或者包括中间件部件的计算系统(例如,应用服务端)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。

计算机系统可以包括客户端和服务端。客户端和服务端一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务端关系的计算机程序来产生客户端和服务端的关系。

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

以上仅是本公开的具体实施方式,使本领域技术人员能够理解或实现本公开。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本公开的精神或范围的情况下,在其它实施例中实现。因此,本公开将不会被限制于本文的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

相关技术
  • 无人驾驶汽车升级包安装方法、装置、设备及存储介质
  • 一种自动化编译安装方法、装置、设备及存储介质
  • Java web应用的安装包生成方法、装置、存储介质和设备
  • 软件自助安装方法、装置、计算机设备及存储介质
  • 一种服务器系统安装方法、装置、设备及可读存储介质
  • 一种小程序生成运行方法、装置、设备及存储介质
  • 一种小程序生成运行方法、装置、设备及存储介质
技术分类

06120116492540