APP发版处理方法、装置、开发处理系统及存储介质制造方法及图纸

技术编号:35496783 阅读:22 留言:0更新日期:2022-11-05 16:55
本发明专利技术涉及一种APP发版处理方法、装置、开发处理系统及存储介质,其中所述方法包括确定一个或多个待发版的第一目标组件;获取每一第一目标组件的组件描述文件;逐个分析每一第一目标组件的组件描述文件得到所述第一目标组件依赖的一个或多个目标组件;基于当前目标组件为上级、被其依赖的目标组件为下级的结构关系建立自上向下的目标组件依赖关系树,并依据所述依赖关系树自下向上的顺序确定由高到低的目标组件发版优先级;以及按照由高到低的发版优先级对目标组件逐个/批实施发版流程。本发明专利技术能够在APP组件发版时减少人为因素,提高发版效率。发版效率。发版效率。

【技术实现步骤摘要】
APP发版处理方法、装置、开发处理系统及存储介质


[0001]本专利技术涉及应用(Application,简称APP)开发
,特别地涉及一种APP发版处理方法、装置、开发处理系统及存储介质。

技术介绍

[0002]在APP蓬勃发展的时代,原来将APP代码都放在一个工程开发的模式随着业务的发展、代码量的增加逐渐显露出了一些弊端,如耦合比较严重、容易出现冲突、开发效率低等。后来发展起来的组件化开发模式很好地解决了这些技术问题。所述的组件化,顾名思义意为APP由多个组件构成,所谓的组件是指APP中的一个规模相当大的代码结构,它具有一套定义良好的API。根据在APP中所起的作用例如可分为基础组件、功能组件、业务组件等,组件之间通过API相互通信,根据需要,某些组件之间存在着依赖关系。由于业务的需要、功能的增加或完善,通常需要频繁地对APP中的某些组件进行修改、调试等,进而对所述APP重新发版,此时的APP发版通常只对涉及的组件进行发版操作,即可完成APP的更新。目前,一方面,当有组件在修改、调试、测试完成需要发版时,由于组件之前存在关联或依赖关系,需要人工分析出组件之间的依赖关系,再依据依赖关系,人工先发版依赖关系中最底层的组件,而后再发版上层的组件,以确保组件的发版成功。另一方面,当有多个有依赖关系的组件都要发版时,且这些组件由不同部门或不同人员开发完成,在发版前开发人员之间需要先进行沟通,根据各个组件的完成进程和依赖关系确定发版顺序,再人工按照发版顺序执行发版操作,可见多组件发版时除了人工操作成本外,还增加了人工沟通成本,并且发版效率低,是否能够发版成功,人为因素的影响大。

技术实现思路

[0003]针对现有技术中存在的技术问题,本专利技术提出了一种APP发版处理方法、装置、开发处理系统及存储介质,能够根据需要自动完成APP组件的发版,减少人为因素,提高发版效率。
[0004]为了解决上述技术问题,根据本专利技术的一个方面,本专利技术提供了一种APP发版处理方法,包括以下步骤:
[0005]确定一个或多个待发版的第一目标组件;
[0006]获取每一第一目标组件的组件描述文件;
[0007]逐个分析每一第一目标组件的组件描述文件得到所述第一目标组件依赖的一个或多个待发版的第二目标组件,或/和所述第一目标组件依赖的一个或多个另外第一目标组件;其中,所述第一目标组件和第二目标组件为待发版的目标组件;
[0008]基于当前目标组件为上级、被其依赖的目标组件为下级的结构关系建立自上向下的目标组件依赖关系树,并依据所述依赖关系树自下向上的顺序确定由高到低的目标组件发版优先级;以及
[0009]按照由高到低的发版优先级对目标组件逐个/批实施发版流程。
[0010]为了解决上述技术问题,根据本专利技术的另一个方面,本专利技术提供了一种APP发版处理装置,其中包括第一目标组件确定模块、文件获取模块、第一分析模块、发版结构构建模块和发版模块,其中,所述第一目标组件确定模块经配置以确定待发版的一个或多个第一目标组件;所述文件获取模块与所述第一目标组件确定模块相连接,经配置以至少获取第一目标组件的组件描述文件;所述第一分析模块与所述文件获取模块相连接,经配置以逐个分析每一第一目标组件的组件描述文件得到所述第一目标组件依赖的一个或多个待发版的第二目标组件,或/和所述第一目标组件依赖的一个或多个另外第一目标组件;其中,所述第一目标组件和第二目标组件为待发版的目标组件;所述发版结构构建模块与所述第一分析模块相连接,经配置以基于当前目标组件为上级、被其依赖的目标组件为下级的结构关系建立自上向下的目标组件依赖关系树,并依据所述依赖关系树自下向上的顺序确定由高到低的目标组件发版优先级;所述发版模块与所述发版结构构建模块相连接,经配置以按照由高到低的发版优先级对目标组件逐个/批实施发版流程。
[0011]为了解决上述技术问题,根据本专利技术的另一个方面,本专利技术提供了一种APP开发处理系统,其中包括Web前端、组件托管服务器、APP发版处理装置和数据库,其中,所述Web前端经配置以接收并显示发版过程消息和提供发版管理参数,所述管理参数至少包括待发版的组件参数和发版指令参数;所述组件托管服务器经配置以托管组件及描述文件;所述APP发版处理装置与所述Web前端和组件托管服务器相连接,经配置以接收通过Web前端组件参数配置的待发版的第一目标组件信息和/或发版指令,与所述组件托管服务器交互完成待发版组件的发版处理,并将发版过程中的信息发送给Web前端;所述数据库与所述发版处理装置和组件托管服务器相连接,经配置以至少存储并提供发版处理过程中的数据。
[0012]为了解决上述技术问题,根据本专利技术的另一个方面,本专利技术提供了一种计算机可读存储介质,其中,所述计算机存储介质上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现APP发版处理方法。
[0013]为了解决上述技术问题,根据本专利技术的另一个方面,本专利技术提供了一种计算机程序产品,其包括计算机程序指令,所述计算机程序指令被处理器执行时实现APP发版处理方法。
[0014]本专利技术的实施例能够根据需要自动完成APP组件的发版,减少人为因素,提高发版效率。
附图说明
[0015]下面,将结合附图对本专利技术的优选实施方式进行进一步详细的说明,其中:
[0016]图1是根据本专利技术的一个实施例的APP组件的开发处理系统框图;
[0017]图2是根据本专利技术的一个实施例的APP发版处理方法流程图;
[0018]图3是根据本专利技术的一个实施例的确定第一目标组件的方法流程图;
[0019]图4A

4D是根据本专利技术的一个实施例确定的第一目标组件的依赖关系树结构图;
[0020]图5A

