组件集成方法、装置、计算机可读存储介质及电子设备制造方法及图纸

技术编号:29224822 阅读:10 留言:0更新日期:2021-07-10 01:08
本公开的实施例公开了一种组件集成方法、装置、计算机可读存储介质及电子设备。该方法包括:获取属于Flutter组件的目标组件;判断本地是否部署有Flutter软件开发安装包SDK,以得到判断结果;根据判断结果和目标组件的组件代码目录,确定并获取目标组件所依赖的各个组件;调用预设组件集成函数,将目标组件所依赖的各个组件集成于与目标组件关联的宿主工程;根据目标组件的组件描述配置文件,将目标组件集成于宿主工程。本公开的实施例能够成功将Flutter组件集成至需要使用其的APP,整个过程实施起来非常便捷,无需过多人工参与,有利于避免人工引入不全、不同步的问题,能够保证集成效率和效果。成效率和效果。成效率和效果。

【技术实现步骤摘要】
组件集成方法、装置、计算机可读存储介质及电子设备


[0001]本公开涉及通信
,尤其涉及一种组件集成方法、装置、计算机可读存储介质及电子设备。

技术介绍

[0002]Flutter是谷歌发布的移动用户界面(User Interface,UI)框架,其可以用于构建跨平台手机应用程序(Application,APP),快速地在操作系统上构建高质量的用户界面。
[0003]目前,在将Flutter组件集成至APP时,采用的集成方式很大程度上依赖于人工,实施起来非常繁琐,效率低,集成效果也难以保证。

技术实现思路

[0004]为了解决上述技术问题,提出了本公开。本公开的实施例提供了一种组件集成方法、装置、计算机可读存储介质及电子设备。
[0005]根据本公开实施例的一个方面,提供了一种组件集成方法,包括:
[0006]获取属于Flutter组件的目标组件;
[0007]判断本地是否部署有Flutter软件开发安装包SDK,以得到判断结果;
[0008]根据所述判断结果和所述目标组件的组件代码目录,确定并获取所述目标组件所依赖的各个组件;
[0009]调用预设组件集成函数,将所述目标组件所依赖的各个组件集成于与所述目标组件关联的宿主工程;
[0010]根据所述目标组件的组件描述配置文件,将所述目标组件集成于所述宿主工程。
[0011]在一个可选示例中,所述根据所述判断结果和所述目标组件的组件代码目录,确定并获取所述目标组件所依赖的各个组件,包括:
[0012]在所述判断结果表征本地未部署FlutterSDK的情况下,调用预设部署工具,在本地部署FlutterSDK;根据调用所述预设部署工具部署的FlutterSDK,执行用于构建组件上下文环境的命令,以通过所述命令的执行,根据所述目标组件的组件代码目录,确定并获取所述目标组件所依赖的各个组件;
[0013]在所述判断结果表征本地部署有FlutterSDK的情况下,根据本地已部署的FlutterSDK,执行所述命令。
[0014]在一个可选示例中,所述获取属于Flutter组件的目标组件,包括:
[0015]在根据目标组件信息,识别出所述目标组件信息所指向的目标组件属于Flutter组件的情况下,根据所述目标组件信息,获取所述目标组件。
[0016]在一个可选示例中,所述目标组件信息中包括组件名称、远程仓库地址信息和组件版本号;
[0017]所述根据所述目标组件信息,获取所述目标组件,包括:
[0018]根据所述远程仓库地址信息和所述组件版本号,获取第一校验值;其中,所述第一
校验值是根据所述远程仓库地址信息对应的远程仓库中、具有所述组件版本号的组件,进行第一预设校验运算得到的校验值;
[0019]在所述组件名称对应的本地校验数据集合中不存在所述第一校验值的情况下,从所述远程仓库中下载具有所述组件版本号的组件作为所述目标组件,在本地存储所述目标组件,并将所述第一校验值添加至所述组件名称对应的本地校验数据集合;
[0020]在所述组件名称对应的本地校验数据集合中存在所述第一校验值的情况下,从本地获取所述目标组件。
[0021]在一个可选示例中,所述目标组件信息中包括组件名称,所述宿主工程的数量为N个,N为大于或等于2的整数;
[0022]所述方法还包括:
[0023]分别根据N个所述宿主工程中的每个所述宿主工程的根目录,进行第二预设校验运算,以得到N个校验值;
[0024]根据所述组件名称和N个所述校验值,确定与N个所述宿主工程对应的N个目录名称;
[0025]创建与N个所述目录名称对应的N个本地目录;
[0026]在获取所述目标组件之后,将所述目标组件分别复制至N个所述本地目录;
[0027]其中,针对任一所述宿主工程,执行所述确定并获取所述目标组件所依赖的各个组件的步骤,以及所述将所述目标组件集成于所述宿主工程的步骤时,利用的所述目标组件为当前所述宿主工程对应的所述本地目录中的所述目标组件。
[0028]在一个可选示例中,所述在根据目标组件信息,识别出所述目标组件信息所指向的目标组件属于Flutter组件的情况下,根据所述目标组件信息,获取所述目标组件之前,所述方法还包括:
[0029]判断所述目标组件信息中是否包括预设Flutter协议数据;
[0030]在所述目标组件信息中包括所述预设Flutter协议数据的情况下,识别出所述目标组件信息所指向的目标组件属于Flutter组件;否则,识别出所述目标组件信息所指向的目标组件不属于Flutter组件。
[0031]根据本公开实施例的另一个方面,提供了一种组件集成装置,包括:
[0032]第一获取模块,用于获取属于Flutter组件的目标组件;
[0033]第一判断模块,用于判断本地是否部署有Flutter软件开发安装包SDK,以得到判断结果;
[0034]第二获取模块,用于根据所述判断结果和所述目标组件的组件代码目录,确定并获取所述目标组件所依赖的各个组件;
[0035]第一集成模块,用于调用预设组件集成函数,将所述目标组件所依赖的各个组件集成于与所述目标组件关联的宿主工程;
[0036]第二集成模块,用于根据所述目标组件的组件描述配置文件,将所述目标组件集成于所述宿主工程。
[0037]在一个可选示例中,所述第二获取模块,具体用于:
[0038]在所述判断结果表征本地未部署FlutterSDK的情况下,调用预设部署工具,在本地部署FlutterSDK;根据调用所述预设部署工具部署的FlutterSDK,执行用于构建组件上
下文环境的命令,以通过所述命令的执行,根据所述目标组件的组件代码目录,确定并获取所述目标组件所依赖的各个组件;在所述判断结果表征本地部署有FlutterSDK的情况下,根据本地已部署的FlutterSDK,执行所述命令。
[0039]在一个可选示例中,所述第一获取模块,具体用于:
[0040]在根据目标组件信息,识别出所述目标组件信息所指向的目标组件属于Flutter组件的情况下,根据所述目标组件信息,获取所述目标组件。
[0041]在一个可选示例中,所述目标组件信息中包括组件名称、远程仓库地址信息和组件版本号;
[0042]所述第一获取模块,包括:
[0043]第一获取子模块,用于根据所述远程仓库地址信息和所述组件版本号,获取第一校验值;其中,所述第一校验值是根据所述远程仓库地址信息对应的远程仓库中、具有所述组件版本号的组件,进行第一预设校验运算得到的校验值;
[0044]处理子模块,用于在所述组件名称对应的本地校验数据集合中不存在所述第一校验值的情况下,从所述远程仓库中下载具有所述组件版本号的组件作为所述目标组件,在本地存储所述目标组件,并将所述第一校验值添加至所述组件名称对应本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种组件集成方法,其特征在于,包括:获取属于Flutter组件的目标组件;判断本地是否部署有Flutter软件开发安装包SDK,以得到判断结果;根据所述判断结果和所述目标组件的组件代码目录,确定并获取所述目标组件所依赖的各个组件;调用预设组件集成函数,将所述目标组件所依赖的各个组件集成于与所述目标组件关联的宿主工程;根据所述目标组件的组件描述配置文件,将所述目标组件集成于所述宿主工程。2.根据权利要求1所述的方法,其特征在于,所述根据所述判断结果和所述目标组件的组件代码目录,确定并获取所述目标组件所依赖的各个组件,包括:在所述判断结果表征本地未部署FlutterSDK的情况下,调用预设部署工具,在本地部署FlutterSDK;根据调用所述预设部署工具部署的FlutterSDK,执行用于构建组件上下文环境的命令,以通过所述命令的执行,根据所述目标组件的组件代码目录,确定并获取所述目标组件所依赖的各个组件;在所述判断结果表征本地部署有FlutterSDK的情况下,根据本地已部署的FlutterSDK,执行所述命令。3.根据权利要求1所述的方法,其特征在于,所述获取属于Flutter组件的目标组件,包括:在根据目标组件信息,识别出所述目标组件信息所指向的目标组件属于Flutter组件的情况下,根据所述目标组件信息,获取所述目标组件。4.根据权利要求3所述的方法,其特征在于,所述目标组件信息中包括组件名称、远程仓库地址信息和组件版本号;所述根据所述目标组件信息,获取所述目标组件,包括:根据所述远程仓库地址信息和所述组件版本号,获取第一校验值;其中,所述第一校验值是根据所述远程仓库地址信息对应的远程仓库中、具有所述组件版本号的组件,进行第一预设校验运算得到的校验值;在所述组件名称对应的本地校验数据集合中不存在所述第一校验值的情况下,从所述远程仓库中下载具有所述组件版本号的组件作为所述目标组件,在本地存储所述目标组件,并将所述第一校验值添加至所述组件名称对应的本地校验数据集合;在所述组件名称对应的本地校验数据集合中存在所述第一校验值的情况下,从本地获取所述目标组件。5.根据权利要求3所述的方法,其特征在于,所述目标组件信息中包括组件名称,所述宿主工程的数量为N个,N为大于或等于2的整数;所述方法还包括:分别根据N个所述宿主工程中的每个所述宿主工程的根目录,进行第二预设校验运算,以得到N个校验值;根据所述组件名称和N个所述校验值,确定与N个所述宿主工程对应的N个...

【专利技术属性】
技术研发人员:赵宏伟
申请(专利权)人:北京房江湖科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1