CN115981721A - 软件功能配置方法、装置、电子设备、存储介质及车辆 - Google Patents
软件功能配置方法、装置、电子设备、存储介质及车辆 Download PDFInfo
- Publication number
- CN115981721A CN115981721A CN202310065123.2A CN202310065123A CN115981721A CN 115981721 A CN115981721 A CN 115981721A CN 202310065123 A CN202310065123 A CN 202310065123A CN 115981721 A CN115981721 A CN 115981721A
- Authority
- CN
- China
- Prior art keywords
- software
- configuration
- configuration file
- software product
- different
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Stored Programmes (AREA)
Abstract
本公开提供一种软件功能配置方法、装置、电子设备、存储介质及车辆,其中,应用于至少两个不同软件项目中的同一软件产品,所述方法包括:获取至少两个配置文件,其中,每个所述配置文件均与一种所述软件项目相对应,不同的配置文件所对应的软件项目不同;将每个所述配置文件写入与之对应的所述软件项目中的所述软件产品;根据所述配置文件为所述软件产品配置目标功能。本申请提供的方法能够通过不同的配置文件使同一软件产品在不同项目中实现不同功能,实现了软件产品在多项目中的应用,且无需对软件产品本身做其他变动,节约了软件开发、测试和维护成本。
Description
技术领域
本公开涉及计算机技术领域,尤其涉及一种软件功能配置方法、装置、电子设备、存储介质及车辆。
背景技术
软件开发常常遇到一些需要进行差异化调整的场景,例如,当软件产品被应用到多个项目中,各个项目的需求基本相同,但对于不同项目也会有一些功能上的差异。为了满足软件产品的差异化需求,相关技术中通常会修改出不同版本的代码,并为每个版本分别产出应用包,但这样会导致软件开发和测试的工作量非常大,代码臃肿,且维护难度高。
发明内容
有鉴于此,本公开的目的在于提出一种软件功能配置方法、装置、电子设备、存储介质及车辆。
基于上述目的,本公开提供了软件功能配置方法,应用于至少两个不同软件项目中的同一软件产品,所述方法包括:获取至少两个配置文件,其中,每个所述配置文件均与一种所述软件项目相对应,不同的配置文件所对应的软件项目不同;将每个所述配置文件写入与之对应的所述软件项目中的所述软件产品;根据所述配置文件为所述软件产品配置目标功能。可选地,每个所述配置文件均包括写入地址,每个所述配置文件的写入地址均与一个所述软件项目相对应,不同的配置文件的写入地址所对应的软件项目不同;所述将每个所述配置文件写入与之对应的所述软件项目中的所述软件产品,包括:根据所述写入地址,将每个所述配置文件写入与之对应的所述软件项目中的所述软件产品。
可选地,所述软件产品包括配置服务以及目标应用,所述根据所述配置文件为所述软件产品配置目标功能,包括:利用所述配置服务解析所述配置文件,得到执行数据;利用所述目标应用根据所述执行数据为所述软件产品配置目标功能。
可选地,所述利用所述配置服务解析所述配置文件,得到执行数据,包括:利用所述配置服务解析所述配置文件,得到解析数据;根据所述解析数据计算得到所述执行数据。
可选地,在所述利用所述配置服务解析所述配置文件,得到解析数据之后,所述方法还包括:将所述解析数据序列化为二进制数据流,并存储所述二进制数据流;将所述二进制数据流反序列化为所述解析数据。
可选地,所述配置文件包括所述目标功能的功能名称以及功能值,所述功能值包括常量和/或逻辑运算的结果。
基于同一发明构思,本申请还提供了一种软件功能配置装置,其特征在于,应用于至少两个不同软件项目中的同一软件产品,所述装置包括:获取模块,被配置为获取至少两个配置文件,其中,每个所述配置文件均与一种所述软件项目相对应,不同的配置文件所对应的软件项目不同;写入模块,被配置为将每个所述配置文件写入与之对应的所述软件项目中的所述软件产品;执行模块,被配置为根据所述配置文件为所述软件产品配置目标功能。
基于同一发明构思,本申请还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现任意一项所述软件功能配置方法。
基于同一发明构思,本申请还提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使计算机执行任意一项所述软件功能配置方法。
基于同一发明构思,本申请还提供了一种车辆,所述车辆包括所述软件功能配置装置或所述电子设备。
从上面所述可以看出,本公开提供的软件功能配置方法、装置、电子设备、存储介质及车辆,其中,所述方法应用于至少两个不同软件项目中的同一软件产品,所述方法包括:获取至少两个配置文件,其中,每个所述配置文件均与一种所述软件项目相对应,不同的配置文件所对应的软件项目不同;将每个所述配置文件写入与之对应的所述软件项目中的所述软件产品;根据所述配置文件为所述软件产品配置目标功能。本申请提供的方法能够通过不同的配置文件使同一软件产品在不同项目中实现不同功能,实现了软件产品在多项目中的应用,且无需对软件产品本身做其他变动,节约了软件开发、测试和维护成本。
附图说明
为了更清楚地说明本公开或相关技术中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本公开实施例的软件功能配置方法的流程示意图;
图2为本公开实施例的配置文件写入软件产品的流程示意图;
图3为本公开实施例的软件功能配置装置的结构示意图;
图4为本公开实施例的电子设备硬件结构示意图。
具体实施方式
为使本公开的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本公开进一步详细说明。
需要说明的是,除非另外定义,本公开实施例使用的技术术语或者科学术语应当为本公开所属领域内具有一般技能的人士所理解的通常意义。本公开实施例中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。“上”、“下”、“左”、“右”等仅用于表示相对位置关系,当被描述对象的绝对位置改变后,则该相对位置关系也可能相应地改变。
如背景技术部分所述,软件产品对于不同项目会有一些功能上的差异,例如,同一软件产品在不同项目中的下拉面板的快捷设置不同,或快捷设置项目种类及排序不同。并且,软件产品在开发时还会遇到某一功能要在项目的不同阶段上线或下线的情况。对于上述场景,相关技术中需要修改软件代码,同时维护多个代码分支,为每个项目或系统分别产出应用包,但是缺点在于软件开发和测试的工作量非常大,且维护难度高。
相关技术中,为了节约开发成本,几个相似的项目可以使用共线共版本的开发方式,以满足软件在不同项目间的差异化需求。但这种方式需要预先把所有代码写入每一个系统,这就导致代码臃肿,且不易扩展维护。
有鉴于此,本申请的一个实施例提供了一种软件功能配置方法,其特征在于,应用于至少两个不同软件项目中的同一软件产品,如图1所示,所述方法包括:
步骤S101、获取至少两个配置文件,其中,每个所述配置文件均与一种所述软件项目相对应,不同的配置文件所对应的软件项目不同。具体实施时,所述配置文件包括的代码能够在与之对应的软件项目中实现差异化功能。具体实施时,不同的软件项目可以为同一软件产品的不同应用环境,例如同一软件产品在不同型号的车辆上的应用;不同的软件项目也可以为一个整体项目的不同阶段,例如前期阶段项目和后期阶段项目,所有由于不同的配置文件体现出不同功能的项目均可以视作不同的软件项目。
步骤S102、将每个所述配置文件写入与之对应的所述软件项目中的所述软件产品。
步骤S103、根据所述配置文件为所述软件产品配置目标功能。配置目标功能即为体现每个配置文件差异化配置的过程,具体的,可以利用所述软件产品根据所述配置文件执行对应的目标操作以体现配置的目标功能。具体实施时,当配置文件被软件产品后,可以为任一软件项目中的软件产品根据写入其中的配置文件配置目标功能,也可以为所有软件项目中的软件产品根据写入其中的配置文件配置目标功能。
本申请提供的方法能够通过不同的配置文件使同一软件产品在不同项目中实现不同功能,实现了软件产品在多项目中的应用,且无需对软件产品本身做其他变动,节约了软件开发、测试和维护成本。一种具体的实施例中,所述配置文件仅包括差异化配置代码,这样就无需将通用配置重复写入软件产品,达到代码的最大复用。
并且,当软件产品需要进行功能更新时,可以利用本申请实施例上述提供的方法将更新中的差异化内容通过配置文件写入软件产品,避免整体修改代码,便于后期维护。
一种具体的实施例中,所述软件项目软件项目包括第一软件项目、第二软件项目以及第三软件项目,所述配置文件包括第一配置文件、第二配置文件、第三配置文件,如图2所示,所述步骤S101进一步包括:获取所述第一配置文件、所述第二配置文件、所述第三配置文件,其中,所述第一配置文件与所述第一软件项目相对应,所述第二配置文件与所述第二软件项目相对应,所述第三配置文件与所述第三软件项目相对应。
所述步骤S102进一步包括:将所述第一配置文件写入所述第一软件项目中的所述软件产品,将所述第二配置文件写入所述第二软件项目中的所述软件产品,将所述第三配置文件写入所述第三软件项目中的所述软件产品。
所述步骤S103进一步包括:根据所述第一配置文件为所述第一软件项目中的软件产品配置目标功能,根据所述第二配置文件为所述第二软件项目中的软件产品配置目标功能,根据所述第三配置文件为所述第三软件项目中的软件产品配置目标功能。
当上述实施例中的方法应用于车辆,所述不同的软件项目为不同型号的车辆,所述软件产品为每个车辆的操作系统,一种更为具体的实施例中,由于不同型号车辆的配置限制,除相同的通用配置以外,第一型号、第二型号、第三型号三种车辆的操作系统分别需要实现第一功能、第二功能、第三功能(第二型号的车辆的操作系统无需实现第一功能或第三功能,其他型号同理),此时就可以将包括了第一功能的代码的第一配置文件写入第一型号车辆的操作系统,将包括了第二功能的代码的第二配置文件写入第二型号车辆的操作系统,将包括了第三功能的代码的第三配置文件写入第三型号车辆的操作系统,以实现不同操作系统的差异化配置。
在一些实施例中,每个所述配置文件均包括写入地址,每个所述配置文件的写入地址均与一个所述软件项目相对应,不同的配置文件的写入地址所对应的软件项目不同,所述步骤S102包括:
根据所述写入地址,将每个所述配置文件写入与之对应的所述软件项目中的所述软件产品。
具体实施时,步骤S101中获取的配置文件为压缩包或文件夹的形式,所以,不同的配置文件均存放在不同的文件地址中,也称文件目录,例如Windows系统中某一文件的存放位置为C:\Users\DELL\Desktop\新建文件夹,该文件地址或文件目录即为上述实施例中的写入地址,在将配置文件写入对应的软件项目的软件产品时,可从不同的写入地址中获取对应的配置文件。
在一些实施例中,所述软件产品包括配置服务以及目标应用,所述步骤S103包括:
步骤S201、利用所述配置服务解析所述配置文件,得到执行数据。一种具体的实施例中,所述配置文件编写完成后,上传至云端数据库,所述配置服务从所述云端数据库中获取所述配置文件。
步骤S202、利用所述目标应用根据所述执行数据为所述软件产品配置目标功能。
具体实施时,所述配置服务与目标应用之间拥有预设的通用接口来进行数据通信,所述配置服务主要用于解析配置文件,所述执行数据中包括操作指令,所述目标应用可以直接根据操作指令为所述软件产品配置目标功能,无需再次进行解析。
所述配置服务与所述目标应用可以在所述软件产品初次进入项目时与软件产品一同写入,所述配置文件也可以在所述软件产品初次进入项目时与所述配置服务以及所述目标应用同时写入软件产品。当软件产品需要后续更新功能时,配置文件则单独写入已经包括了配置服务以及目标应用的软件产品。
一种具体的实施例中,在利用所述配置服务解析所述配置文件得到执行数据之后,所述配置服务会存储所述执行数据作为缓存数据。当下一次需要为所述软件产品配置目标功能时,所述配置服务会将所述缓存数据返回给目标应用,避免重复的计算工作。
具体实施时,响应于需要为所述软件产品配置目标功能,所述步骤S103还包括:
响应于所述配置服务中存有所述缓存数据,则利用所述目标应用根据所述缓存数据为所述软件产品配置目标功能。
响应于所述配置服务中不存有所述缓存数据,且所述配置服务能够获取对应的配置文件,则利用所述配置服务解析所述配置文件,得到执行数据,并利用所述目标应用根据所述执行数据为所述软件产品配置目标功能。
响应于所述配置服务中不存有所述缓存数据,且所述配置服务无法获取与对应的配置文件,则利用所述配置服务读取并解析通用配置文件,并利用所述目标应用根据所述通用配置文件为所述软件产品配置目标功能。若无法根据通用配置文件为所述软件产品配置目标功能,则报错。
在一些实施例中,所述步骤S201包括:
步骤S301、利用所述配置服务解析所述配置文件,得到解析数据;
步骤S302、根据所述解析数据计算得到所述执行数据。
具体实施时,当所述配置服务获取到配置文件,首先将配置文件解析为用于计算的数据,再根据解析数据计算用于所述目标应用的执行数据,所述目标应用可以直接根据执行数据为所述软件产品配置目标功能,无需再次进行解析和计算,同时也减少了目标应用与配置服务之间进行通信的数据量,提升通信效率。
在一些实施例中,在所述步骤S301与所述步骤S302之间所述方法还包括:
将所述解析数据序列化为二进制数据流,并存储所述二进制数据流;
将所述二进制数据流反序列化为所述解析数据。
将所述解析数据序列化为二进制数据流后存储,占用的存储空间更小,且数据传输和持久化存储效率更快,进一步提升数据传输存储计算的效率以及软件功能配置的效率。
一种具体的实施例中,在所述配置服务存储所述执行数据作为所述缓存数据后,所述方法进一步包括:将所述缓存数据序列化为二进制数据流并存储。
在一些实施例中,所述配置文件包括所述目标功能的功能名称以及功能值,所述功能值包括常量和/或逻辑运算的结果,所述逻辑运算中支持与、或、非的运算符号以及逻辑。所述功能值支持与所述配置文件所对应的软件项目的属性以及其他配置项。
具体实施时,所述功能名称为需要进行差异化配置的功能的名称,例如,若需要将一个下拉图标在屏幕上的位置设置为坐标X与坐标Y交点处,此时的功能名称即为下拉图标A的位置,功能值可以包括坐标X与坐标Y的常量值。
需要说明的是,上述功能值虽然包括常量和逻辑运算,但该常量和逻辑运算仅为体现配置功能的运算,例如,将一个下拉图标在屏幕上的位置设置为坐标X与坐标Y交点处,包括所述功能值的配置文件在后端仍需经过配置服务解析计算成代码供目标应用使用。
需要说明的是,本公开实施例的方法可以由单个设备执行,例如一台计算机或服务器等。本实施例的方法也可以应用于分布式场景下,由多台设备相互配合来完成。在这种分布式场景的情况下,这多台设备中的一台设备可以只执行本公开实施例的方法中的某一个或多个步骤,这多台设备相互之间会进行交互以完成所述的方法。
需要说明的是,上述对本公开的一些实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于上述实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
基于同一发明构思,与上述任意实施例方法相对应的,本公开还提供了一种软件功能配置装置,应用于至少两个不同软件项目中的同一软件产品,如图3所示,所述装置包括:
获取模块10,被配置为获取至少两个配置文件,其中,每个所述配置文件均与一种所述软件项目相对应,不同的配置文件所对应的软件项目不同。
写入模块20,被配置为将每个所述配置文件写入与之对应的所述软件项目中的所述软件产品。
执行模块30,被配置为根据所述配置文件为所述软件产品配置目标功能。
本申请提供的装置能够通过不同的配置文件使同一软件产品在不同项目中实现不同功能,实现了软件产品在多项目中的应用,且无需对软件产品本身做其他变动,节约了软件开发、测试和维护成本。一种具体的实施例中,所述配置文件仅包括差异化配置代码,这样就无需将通用配置重复写入软件产品,达到代码的最大复用。
在一些实施例中,每个所述配置文件均包括写入地址,每个所述配置文件的写入地址均与一个所述软件项目相对应,不同的配置文件的写入地址所对应的软件项目不同,所述写入模块20还被配置为:
根据所述写入地址,将每个所述配置文件写入与之对应的所述软件项目中的所述软件产品。
在一些实施例中,所述软件产品包括配置服务以及目标应用,所述执行模块30还被配置为:
利用所述配置服务解析所述配置文件,得到执行数据;
利用所述目标应用根据所述执行数据为所述软件产品配置目标功能。
在一些实施例中,所述执行模块30还被配置为:
利用所述配置服务解析所述配置文件,得到解析数据;
根据所述解析数据计算得到所述执行数据。
在一些实施例中,所述执行模块30还被配置为:
将所述解析数据序列化为二进制数据流,并存储所述二进制数据流;
将所述二进制数据流反序列化为所述解析数据。
在一些实施例中,所述配置文件包括所述目标功能的功能名称以及功能值,所述功能值包括常量和/或逻辑运算的结果。
为了描述的方便,描述以上装置时以功能分为各种模块分别描述。当然,在实施本公开时可以把各模块的功能在同一个或多个软件和/或硬件中实现。
上述实施例的装置用于实现前述任一实施例中相应的软件功能配置方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
基于同一发明构思,与上述任意实施例方法相对应的,本公开还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上任意一实施例所述的软件功能配置方法。
图4示出了本实施例所提供的一种更为具体的电子设备硬件结构示意图,该设备可以包括:处理器1010、存储器1020、输入/输出接口1030、通信接口1040和总线1050。其中处理器1010、存储器1020、输入/输出接口1030和通信接口1040通过总线1050实现彼此之间在设备内部的通信连接。
处理器1010可以采用通用的CPU(Central Processing Unit,中央处理器)、微处理器、应用专用集成电路(Application Specific Integrated Circuit,ASIC)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本说明书实施例所提供的技术方案。
存储器1020可以采用ROM(Read Only Memory,只读存储器)、RAM(Random AccessMemory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器1020可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器1020中,并由处理器1010来调用执行。
输入/输出接口1030用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。
通信接口1040用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如USB、网线等)实现通信,也可以通过无线方式(例如移动网络、WIFI、蓝牙等)实现通信。
总线1050包括一通路,在设备的各个组件(例如处理器1010、存储器1020、输入/输出接口1030和通信接口1040)之间传输信息。
需要说明的是,尽管上述设备仅示出了处理器1010、存储器1020、输入/输出接口1030、通信接口1040以及总线1050,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本说明书实施例方案所必需的组件,而不必包含图中所示的全部组件。
上述实施例的电子设备用于实现前述任一实施例中相应的软件功能配置方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
基于同一发明构思,与上述任意实施例方法相对应的,本公开还提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使所述计算机执行如上任一实施例所述的软件功能配置方法。
本实施例的计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。
上述实施例的存储介质存储的计算机指令用于使所述计算机执行如上任一实施例所述的软件功能配置方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
基于同一发明构思,与上述任意实施例方法相对应的,本公开还提供了一种车辆,所述车辆包括上述实施例的电子设备或系统功能配置装置。
所述车辆包括ECU(Electronic Control Unit,电子控制单元),具体实施时,上述实施例中的操作系统为车辆ECU,不同操作系统为不同型号车辆的ECU,所述车辆ECU能够连接云网,或通过总线与外部进行数据交互,进而实现本申请上述实施例的软件功能配置方法。
本申请提供的车辆能够通过不同的配置文件使不同系统实现不同功能,无需对系统或系统中的软件应用做其他变动,节约了软件开发、测试和维护成本。一种具体的实施例中,所述配置文件仅包括差异化配置代码,这样就无需将通用配置重复写入系统,达到代码的最大复用。
上述实施例车辆的电子设备或系统功能配置装置执行如上任一实施例所述的软件功能配置方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本公开的范围(包括权利要求)被限于这些例子;在本公开的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本公开实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。
另外,为简化说明和讨论,并且为了不会使本公开实施例难以理解,在所提供的附图中可以示出或可以不示出与集成电路(IC)芯片和其它部件的公知的电源/接地连接。此外,可以以框图的形式示出装置,以便避免使本公开实施例难以理解,并且这也考虑了以下事实,即关于这些框图装置的实施方式的细节是高度取决于将要实施本公开实施例的平台的(即,这些细节应当完全处于本领域技术人员的理解范围内)。在阐述了具体细节(例如,电路)以描述本公开的示例性实施例的情况下,对本领域技术人员来说显而易见的是,可以在没有这些具体细节的情况下或者这些具体细节有变化的情况下实施本公开实施例。因此,这些描述应被认为是说明性的而不是限制性的。
尽管已经结合了本公开的具体实施例对本公开进行了描述,但是根据前面的描述,这些实施例的很多替换、修改和变型对本领域普通技术人员来说将是显而易见的。例如,其它存储器架构(例如,动态RAM(DRAM))可以使用所讨论的实施例。
本公开实施例旨在涵盖落入所附权利要求的宽泛范围之内的所有这样的替换、修改和变型。因此,凡在本公开实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本公开的保护范围之内。
Claims (10)
1.一种软件功能配置方法,其特征在于,应用于至少两个不同软件项目中的同一软件产品,所述方法包括:
获取至少两个配置文件,其中,每个所述配置文件均与一种所述软件项目相对应,不同的配置文件所对应的软件项目不同;
将每个所述配置文件写入与之对应的所述软件项目中的所述软件产品;
根据所述配置文件为所述软件产品配置目标功能。
2.根据权利要求1所述的方法,其特征在于,每个所述配置文件均包括写入地址,每个所述配置文件的写入地址均与一个所述软件项目相对应,不同的配置文件的写入地址所对应的软件项目不同;
所述将每个所述配置文件写入与之对应的所述软件项目中的所述软件产品,包括:
根据所述写入地址,将每个所述配置文件写入与之对应的所述软件项目中的所述软件产品。
3.根据权利要求1所述的方法,其特征在于,所述软件产品包括配置服务以及目标应用,所述根据所述配置文件为所述软件产品配置目标功能,包括:
利用所述配置服务解析所述配置文件,得到执行数据;
利用所述目标应用根据所述执行数据为所述软件产品配置目标功能。
4.根据权利要求3所述的方法,其特征在于,所述利用所述配置服务解析所述配置文件,得到执行数据,包括:
利用所述配置服务解析所述配置文件,得到解析数据;
根据所述解析数据计算得到所述执行数据。
5.根据权利要求4所述的方法,其特征在于,在所述利用所述配置服务解析所述配置文件,得到解析数据之后,所述方法还包括:
将所述解析数据序列化为二进制数据流,并存储所述二进制数据流;
将所述二进制数据流反序列化为所述解析数据。
6.根据权利要求1所述的方法,其特征在于,所述配置文件包括所述目标功能的功能名称以及功能值,所述功能值包括常量和/或逻辑运算的结果。
7.一种软件功能配置装置,其特征在于,应用于至少两个不同软件项目中的同一软件产品,所述装置包括:
获取模块,被配置为获取至少两个配置文件,其中,每个所述配置文件均与一种所述软件项目相对应,不同的配置文件所对应的软件项目不同;
写入模块,被配置为将每个所述配置文件写入与之对应的所述软件项目中的所述软件产品;
执行模块,被配置为根据所述配置文件为所述软件产品配置目标功能。
8.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至6任意一项所述的方法。
9.一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,其特征在于,所述计算机指令用于使计算机执行权利要求1至6任意一项所述的方法。
10.一种车辆,其特征在于,所述车辆包括权利要求7所述的装置或权利要求8所述的电子设备。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310065123.2A CN115981721A (zh) | 2023-01-17 | 2023-01-17 | 软件功能配置方法、装置、电子设备、存储介质及车辆 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310065123.2A CN115981721A (zh) | 2023-01-17 | 2023-01-17 | 软件功能配置方法、装置、电子设备、存储介质及车辆 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115981721A true CN115981721A (zh) | 2023-04-18 |
Family
ID=85962506
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310065123.2A Pending CN115981721A (zh) | 2023-01-17 | 2023-01-17 | 软件功能配置方法、装置、电子设备、存储介质及车辆 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115981721A (zh) |
-
2023
- 2023-01-17 CN CN202310065123.2A patent/CN115981721A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10908925B2 (en) | Dynamic loading method, and target file creation method and apparatus | |
WO2020119485A1 (zh) | 一种页面显示方法、装置、设备及存储介质 | |
CN109597617B (zh) | 基于模板快速生成业务页面的方法和装置 | |
CN105630524A (zh) | 网页文本解析方法、装置和移动终端 | |
CN114115923A (zh) | 一种操作系统搭建方法及系统 | |
CN113885935A (zh) | 资源打包方法、装置、电子设备及计算机可读存储介质 | |
CN112667246A (zh) | 应用功能扩展的方法、装置及电子设备 | |
CN110333843B (zh) | 虚拟机高精度定时器的实现方法、装置及电子设备 | |
CN115981721A (zh) | 软件功能配置方法、装置、电子设备、存储介质及车辆 | |
CN112905381B (zh) | 用于获取调用栈中栈帧信息的方法、装置、设备和介质 | |
CN112506526B (zh) | 数据呈现软件部署方法、装置及电子设备 | |
CN114780134A (zh) | 微应用的配置管理方法及相关设备 | |
CN112073505B (zh) | 在云服务器上进行卸载的方法、控制装置、存储介质 | |
CN114924830A (zh) | 基于nas存储的在线ide代码管理方法及相关设备 | |
CN113760237A (zh) | 编译地址的更新方法、装置、终端设备及可读存储介质 | |
CN114741294A (zh) | 一种页面的调试方法、装置、设备及存储介质 | |
CN114968225A (zh) | 微服务统一构建方法、环境生成方法及相关设备 | |
CN112000319A (zh) | 后勤业务代码生成方法、客户端、电子设备及系统 | |
CN114647411A (zh) | 编程界面加载方法、装置、电子设备及存储介质 | |
CN113961370A (zh) | Bmc与bios通信的方法、装置、服务器及存储介质 | |
CN113704020B (zh) | 固态硬盘的出错现场数据的解析方法以及装置 | |
CN112035078A (zh) | 智能终端屏幕内容的显示方法、系统、及车载终端 | |
CN112882698A (zh) | 开发环境的生成方法及装置、计算机存储介质及电子设备 | |
CN114564226B (zh) | 代码部署方法、装置、电子设备及可读存储介质 | |
CN112559394B (zh) | 系统库访问方法、装置以及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |