组件构建方法、装置及服务器与流程

文档序号:28918097发布日期:2022-02-16 12:01阅读:84来源:国知局
组件构建方法、装置及服务器与流程

1.本技术涉及计算机技术领域,尤其涉及一种组件构建方法、装置及服务器。


背景技术:

2.目前为交付网络(web)应用,一般需要搭建web应用的低代码工具,该低代码工具支持以自定义组件的方式拓展原有工具能力,自定义组件的构建打包方式和配套脚手架需由特定团队维护。由该低代码工具构建的软件包可以被相同的低代码工具平台识别并使用。这种构建打包标准有以下弊端:打包产物仅支持在低代码工具平台使用;多个组件引入同样的依赖被每个组件构建时打入,因此加载页面时通过网络多次传输了相同资源造成了社会资源浪费;现有组件构建打包方案缺少多主题方案,导致组件对多场景web应用的适配不强。综上,现有组件构建存在应用效果比较差的问题。


技术实现要素:

3.为了解决上述技术问题,本技术实施例提供了一种组件构建方法、装置及服务器。
4.第一方面,本技术实施例提供了一种组件构建方法,所述方法包括:通过入口加载器根据入口文件清单获取多个平台的组件入口文件路径、及组件元数据;通过软件开发工具包设置组件的接收参数配置和描述、组件的可发出事件和描述、组件的可被读取数据模型;通过所述软件开发工具包根据所述组件入口文件路径获取各组件源码;通过所述软件开发工具包根据各所述组件源码、所述接收参数配置和描述、所述可发出的事件和描述、所述可被读取的数据模型、所述组件元数据进行编译,以构建运行态组件产物及预览态组件产物。
5.第二方面,本技术实施例提供了一种组件构建装置,所述装置包括:第一获取模块,用于通过入口加载器根据入口文件清单获取多个平台的组件入口文件路径、及组件元数据;设置模块,用于通过软件开发工具包设置组件的接收参数配置和描述、组件的可发出事件和描述、组件的可被读取数据模型;第二获取模块,用于通过所述软件开发工具包根据所述组件入口文件路径获取各组件源码;编译模块,用于通过所述软件开发工具包根据各所述组件源码、所述接收参数配置和描述、所述可发出的事件和描述、所述可被读取的数据模型、所述组件元数据进行编译,以构建运行态组件产物及预览态组件产物。
6.第三方面,本技术实施例提供了一种服务器,包括存储器以及处理器,所述存储器用于存储计算机程序,所述计算机程序在所述处理器运行时执行第一方面提供的组件构建方法。
7.第四方面,本技术实施例提供了一种计算机可读存储介质,其存储有计算机程序,所述计算机程序在处理器上运行时执行第一方面提供的组件构建方法。
8.上述本技术提供的组件构建方法、装置及服务器,通过入口加载器根据入口文件清单获取多个平台的组件入口文件路径、及组件元数据;通过软件开发工具包设置组件的接收参数配置和描述、组件的可发出事件和描述、组件的可被读取数据模型;通过所述软件开发工具包根据所述组件入口文件路径获取各组件源码;通过所述软件开发工具包根据各所述组件源码、所述接收参数配置和描述、所述可发出的事件和描述、所述可被读取的数据模型、所述组件元数据进行编译,以构建运行态组件产物及预览态组件产物。这样,通过提出通用型标准和各种定义,考虑多场景的使用方式,科学的接口设计规范,使得开发者更容易地与进行数据、平台交互,提高多场景web应用的适配度,有效地提高构建的组件在多平台的应用效果。
附图说明
9.为了更清楚地说明本技术的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本技术的某些实施例,因此不应被看作是对本技术保护范围的限定。在各个附图中,类似的构成部分采用类似的编号。
10.图1示出了本技术实施例提供的组件构建方法的一流程示意图;图2示出了本技术实施例提供的组件构建方法的另一流程示意图;图3示出了本技术实施例提供的组件构建装置的一结构示意图;图4示出了本技术实施例提供的服务器的一结构示意图。
具体实施方式
11.下面将结合本技术实施例中附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。
12.通常在此处附图中描述和示出的本技术实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本技术的实施例的详细描述并非旨在限制要求保护的本技术的范围,而是仅仅表示本技术的选定实施例。基于本技术的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本技术保护的范围。
13.在下文中,可在本技术的各种实施例中使用的术语“包括”、“具有”及其同源词仅意在表示特定特征、数字、步骤、操作、元件、组件或前述项的组合,并且不应被理解为首先排除一个或更多个其它特征、数字、步骤、操作、元件、组件或前述项的组合的存在或增加一个或更多个特征、数字、步骤、操作、元件、组件或前述项的组合的可能性。
14.此外,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
15.除非另有限定,否则在这里使用的所有术语(包括技术术语和科学术语)具有与本技术的各种实施例所属领域普通技术人员通常理解的含义相同的含义。所述术语(诸如在一般使用的词典中限定的术语)将被解释为具有与在相关技术领域中的语境含义相同的含义并且将不被解释为具有理想化的含义或过于正式的含义,除非在本技术的各种实施例中
被清楚地限定。
16.实施例1本公开实施例提供了一种组件构建方法。
17.具体的,参见图1,组件构建方法包括:步骤s101,通过入口加载器根据入口文件清单获取多个平台的组件入口文件路径、及组件元数据。
18.在本实施例中,入口加载器是根据入口文件清单动态加载组件的javascript加载器,同时也是组件获取可复用依赖的工具。
19.在本实施例中,所述组件元数据包括:组件基本信息及适配接口模型。组件基本信息包括适配多个平台的入口文件路径和组件介绍、名称、版本、组件类型及适用行业等信息。
20.在本实施例中,入口文件清单中支持配置多种平台的产物路径作为拓展点,并在运行态加载时起到自描述的作用。在入口文件清单中还可以对组件元数据进行定义,使得其它系统和中间件可以识别并处理该组件。入口文件清单支持手动配置、和由软件开发工具包生成的生产版本(production)。
21.在本实施例中,入口文件清单可以由widget.manifest.json进行配置,在widget.manifest.json中,对模式版本(schemaversion)、组件版本(component version)、组件名称(id)、通用唯一标识码(universal unique identifier,uuid)、组件描述(description)、第三方制造商(vendor)、组件标签(tags)、支持平台(supportplatforms)、条目(entries),条目包括预览指向预览条目、运行时指向运行时入口条目、属性指向属性定义条目等。
22.需要补充说明的是,对于组件的通用唯一标识码(universal unique identifier),如果组件名称(id)相同的组件发布不同版本,那么不同版本的组件的uuid应该是不同的。
23.步骤s102,通过软件开发工具包设置组件的接收参数配置和描述、组件的可发出事件和描述、组件的可被读取数据模型。
24.在本实施例中,软件开发工具包(software development kit,sdk)可以抹平多个无代码和低代码工具平台的自定义组件标准的差异,使得开发者在绝大多数情况下无需关注平台的特定限制。
25.在本实施例中,可以提供properties.js文件,properties.js文件是组件的属性定义。 apaas 平台需要解析这个定义并在平台上呈现属性编辑器,并将相应的属性值传递给组件。
26.在本实施例中,属性值传递过程的主要代码如下:const component = (props) =》 {
ꢀꢀ
const {text, object, list, number} = props;//获取传入的参数
ꢀꢀ
const [textvalue, settextvalue] = text;//解构参数
ꢀꢀ
const [objectvalue, setobjectvalue] = object;//解构参数
ꢀꢀ
const [listvalue, setlistvalue] = list;
ꢀꢀ
const [numbervalue, setnumbervalue] = number;
};补充说明的是,属性种类包括字符串(string)、数字(number)、布尔值(boolean)、对象(object)、数组(array)、日期时间(datetime)、表达式(expression)、功能(function)、异步函数(asyncfunction)、向外暴露的方法(exposedfunction)、向外暴露的变量(exposedvariables)、事件(event)、事件触发器(eventemitter)、事件总线(eventbus)、数据源(datasource)、插槽、(slot)、 二进制对象(blob)、字符串输入组件(inputstring)等。
[0027]
进一步补充说明的是,所有表达式(expression)都必须是异步的,并且是可下标的承诺对象,表达式(expression)参数值传递的主要代码如下:{
ꢀꢀꢀꢀ
"label": "foobar",// apaas上显示的字段名
ꢀꢀꢀꢀ
"key": "foobar",//传入组件参数的字段名
ꢀꢀꢀꢀ
"type": "expression",//类型为表达式
ꢀꢀꢀꢀ
"component": "expressioneditor",//使用apaas的表达式编辑器组件来提供表达式参数
ꢀꢀꢀꢀ
"widgetprops": {//传给组件的参数,这里是在要求表达式编辑器必须返回number或string
ꢀꢀꢀꢀꢀꢀꢀꢀ
"returntype": [
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
{
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
"type": "number"
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
},
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
{
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
"type": "string"
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
}
ꢀꢀꢀꢀꢀꢀꢀꢀ
]
ꢀꢀꢀꢀ
}}相应的,也可以通过代码实现功能(function)、异步函数(asyncfunction)、向外暴露的方法(exposedfunction)、向外暴露的变量(exposedvariables)、事件(event)、事件触发器(eventemitter)、事件总线(eventbus)、数据源(datasource)的参数值传递,在此不做限制。
[0028]
在本实施例中,可以通过属性输入小部件(property input widgets)输入对应的属性值。属性输入小部件可以包括:用户输入字符串(inputstring)、用户输入数字(inputnumber)、日期选择、单选(radiogroup)、复选框组(checkboxgroup)、表达是编辑器(expressioneditor)、事件监听器(eventlistener)、事件选择器(eventselector)。
[0029]
步骤s103,通过所述软件开发工具包根据所述组件入口文件路径获取各组件源码。
[0030]
在本实施例中,组件入口文件路径作为拓展点,并在运行态加载时起到自描述的作用。不同组件入口文件路径存放有对应不同的组件码源。
[0031]
步骤s104,通过所述软件开发工具包根据各所述组件源码、所述接收参数配置和描述、所述可发出的事件和描述、所述可被读取的数据模型、所述组件元数据进行编译,以构建运行态组件产物及预览态组件产物。
[0032]
需要说明的是,现有的构建打包工具都是针对低代码和无代码工具平台一对一定制的,开发者需要在编写针对不同平台的胶水层后,手动地进行构建和打包。本实施例提供的组件构建方法自动地生成兼容多个平台的产物,大大提升组件构建效率。
[0033]
在本实施例中运行态组件产物及预览态组件产物按照通用模块定义(universal module definition,umd)标准进行构建,从而可以通过通用的产物标准达到构建产物跨平台通用的目的。
[0034]
在本实施例中,组件构建方法还可以包括以下步骤:通过所述软件开发工具包根据所述接收参数配置和描述、所述可发出的事件和描述、所述可被读取的数据模型生成组件配置清单;通过所述软件开发工具包将组件加载器、所述组件配置清单、所述入口文件清单、所述运行态组件产物及所述预览态组件产物进行打包,得到打包产物。
[0035]
在本实施例中,组件配置清单包括组件可接收的配置、配置类型、数据源、数据源结构和配置输入器类型等信息。
[0036]
在本实施例中,按照通用模块定义标准对组件加载器、所述组件配置清单、所述入口文件清单、所述运行态组件产物及所述预览态组件产物进行打包,打包产物也能够跨无代码、低代码工具平台上运行。主要由javascript、css组成。软件开发工具包输出的打包产物可以实现组件在多平台多次复用、组件产物再组装的重复使用效果,可以优化构建逻辑和组件加载方式,可以达到提升依赖复用度和节省资源的效果。
[0037]
在本实施例中,请参阅图2,组件构建方法还可以包括以下步骤:步骤s105,通过应用程序开发部署服务平台获取组件授权列表及各组件的通用唯一标识码。
[0038]
步骤s106,通过所述应用程序开发部署服务平台判断所述组件授权列表中是否存在所述通用唯一标识码。
[0039]
步骤s107,若所述组件授权列表中存在所述通用唯一标识码,则通过所述应用程序开发部署服务平台获取所述通用唯一标识码对应的授权期限。
[0040]
步骤s108,若所述授权期限未过期时,则通过所述应用程序开发部署服务平台确定所述通用唯一标识码对应的打包产物处于授权状态。
[0041]
在本实施例中,组件授权由应用程序开发部署服务平台(apaas)和服后端(back end)双方共同完成,组件授权有两种方式:用于公有云的在线授权方式,用于私有云的离线授权方式。在线授权方式是通过oauth过程完成的,然后是对组件授权列表的apaas查询。并且 apaas应该为后端公开一个回调钩子来更新授权列表。离线授权方式由离线授权由后端提供静态授权列表完成。
[0042]
在本实施例中,apaas 可以检查客户应用程序中使用的所有组件的合法性和到期日期。运行时许可证密钥将由 webassembly函数检查,并检查结果应该被软件开发工具包全局知道,并且webassembly函数检查应该只在页面加载时发生。
[0043]
这样,通过组件授权列表对授权的组件进行管控,提高管控效果。
[0044]
在本实施例中,步骤s105中通过应用程序开发部署服务平台获取组件授权列表,可以包括以下步骤:通过应用程序开发部署服务平台获取非对称加密算法的私钥,并根据所述私钥对所述组件授权列表密文进行解密,得到所述组件授权列表。
[0045]
在本实施例中,组件授权列表是通过公钥加密的,apaas 将获得一个私钥来解密文件。解密后的文件将包含可用组件的 uuid 列表和到期日期以及运行时许可证密钥。
[0046]
在本实施例中,组件构建方法还可以包括以下步骤:通过所述软件开发工具包采用非对称加密算法的公钥对所述组件授权列表进行加密,得到组件授权列表密文;通过所述软件开发工具包向各所述应用程序开发部署服务平台发送所述组件授权列表密文。
[0047]
这样,将组件授权列表进行加密得到组件授权列表密文,并将组件授权列表密文发送给应用程序开发部署服务平台,可以提高传输组件授权列表的安全性。
[0048]
在本实施例中,组件构建方法还可以包括以下步骤:通过应用程序开发部署服务平台获取待安装组件的组件标签;通过所述应用程序开发部署服务平台根据所述组件标签查找所述待安装组件对应的目标打包产物;通过所述应用程序开发部署服务平台解析所述目标打包产物,以安装对应的组件。
[0049]
在本实施例中,第三方供应商定义组件标签,帮助消费者找到对应的目标打包产物,以安装对应组件,提高组件安装效率。
[0050]
本实施例提供的组件构建方法,通过入口加载器根据入口文件清单获取多个平台的组件入口文件路径、及组件元数据;通过软件开发工具包设置组件的接收参数配置和描述、组件的可发出事件和描述、组件的可被读取数据模型;通过所述软件开发工具包根据所述组件入口文件路径获取各组件源码;通过所述软件开发工具包根据各所述组件源码、所述接收参数配置和描述、所述可发出的事件和描述、所述可被读取的数据模型、所述组件元数据进行编译,以构建运行态组件产物及预览态组件产物。这样,通过提出通用型标准和各种定义,考虑多场景的使用方式,科学的接口设计规范,使得开发者更容易地与进行数据、平台交互,提高多场景web应用的适配度,有效地提高构建的组件在多平台的应用效果。
[0051]
实施例2此外,本公开实施例提供了一种组件构建装置。
[0052]
具体的,如图3所示,组件构建装置300包括:第一获取模块301,用于根据入口文件清单获取多个平台的组件入口文件路径、及组件元数据;设置模块302,用于通过软件开发工具包设置组件的接收参数配置和描述、组件的可发出事件和描述、组件的可被读取数据模型;第二获取模块303,用于根据所述组件入口文件路径获取各组件源码;编译模块304,用于根据各所述组件源码、所述接收参数配置和描述、所述可发出的事件和描述、所述可被读取的数据模型、所述组件元数据进行编译,以构建运行态组件产
物及预览态组件产物。
[0053]
在本实施例中,所述组件构建装置300还包括:生成模块,用于通过所述软件开发工具包根据所述接收参数配置和描述、所述可发出的事件和描述、所述可被读取的数据模型生成组件配置清单;打包模块,用于通过所述软件开发工具包将组件加载器、所述组件配置清单、所述入口文件清单、所述运行态组件产物及所述预览态组件产物进行打包,得到打包产物。
[0054]
在本实施例中,所述组件构建装置300还包括:第三获取模块,用于通过应用程序开发部署服务平台获取组件授权列表及各组件的通用唯一标识码;判断模块,用于 通过所述应用程序开发部署服务平台判断所述组件授权列表中是否存在所述通用唯一标识码;第四获取模块,用于若所述组件授权列表中存在所述通用唯一标识码,则通过所述应用程序开发部署服务平台获取所述通用唯一标识码对应的授权期限;确定模块,用于若所述授权期限未过期时,则通过所述应用程序开发部署服务平台确定所述通用唯一标识码对应的打包产物处于授权状态。
[0055]
在本实施例中,所述组件构建装置300还包括:加密模块,用于通过所述软件开发工具包采用非对称加密算法的公钥对所述组件授权列表进行加密,得到组件授权列表密文;发送模块,用于通过所述软件开发工具包向各所述应用程序开发部署服务平台发送所述组件授权列表密文。
[0056]
在本实施例中,所述第三获取模块,还用于通过应用程序开发部署服务平台获取非对称加密算法的私钥,并根据所述私钥对所述组件授权列表密文进行解密,得到所述组件授权列表。
[0057]
在本实施例中,所述组件构建装置300还包括:第五获取模块,用于通过应用程序开发部署服务平台获取待安装组件的组件标签;查找模块,用于通过所述应用程序开发部署服务平台根据所述组件标签查找所述待安装组件对应的目标打包产物;解析模块,用于通过所述应用程序开发部署服务平台解析所述目标打包产物,以安装对应的组件。
[0058]
在本实施例中,所述组件元数据包括:组件基本信息及适配接口模型。
[0059]
本实施例提供的组件构建装置300可以实现实施例1所示组件构建方法,为避免重复,在此不再赘述。
[0060]
本实施例提供的组件构建装置,通过入口加载器根据入口文件清单获取多个平台的组件入口文件路径、及组件元数据;通过软件开发工具包设置组件的接收参数配置和描述、组件的可发出事件和描述、组件的可被读取数据模型;通过所述软件开发工具包根据所述组件入口文件路径获取各组件源码;通过所述软件开发工具包根据各所述组件源码、所述接收参数配置和描述、所述可发出的事件和描述、所述可被读取的数据模型、所述组件元数据进行编译,以构建运行态组件产物及预览态组件产物。这样,通过提出通用型标准和各
种定义,考虑多场景的使用方式,科学的接口设计规范,使得开发者更容易地与进行数据、平台交互,提高多场景web应用的适配度,有效地提高构建的组件在多平台的应用效果。
[0061]
实施例3此外,本公开实施例提供了一种服务器,包括存储器以及处理器,所述存储器存储有计算机程序,所述计算机程序在所述处理器上运行时执行上述方法实施例1所提供的组件构建方法。
[0062]
所述服务器400包括:收发机401、总线接口及处理器402,所述处理器402,用于:通过入口加载器根据入口文件清单获取多个平台的组件入口文件路径、及组件元数据;通过软件开发工具包设置组件的接收参数配置和描述、组件的可发出事件和描述、组件的可被读取数据模型;通过所述软件开发工具包根据所述组件入口文件路径获取各组件源码;通过所述软件开发工具包根据各所述组件源码、所述接收参数配置和描述、所述可发出的事件和描述、所述可被读取的数据模型、所述组件元数据进行编译,以构建运行态组件产物及预览态组件产物。
[0063]
在本实施例中,所述处理器402还用于:通过所述软件开发工具包根据所述接收参数配置和描述、所述可发出的事件和描述、所述可被读取的数据模型生成组件配置清单;通过所述软件开发工具包将组件加载器、所述组件配置清单、所述入口文件清单、所述运行态组件产物及所述预览态组件产物进行打包,得到打包产物。
[0064]
在本实施例中,所述组件配置清单包括组件配置参数、配置类型和配置输入器类型,所述处理器402还用于:通过应用程序开发部署服务平台获取组件授权列表及各组件的通用唯一标识码;通过所述应用程序开发部署服务平台判断所述组件授权列表中是否存在所述通用唯一标识码;若所述组件授权列表中存在所述通用唯一标识码,则通过所述应用程序开发部署服务平台获取所述通用唯一标识码对应的授权期限;若所述授权期限未过期时,则通过所述应用程序开发部署服务平台确定所述通用唯一标识码对应的打包产物处于授权状态。
[0065]
在本实施例中,所述处理器402还用于:通过所述软件开发工具包采用非对称加密算法的公钥对所述组件授权列表进行加密,得到组件授权列表密文;通过所述软件开发工具包向各所述应用程序开发部署服务平台发送所述组件授权列表密文。
[0066]
在本实施例中,所述处理器402还用于:通过应用程序开发部署服务平台获取非对称加密算法的私钥,并根据所述私钥对所述组件授权列表密文进行解密,得到所述组件授权列表。
[0067]
在本实施例中,所述处理器402还用于:通过应用程序开发部署服务平台获取待安装组件的组件标签;通过所述应用程序开发部署服务平台根据所述组件标签查找所述待安装组件对应的目标打包产物;通过所述应用程序开发部署服务平台解析所述目标打包产物,以安装对应的组
件。
[0068]
在本实施例中,所述组件元数据包括:组件基本信息及适配接口模型。
[0069]
在本实施例中,服务器400还包括:存储器403。在图4中,总线架构可以包括任意数量的互联的总线和桥,具体由处理器402代表的一个或多个处理器和存储器403代表的存储器的各种电路链接在一起。总线架构还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口提供接口。收发机401可以是多个元件,即包括发送机和接收机,提供用于在传输介质上与各种其他装置通信的单元。处理器402负责管理总线架构和通常的处理,存储器403可以存储处理器402在执行操作时所使用的数据。
[0070]
本发明实施例提供的服务器400,可以执行上实施例1中的组件构建方法的步骤,不再赘述。
[0071]
本实施例提供的服务器,通过入口加载器根据入口文件清单获取多个平台的组件入口文件路径、及组件元数据;通过软件开发工具包设置组件的接收参数配置和描述、组件的可发出事件和描述、组件的可被读取数据模型;通过所述软件开发工具包根据所述组件入口文件路径获取各组件源码;通过所述软件开发工具包根据各所述组件源码、所述接收参数配置和描述、所述可发出的事件和描述、所述可被读取的数据模型、所述组件元数据进行编译,以构建运行态组件产物及预览态组件产物。这样,通过提出通用型标准和各种定义,考虑多场景的使用方式,科学的接口设计规范,使得开发者更容易地与进行数据、平台交互,提高多场景web应用的适配度,有效地提高构建的组件在多平台的应用效果。
[0072]
实施例4本技术还提供一种计算机可读存储介质,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如下步骤:通过入口加载器根据入口文件清单获取多个平台的组件入口文件路径、及组件元数据;通过软件开发工具包设置组件的接收参数配置和描述、组件的可发出事件和描述、组件的可被读取数据模型;通过所述软件开发工具包根据所述组件入口文件路径获取各组件源码;通过所述软件开发工具包根据各所述组件源码、所述接收参数配置和描述、所述可发出的事件和描述、所述可被读取的数据模型、所述组件元数据进行编译,以构建运行态组件产物及预览态组件产物。
[0073]
在本实施例中,所述计算机程序被处理器执行时还实现如下步骤:通过所述软件开发工具包根据所述接收参数配置和描述、所述可发出的事件和描述、所述可被读取的数据模型生成组件配置清单;通过所述软件开发工具包将组件加载器、所述组件配置清单、所述入口文件清单、所述运行态组件产物及所述预览态组件产物进行打包,得到打包产物。
[0074]
在本实施例中,所述计算机程序被处理器执行时还实现如下步骤:通过应用程序开发部署服务平台获取组件授权列表及各组件的通用唯一标识码;通过所述应用程序开发部署服务平台判断所述组件授权列表中是否存在所述通用唯一标识码;
若所述组件授权列表中存在所述通用唯一标识码,则通过所述应用程序开发部署服务平台获取所述通用唯一标识码对应的授权期限;若所述授权期限未过期时,则通过所述应用程序开发部署服务平台确定所述通用唯一标识码对应的打包产物处于授权状态。
[0075]
在本实施例中,所述计算机程序被处理器执行时还实现如下步骤:通过所述软件开发工具包采用非对称加密算法的公钥对所述组件授权列表进行加密,得到组件授权列表密文;通过所述软件开发工具包向各所述应用程序开发部署服务平台发送所述组件授权列表密文。
[0076]
在本实施例中,所述计算机程序被处理器执行时还实现如下步骤:通过应用程序开发部署服务平台获取非对称加密算法的私钥,并根据所述私钥对所述组件授权列表密文进行解密,得到所述组件授权列表。
[0077]
在本实施例中,所述计算机程序被处理器执行时还实现如下步骤:通过应用程序开发部署服务平台获取待安装组件的组件标签;通过所述应用程序开发部署服务平台根据所述组件标签查找所述待安装组件对应的目标打包产物;通过所述应用程序开发部署服务平台解析所述目标打包产物,以安装对应的组件。
[0078]
在本实施例中,所述组件元数据包括:组件基本信息及适配接口模型。
[0079]
在本实施例中,计算机可读存储介质可以为只读存储器(read-only memory,简称rom)、随机存取存储器(random access memory,简称ram)、磁碟或者光盘等。
[0080]
本实施例提计算机可读存储介质可以实施例1所示组件构建方法,为避免重复,在此不再赘述。
[0081]
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括该要素的过程、方法、物品或者终端中还存在另外的相同要素。
[0082]
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本技术各个实施例所述的方法。
[0083]
上面结合附图对本技术的实施例进行了描述,但是本技术并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本技术的启示下,在不脱离本技术宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本技术的保护之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1