5B是根据本专利技术的一个实施例的所有目标组件的依赖关系树结构图;
[0021]图6是根据本专利技术的一个实施例的对一个目标组件实施发版流程的方法流程图;
[0022]图7是根据本专利技术的一个实施例的APP发版处理装置原理框图;
[0023]图8是根据本专利技术的一个实施例的第一目标组件确定模块原理框图;
[0024]图9是根据本专利技术的一个实施例的第一分析模块的原理框图;
[0025]图10是根据本专利技术的一个实施例的发版模块的原理框图;以及
[0026]图11是根据本专利技术另一个实施例的APP发版处理装置原理框图。
具体实施方式
[0027]为使本专利技术实施例的目的、技术方案和优点更加清楚,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。
[0028]在以下的详细描述中,可以参看作为本申请一部分用来说明本申请的特定实施例的各个说明书附图。在附图中,相似的附图标记本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种APP发版处理方法,包括:确定一个或多个待发版的第一目标组件;获取每一第一目标组件的组件描述文件;逐个分析每一第一目标组件的组件描述文件得到所述第一目标组件依赖的一个或多个待发版的第二目标组件,或/和所述第一目标组件依赖的一个或多个另外第一目标组件;其中,所述第一目标组件和第二目标组件为待发版的目标组件;基于当前目标组件为上级、被其依赖的目标组件为下级的结构关系建立自上向下的目标组件依赖关系树,并依据所述依赖关系树自下向上的顺序确定由高到低的目标组件发版优先级;以及按照由高到低的发版优先级对目标组件逐个/批实施发版流程。2.根据权利要求1所述的方法,其中确定一个或多个待发版的第一目标组件的步骤包括:基于人工提供的组件信息确定待发版的第一目标组件;或者获取APP主工程Podfile文件;查询APP主工程Podfile文件中对应每个组件的组件描述字段中是否包括组件存储地址及指定分支信息;以及响应于组件描述字段中包括组件存储地址且包含指定分支信息,确定所述组件为待发版的第一目标组件。3.根据权利要求1所述的方法,其中第一目标组件的组件描述文件包括所述第一目标组件的Demo工程Podfile文件和Podspec文件;对应地,分析每一第一目标组件的组件描述文件时进一步包括:查询第一目标组件的Demo工程Podfile文件,将组件描述字段中包括组件存储地址且包含指定分支信息的组件确定为第三组件,以获得第三组件集;查询第一目标组件的Podspec文件中的组件依赖字段获得包括一个或多个第四组件的第四组件集;对所述第三组件集和所述第四组件集取交集,将交集中的组件确定为待分析组件;从所述待分析组件的Podspec文件的version字段获得当前版本号;从组件库中获得所述待分析组件的上一次发版版本号;对比所述待分析组件的当前版本号和上一次发版版本号;以及响应于所述当前版本号大于上一次发版版本号,确定所述待分析组件为待发版的目标组件;其中所述待发版的目标组件或者为另外的第一目标组件,或者为不同于第一目标组件的第二目标组件。4.根据权利要求1所述的方法,其中对一个目标组件实施发版流程的步骤包括:将目标组件的开发分支合并到主分支;对合并到主分支的目标组件代码进行校验;响应于校验通过,根据所述目标组件的版本号生成发版的版本号标签;以及响应于生成发版的版本号标签,调用发版脚本对所述目标组件执行发版流程。5.根据权利要求4所述的方法,其中,在生成发版的版本号标签后进一步包括:查询所述发版的版本号标签是否已经存在于组件托管服务器中;
响应于所述发版的版本号标签已经存在于组件托管服务器中,生成发版错误的异常消息;或者响应于所述发版的版本号标签没有存在于组件托管服务器中,调用发版脚本对所述目标组件执行发版流程。6.根据权利要求2所述的方法,其中进一步包括:在每个目标组件发版成功后更新APP主工程Podfile文件:删除APP主工程Podfile文件中对应所述目标组件的存储地址字段,增加版本号字段,并在所述版本号字段内中写入发版版本号。7.一种APP发版处理装置,其中包括:第一目标组件确定模块,经配置以确定待发版的一个或多个第一目标组件;文件获取模块,其与所述第一目标组件确定模块相连接,经配置以至少获取第一目标组件的组件描述文件;第一分析模块,其分别与第一目标组件确定模块和所述文件获取模块相连接,经配置以逐个分析每一第一目标组件的组件描述文件得到所述第一目标组件依赖的一个或多个待发版的第二目标组件,或/和所述第一目标组件依赖的一个或多个另外第一目标组件;其中,所述第一目标组件和第二目标组件为待发版的目标组件;发版结构构建模块,其与所述第一分析模块相连接,经配置以基于当前目标组件为上级、被其依赖的目标组件为下级的结构关系建立自上向下的目标组件依赖关系树,并依据所述依赖关系树自下向上的顺序确定由高到低的目标组件发版优先级;以及发版模块,其与所述发版结构构建模块相连接,经配置以按照由高到低的发版...

【专利技术属性】
技术研发人员:孙龙姚屹
申请(专利权)人:前锦网络信息技术上海有限公司
类型:发明
国别省市:

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

1