CN114443029A - 一种引导界面组件的生成方法及相关装置 - Google Patents
一种引导界面组件的生成方法及相关装置 Download PDFInfo
- Publication number
- CN114443029A CN114443029A CN202011213813.0A CN202011213813A CN114443029A CN 114443029 A CN114443029 A CN 114443029A CN 202011213813 A CN202011213813 A CN 202011213813A CN 114443029 A CN114443029 A CN 114443029A
- Authority
- CN
- China
- Prior art keywords
- guide interface
- component
- interface component
- guide
- creating
- 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
- 238000000034 method Methods 0.000 title claims abstract description 79
- 230000006870 function Effects 0.000 claims description 46
- 230000008569 process Effects 0.000 claims description 19
- 238000004590 computer program Methods 0.000 claims description 16
- 239000002699 waste material Substances 0.000 abstract description 2
- 230000010365 information processing Effects 0.000 abstract 1
- 238000012827 research and development Methods 0.000 abstract 1
- 238000010586 diagram Methods 0.000 description 8
- 230000003068 static effect Effects 0.000 description 7
- 238000012546 transfer Methods 0.000 description 6
- 239000011800 void material Substances 0.000 description 6
- 230000000694 effects Effects 0.000 description 4
- 230000006978 adaptation Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 230000015572 biosynthetic process Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/38—Creation or generation of source code for implementing user interfaces
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明提供了一种引导界面组件的生成方法及相关设备,属于信息处理技术领域,实现引导界面组件在不同的直播间内的添加和引导界面组件的移除操作,减少研发引导界面组件造成的浪费。所述方法包括:定义引导界面公共组件创建的通用协议;根据所述通用协议创建并注册引导界面公共组件;接收多组引导界面组件创建参数;基于所述通用协议对所述多组引导界面组件创建参数进行解析,根据解析结果通过所述引导界面公共组件生成多个不同的引导界面组件。
Description
技术领域
本发明涉及计算机技术领域,尤其是涉及一种引导界面组件的生成方法及相关装置。
背景技术
随着直播行业的发展,直播行业越来越活跃,而在直播过程中经常需要添加气泡,气泡是添加到直播间界面中的引导方案。
而目前实现将气泡添加在直播间时,面对不同的直播间每次都需要编写引导界面组件程序,以调整气泡显示的优先级,气泡设置位置,层级添加的操作等,上述操作过程在各种直播间的客户端都操作一遍是不小的开发和测试负担,导致开发作为引导界面组件的直播间气泡的工作量过大。
发明内容
本发明的目的在于提供一种直播间气泡的优化方法,缓解了现有技术中的气泡添加在直播间时,面对不同的直播间每次都需要编写优先级,设置位置,层级添加的操作的技术问题。
第一方面,本发明提供一种引导界面组件的生成方法包括以下步骤:定义引导界面公共组件创建的通用协议;根据上述通用协议创建并注册引导界面公共组件;接收多组引导界面组件创建参数,基于上述通用协议对上述多组引导界面组件创建参数进行解析,根据解析结果通过所述引导界面公共组件生成多个不同的引导界面组件。
可选地,上述根据上述通用协议创建并注册引导界面公共组件,还包括:
获取上述引导界面公共组件的身份标识码,其中,上述身份标识码用于区分引导界面公共组件与其他功能组件;
保存上述引导界面公共组件。
可选地,上述基于上述通用协议对上述引导界面组件创建参数进行解析,根据解析结果通过上述引导界面公共组件生成多个不同的引导界面组件,具体包括:
基于所述解析结果将所述引导界面公共组件在需要创建引导界面组件的多个平台上通过调用函数[DYActManager registerCom:com]分别进行注册,其中,DYActManager为动态管理程序,registerCom:com为实现注册操作的功能语句;
将所述解析结果设置在所述引导界面公共组件内,生成对应每个所述平台的引导界面组件。
可选地,在上述接收引导界面组件创建参数之前,还包括:
判断上述引导界面组件创建参数中是否存在允许设置上述引导界面组件的位置;
若上述引导界面组件创建参数中存在允许设置上述引导界面组件的位置,则接收导界面组件创建参数;
若上述引导界面组件创建参数中不存在允许设置上述引导界面组件的位置,则停止引导界面组件的创建。
可选地,上述基于上述通用协议对上述多组引导界面组件创建参数进行解析,根据解析结果通过上述引导界面公共组件生成多种不同的引导界面组件,还包括:
根据上述创建参数判断需要创建引导界面组件的平台的类型;
将上述引导界面公共组件设置在需要创建引导界面组件的平台。
可选地,上述方法还包括:
在根据所述通用协议创建并注册引导界面公共组件时,使用功能函数限制所述创建并注册引导界面公共组件的过程唯一,所述功能函数在限制所述创建并注册引导界面公共组件的过程唯一时具体实现以下功能:
创建一个术语令牌,所述术语令牌代表所述引导界面公共组件;
限制创建所述术语令牌的过程唯一。
可选地,在生成多个不同的引导界面组件之前,还包括:
根据上述身份标识码创建引导界面组件的标识信息,其中,上述标识信息用于查找和/或移除上述引导界面组件。
本申请实施例第二方面提供了一种引导界面组件的生成装置,包括:协议模块:用于定义引导界面公共组件创建的通用协议;创建模块:用于根据上述通用协议创建并注册引导界面公共组件;数据采集模块:用于接收多组引导界面组件创建参数;控制模块:用于基于上述通用协议对上述多组引导界面组件创建参数进行解析,根据解析结果通过上述引导界面公共组件生成多个不同的引导界面组件。
本发明提供的一种引导界面组件的生成方法及相关装置,通过定义引导界面公共组件创建的通用协议;根据上述通用协议创建并注册引导界面公共组件;根据上述通用协议创建的引导界面公共组件不依赖直播间平台界面的特性,在面对不同的直播间平台界面时,上述引导界面公共组件可以公用,减小了设置引导界面组件的工作量,接收多组引导界面组件创建参数;基于上述通用协议对上述多组引导界面组件创建参数进行解析,根据解析结果通过上述引导界面公共组件生成多个不同的引导界面组件,使得通过创建的引导界面公共组件,在获得具体创建参数后,能根据不同的直播间平台界面一次适应性地生成多个不同的引导界面组件以适配相应的直播平台界面,解决了现有技术中的气泡添加在直播间时,面对不同的直播间每次都需要适应性编写相应代码,导致工作量过大的技术问题,提高了引导界面组件创建的工作效率。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为现有引导界面组件的生成方法与本发明实施例提供的引导界面组件的生成方法的对比图;
图2为本发明实施例提供的一种引导界面组件的生成方法流程图;
图3为本发明实施例提供的一种引导界面组件的生成装置的实施例示意图;
图4为本申请实施例提供的一种电子设备的实施例示意图;
图5为本申请实施例提供的一种计算机可读存储介质的实施例示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例中所提到的术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括其他没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
如图1所示,现有技术中的引导界面组件的生成方法,需要编写优先级,设置位置,iphonx适配,层级添加等操作,而在不同的直播间内添加气泡时,上述编写优先级,设置位置,iphonx适配,层级添加等操作需要在半屏直播间,颜值直播间,音频直播间,主播端颜值,主播端半屏等端口均进行一次,由此带来了较大的开发和测试负担。
而本发明实施例提供的引导界面组件的生成方法,通过活动框架对生成引导界面组件的过程进行优化,将上述编写优先级,设置位置,iphonx适配,层级添加等操作通过代码实现替换,且通过代码生成引导界面组件的过程后续并不需要再进行设置气泡的位置和优先级,只需要设置上述代码的配置,减少了生成引导界面组件的工作量,减轻了内部处理器的工作负担,进而减小了生成引导界面组件的开发和测试负担。
如图2所示,本发明实施例提供的一种引导界面组件的生成方法包括以下步骤:
101、定义引导界面公共组件创建的通用协议;
在一些示例中,上述通用协议内部定义活动管理类的框架,且需要实现DYActComProtocol协议内的容器变量和信息变量。
在通用协议内部定义活动管理类的框架,活动管理类为基础引用数据类型,活动管理类作为基础父类,拥有通用的性质,进而定义了引导界面公共组件创建的通用协议,使得创建引导界面公共组件后,上述引导界面公共组件不依赖于某个特定直播间,可以实现上述引导界面公共组件在不同的直播平台上的添加与抽离。
102、根据上述通用协议创建并注册引导界面公共组件;
在一种可能的实施方式中,在上述引导界面公共组件内保证实现DYActComProtocol协议内的容器变量Container和信息变量Info的具体方法为:
@synthesize compContainer=_compContainer;
@synthesize compInfo=_compInfo;
上述@synthesize compInfo为保证实现协议内信息变量的功能语句,@synthesize compContainer为保证实现协议内容器变量的功能语句。
在根据上述通用协议创建并注册引导界面公共组件时,使用功能函数限制上述创建并注册引导界面公共组件的过程唯一,上述功能函数在限制上述创建并注册引导界面公共组件的过程唯一时具体实现以下功能:
创建一个术语令牌,上述术语令牌代表上述引导界面公共组件;
限制创建上述术语令牌的过程唯一。
上述功能函数创建一个静态的术语令牌;dispatch_once(&onceToken,^{
再使用内存分配方法创建一个包含上述术语令牌的新的组件;
调用函数[DYActManager registerCom:com],对上述新的组件进行注册,其中,DYActManager为动态管理程序,registerCom:com为实现注册操作的功能语句。
示例性的,上述对新的组件进行注册的方法是:
在每个组件的箱负载boxload方法里面进行注册,通过函数[DYBubbleComregistDYBubbleCom]完成注册,DYBubbleCom为上述引导界面公共组件,registDYBubbleCom实现了对上述引导界面公共组件的注册。
上述根据通用协议创建并注册引导界面公共组件,还包括:获取上述引导界面公共组件的身份标识码,其中,上述身份标识码用于区分引导界面公共组件与其他功能组件;保存上述引导界面公共组件。
对上述新的组件进行查找,具体地,客户端通过
(DYBubbleCom*)getDYBubbleCom
DYBubbleCom为上述引导界面公共组件,getDYBubbleCom实现了对上述引导界面公共组件的查找。
方法获取上述新的组件的身份标识码;
在上述新的组件内设置
函数return[DYActManager comForId:@"DYBubbleCom"]
其中,DYActManager为动态管理程序,comForId:@"DYBubbleCom"为在DYBubbleCom进行查找的功能语句,return为反馈语句。
用于将新的组件得身份标识码反馈至客户端,并对上述新的组件完成保存。
103、接收多组引导界面组件创建参数;
104、基于上述通用协议对上述多组引导界面组件创建参数进行解析,根据解析结果通过上述引导界面公共组件生成多个不同的引导界面组件。在一种可能的实施方式中,上述基于通用协议对引导界面组件创建参数进行解析,根据解析结果通过上述引导界面公共组件生成多个不同的引导界面组件,具体包括:
上述解析结果为解析后的每组创建参数,基于解析后的每组创建参数将上述引导界面公共组件在需要创建引导界面组件的多个平台上分别进行注册;将解析后的每组创建参数设置在上述引导界面公共组件内,生成对应每个上述平台的引导界面组件。
根据不同平台的创建参数生成对应不同平台的引导界面组件,使得所生成的引导界面组件与上述平台相对应,进而使得所生成的引导界面组件能够在对应平台上实现添加。
在上述接收引导界面组件创建参数之前,还包括:
判断上述引导界面组件创建参数中是否存在允许设置上述引导界面组件的位置;
若上述引导界面组件创建参数中存在允许设置上述引导界面组件的位置,则接收导界面组件创建参数;
若上述引导界面组件创建参数中不存在允许设置上述引导界面组件的位置,则停止引导界面组件的创建,避免内存资源浪费,避免系统崩溃。
如果上述平台上存在添加上述引导界面组件的位置,则通过函数:[[DYBubbleComgetDYBubbleCom].compContaineractViewLayoutReadyWithKey:key view:view info:info]
其中,DYBubbleCom为上述引导界面公共组件,Container为容器变量,info为信息变量,获取上述引导界面公共组件的容器变量和信息变量,根据上述容器变量和信息变量完成上述引导界面组件在上述平台上的添加;
同时,可以为上述函数添加接口,实现上述函数的跨平台调用,上述接口函数为:
DYBActControllerInterface。
在上述接口内添加接口移除方法,具体为:
(void)needRemoveActViewKey:(NSString*)key
(void)needRemoveActViewKey为功能语句,(NSString*)key为移除key的具体功能语句,上述key值为引导界面组件的标识信息;
通过函数:
[[DYBubbleComgetDYBubbleCom].compContainer
needRemoveActViewKey:key]
.compContainer为上述公共引导界面的容器变量,
needRemoveActViewKey:key为根据key移除引导界面的功能语句,实现对接口的移除;
根据上述身份标识码创建引导界面组件的标识信息,根据上述标识信息查找上述引导界面组件并移除上述引导界面组件,具体为:
通过
DYBActControllerInterface,@selector(needRemoveActViewKey:),needRemoveActViewKey:kVoiceEffectTip)
方法,其中,DYBubbleCom为上述引导界面公共组件,@selector是取类方法的编号,needRemoveActViewKey:kVoiceEffectTip)为功能代码,实现引导界面组件的移除,只设置了上述引导界面组件的生成,不需要单独设置上述引导界面组件的容器变量和信息变量,减少了在设置引导界面组件时的工作量。
上述引导界面组件在构建完成视图时,需要构建传值的字典,上述传值的字典具体为:
NSDictionary*dic=@{@"pointType":@(1)};其中,pointType为点型,NSDictionary*dic为字典得赋值语句。
使用接口调用的方法确定需要添加引导界面组件的平台,具体为:
(DYBActControllerInterface,
@selector(actViewLayoutReadyWithKey:view:info:),actViewLayoutReadyWithKey:kVoiceEffectTip view:tipsView info:dic)
其中,
DYBActControllerInterface是接口的添加函数,
@selector(actViewLayoutReadyWithKey:view:info:)
是获取上述引导组件基础信息的功能语句,其中上述基础信息包括:图形和内容等。
actViewLayoutReadyWithKey是需要调用的接口函数,
actViewLayoutReadyWithKey:kVoiceEffectTip view:tipsView info:dic
是根据上述基础信息包括:图形和内容等最终实现调用上述新的组件的功能语句,
其中dic是这个传值的字典,kVoiceEffectTip是上述引导界面组件的key值。
根据上述创建参数判断需要创建引导界面组件的平台的类型;
将上述引导界面公共组件设置在需要创建引导界面组件的平台,根据不同的平台的类型,创建不同的引导界面组件。
避免了面对不同的直播间每次都需要适应性编写相应代码,只需要根据不同直播平台的参数对上述引导界面组件进行创建就能够满足在不同直播间添加引导界面组件的操作。
根据上述设置身份标识码与创建参数生成引导界面组件的标识信息,上述标识信息为key值,并根据上述key值与上述创建参数设置:
(void)actViewLayoutReadyWithKey:(NSString*)keyview:(UIView*)viewinfo:(NSDictionary*)info
上述字符中,key为上述标识信息,view是组件需要创建出来的视图,info是一些配置信息,这里面的配置信息是指容器变量和信息变量;(void)actViewLayoutReadyWithKey:(NSString*)keyview实现引导界面组件图形的生成;(UIView*)view info:(NSDictionary*)info实现引导界面组件信息的生成,上述引导界面组件的生成的过程封装保存。通过调用上述新的组件的方法,使得新的组件可以在不同的直播平台运作,即,可以创建多个不同直播间平台的引导界面组件,而获取引导界面组件的位置,添加引导界面组件,都设置完成,不需要额外设置,避免了面对不同的直播间每次都需要适应性编写相应代码,导致工作量过大的技术问题,提高了引导界面组件创建的工作效率。
同时,如果需要移除气泡只需要调用一行代码就可以:
DYBActControllerInterface,
@selector(needRemoveActViewKey:),needRemoveActViewKey:kVoiceEffectTip);
上述函数就可以实现引导界面组件的移除,@selector(needRemoveActViewKey:),needRemoveActViewKey:kVoiceEffectTip);为根据Key值移除气泡的功能语句,在需要移除气泡时,上述一行代码就可以实现。
通过定义引导界面公共组件创建的通用协议;根据上述通用协议创建并注册引导界面公共组件;根据上述通用协议创建的引导界面公共组件不依赖直播间平台界面的特性,在面对不同的直播间平台界面时,上述引导界面公共组件可以公用,减小了设置引导界面组件的工作量,接收多组引导界面组件创建参数;基于上述通用协议对上述多组引导界面组件创建参数进行解析,根据解析结果通过上述引导界面公共组件生成多个不同的引导界面组件,使得通过创建的引导界面公共组件,在获得具体创建参数后,能根据不同的直播间平台界面一次适应性地生成多个不同的引导界面组件以适配相应的直播平台界面,解决了现有技术中的气泡添加在直播间时,面对不同的直播间每次都需要适应性编写相应代码,导致工作量过大的技术问题,提高了引导界面组件创建的工作效率。
上面对本申请实施例中引导界面组件方法进行了描述,下面对本申请实施例中的图片展示装置进行描述。
请参阅图3,在本申请中引导界面组件的生成装置的一个实施例,该图片展示装置包括:
301、协议模块:用于定义引导界面公共组件创建的通用协议;
302、创建模块:根据上述通用协议创建并注册引导界面公共组件;
303、数据采集模块:接收多组引导界面组件创建参数;
304、控制模块:基于上述通用协议对上述多组引导界面组件创建参数进行解析,根据解析结果通过上述引导界面公共组件生成多个不同的引导界面组件。
请参阅图4,图4为本申请实施例提供的电子设备的实施例示意图。
如图4所示,本申请实施例提供了一种电子设备,包括存储器410、处理器420及存储在存储器420上并可在处理器420上运行的计算机程序411,处理器420执行计算机程序411时实现以下步骤:定义引导界面公共组件创建的通用协议;根据上述通用协议创建并注册引导界面公共组件;接收多组引导界面组件创建参数;基于上述通用协议对上述多组引导界面组件创建参数进行解析,根据解析结果通过上述引导界面公共组件生成多个不同的引导界面组件.
可选的,在一种可能的实施例中,上述处理器420具体用于:上述根据通用协议创建并注册引导界面公共组件,还包括:获取上述引导界面公共组件的身份标识码,其中,上述身份标识码用于区分引导界面公共组件与其他功能组件;保存上述引导界面公共组件。
示例性的,对上述新的组件进行查找,具体地,客户端通过
(DYBubbleCom*)getDYBubbleCom
方法获取上述新的组件的身份标识码;
在上述新的组件内设置
函数return[DYActManager comForId:@"DYBubbleCom"]
用于将新的组件得身份标识码反馈至客户端,并对上述新的组件完成保存。
可选的,在一种可能的实施例中,上述处理器420具体用于:上述基于通用协议对引导界面组件创建参数进行解析,根据解析结果通过上述引导界面公共组件生成多个不同的引导界面组件,具体包括:
上述解析结果为解析后的每组创建参数,基于解析后的每组创建参数将上述引导界面公共组件在需要创建引导界面组件的多个平台上分别进行注册;将解析后的每组创建参数设置在上述引导界面公共组件内,生成对应每个上述平台的引导界面组件。可选的,在一种可能的实施例中,上述处理器420具体用于:在上述接收引导界面组件创建参数之前,还包括:
判断上述引导界面组件创建参数中是否存在允许设置上述引导界面组件的位置;
若上述引导界面组件创建参数中存在允许设置上述引导界面组件的位置,则接收导界面组件创建参数;
若上述引导界面组件创建参数中不存在允许设置上述引导界面组件的位置,则停止引导界面组件的创建。
如果上述平台上存在添加上述引导界面组件的位置,则通过函数:
[[DYBubbleComgetDYBubbleCom].compContainer
actViewLayoutReadyWithKey:key view:view info:info]
完成上述引导界面组件在上述平台上的添加;
同时,为上述函数添加接口,实现上述函数的跨平台调用,上述接口函数为:
DYBActControllerInterface。
在上述接口内添加接口移除方法,具体为:
(void)needRemoveActViewKey:(NSString*)key
上述key值为引导界面组件的标识信息;
通过函数:
[[DYBubbleComgetDYBubbleCom].compContainer
needRemoveActViewKey:key]
实现对接口的移除;
上述引导界面组件在构建完成视图时,需要构建传值的字典,上述传值的字典具体为:
NSDictionary*dic=@{@"pointType":@(1)}
使用接口调用的方法确定需要添加引导界面组件的平台,具体为:
(DYBActControllerInterface,
@selector(actViewLayoutReadyWithKey:view:info:),
actViewLayoutReadyWithKey:kVoiceEffectTip view:tipsView info:dic)
其中,
DYBActControllerInterface是接口的添加函数,
@selector(actViewLayoutReadyWithKey:view:info:),
actViewLayoutReadyWithKey是需要调用的接口函数,
actViewLayoutReadyWithKey:kVoiceEffectTip view:tipsView info:dic
是最终实现调用上述新的组件的方法,
其中dic是这个传值的字典,kVoiceEffectTip是上述引导界面组件的key值。
可选的,在一种可能的实施例中,上述处理器420具体用于:上述基于上述通用协议对上述多组引导界面组件创建参数进行解析,根据解析结果通过上述引导界面公共组件生成多种不同的引导界面组件,还包括:
根据上述创建参数判断需要创建引导界面组件的平台的类型;
将上述引导界面公共组件设置在需要创建引导界面组件的平台。
可选的,在一种可能的实施例中,上述处理器420具体用于:
在根据上述通用协议创建并注册引导界面公共组件时,使用以下函数限制创建并注册引导界面公共组件的过程唯一:
static dispatch_once_t onceToken;
dispatch_once(&onceToken,^{
其中,Token是术语令牌,tatic dispatch_once_t onceToken为创建一个静态的术语令牌,dispatch_once(&onceToken,^{用于确保引导界面公共组件只创建一次。
示例性的,在根据上述通用协议创建并注册引导界面公共组件时,使用
函数DYBubbleCom*com=[[DYBubbleCom alloc]init];
确保创建新的组件过程只进行一次。
可选的,在一种可能的实施例中,上述处理器420具体用于:在生成多个不同的引导界面组件之前,还包括:
根据上述身份标识码创建引导界面组件的标识信息,根据上述标识信息查找上述引导界面组件并移除上述引导界面组件,具体为:
通过
DYBActControllerInterface,@selector(needRemoveActViewKey:),
needRemoveActViewKey:kVoiceEffectTip)
方法,实现引导界面组件的移除,只设置了上述引导界面组件的生成,不需要单独设置上述引导界面组件的容器变量和信息变量,减少了在设置引导界面组件时的工作量。
如图5所示,本实施例提供了一种计算机可读存储介质500,其上存储有计算机程序511,该计算机程序511被处理器执行时实现如下步骤:定义引导界面公共组件创建的通用协议;根据上述通用协议创建并注册引导界面公共组件;接收多组引导界面组件创建参数;基于上述通用协议对上述多组引导界面组件创建参数进行解析,根据解析结果通过上述引导界面公共组件生成多个不同的引导界面组件。
可选的,在一种可能的实施例中,该计算机程序511被处理器执行时具体用于实现如下步骤:该计算机程序511被处理器执行时具体用于实现如下步骤:
上述根据通用协议创建并注册引导界面公共组件,还包括:获取上述引导界面公共组件的身份标识码,其中,上述身份标识码用于区分引导界面公共组件与其他功能组件;保存上述引导界面公共组件。
示例性的,对上述新的组件进行查找,具体地,客户端通过
(DYBubbleCom*)getDYBubbleCom
方法获取上述新的组件的身份标识码;
在上述新的组件内设置
函数return[DYActManager comForId:@"DYBubbleCom"]
用于将新的组件得身份标识码反馈至客户端,并对上述新的组件完成保存。
可选的,在一种可能的实施例中,该计算机程序511被处理器执行时具体用于实现如下步骤:上述基于通用协议对引导界面组件创建参数进行解析,根据解析结果通过上述引导界面公共组件生成多个不同的引导界面组件,具体包括:
上述解析结果为解析后的每组创建参数,基于解析后的每组创建参数将上述引导界面公共组件在需要创建引导界面组件的多个平台上分别进行注册;将解析后的每组创建参数设置在上述引导界面公共组件内,生成对应每个上述平台的引导界面组件。示例性的,
可选的,在一种可能的实施例中,该计算机程序511被处理器执行时具体用于实现如下步骤:在上述接收引导界面组件创建参数之前,还包括:
判断上述引导界面组件创建参数中是否存在允许设置上述引导界面组件的位置;
若上述引导界面组件创建参数中存在允许设置上述引导界面组件的位置,则接收导界面组件创建参数;
若上述引导界面组件创建参数中不存在允许设置上述引导界面组件的位置,则停止引导界面组件的创建。
如果上述平台上存在添加上述引导界面组件的位置,则通过函数:
[[DYBubbleComgetDYBubbleCom].compContainer
actViewLayoutReadyWithKey:key view:view info:info]
完成上述引导界面组件在上述平台上的添加;
同时,为上述函数添加接口,实现上述函数的跨平台调用,上述接口函数为:
DYBActControllerInterface。
在上述接口内添加接口移除方法,具体为:
(void)needRemoveActViewKey:(NSString*)key
上述key值为引导界面组件的标识信息;
通过函数:
[[DYBubbleComgetDYBubbleCom].compContainer
needRemoveActViewKey:key]
实现对接口的移除;
上述引导界面组件在构建完成视图时,需要构建传值的字典,上述传值的字典具体为:
NSDictionary*dic=@{@"pointType":@(1)}
使用接口调用的方法确定需要添加引导界面组件的平台,具体为:
(DYBActControllerInterface,
@selector(actViewLayoutReadyWithKey:view:info:),
actViewLayoutReadyWithKey:kVoiceEffectTip view:tipsView info:dic)
其中,
DYBActControllerInterface是接口的添加函数,
@selector(actViewLayoutReadyWithKey:view:info:),
actViewLayoutReadyWithKey是需要调用的接口函数,
actViewLayoutReadyWithKey:kVoiceEffectTip view:tipsView info:dic
是最终实现调用上述新的组件的方法,
其中dic是这个传值的字典,kVoiceEffectTip是上述引导界面组件的key值。
可选的,在一种可能的实施例中,该计算机程序511被处理器执行时具体用于实现如下步骤:上述基于上述通用协议对上述多组引导界面组件创建参数进行解析,根据解析结果通过上述引导界面公共组件生成多种不同的引导界面组件,还包括:
根据上述创建参数判断需要创建引导界面组件的平台的类型;
将上述引导界面公共组件设置在需要创建引导界面组件的平台。
可选的,在一种可能的实施例中,该计算机程序511被处理器执行时具体用于实现如下步骤:
在根据上述通用协议创建并注册引导界面公共组件时,使用以下函数限制创建并注册引导界面公共组件的过程唯一:
static dispatch_once_t onceToken;
dispatch_once(&onceToken,^{
其中,Token是术语令牌,tatic dispatch_once_t onceToken为创建一个静态的术语令牌,dispatch_once(&onceToken,^{用于确保引导界面公共组件只创建一次。
示例性的,在根据上述通用协议创建并注册引导界面公共组件时,使用
函数DYBubbleCom*com=[[DYBubbleCom alloc]init];
确保创建新的组件过程只进行一次。
可选的,在一种可能的实施例中,该计算机程序511被处理器执行时具体用于实现如下步骤:在根据解析结果通过上述引导界面公共组件生成多个不同的引导界面组件之前,还包括:
根据上述身份标识码创建引导界面组件的标识信息,根据上述标识信息查找上述引导界面组件并移除上述引导界面组件,具体为:
通过
DYBActControllerInterface,@selector(needRemoveActViewKey:),
needRemoveActViewKey:kVoiceEffectTip)
方法,实现引导界面组件的移除,只设置了上述引导界面组件的生成,不需要单独设置上述引导界面组件的容器变量和信息变量,减少了在设置引导界面组件时的工作量。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,上述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
又例如,上述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,再例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明提供的实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
上述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例上述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释,此外,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
最后应说明的是:以上上述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的范围。都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (10)
1.一种引导界面组件的生成方法,其特征在于,包括以下步骤:
定义引导界面公共组件创建的通用协议;
根据所述通用协议创建并注册引导界面公共组件;
接收多组引导界面组件创建参数;
基于所述通用协议对所述多组引导界面组件创建参数进行解析,根据解析结果通过所述引导界面公共组件生成多个不同的引导界面组件。
2.根据权利要求1所述的引导界面组件的生成方法,其特征在于,所述根据所述通用协议创建并注册引导界面公共组件,还包括:
获取所述引导界面公共组件的身份标识码,其中,所述身份标识码用于区分引导界面公共组件与其他功能组件;
保存所述引导界面公共组件。
3.根据权利要求1所述的引导界面组件的生成方法,其特征在于,所述基于所述通用协议对所述引导界面组件创建参数进行解析,根据解析结果通过所述引导界面公共组件生成多个不同的引导界面组件,具体包括:
基于所述解析结果将所述引导界面公共组件在需要创建引导界面组件的多个平台上通过调用函数[DYActManager registerCom:com]分别进行注册,其中,DYActManager为动态管理程序,registerCom:com为实现注册操作的功能语句;
将所述解析结果设置在所述引导界面公共组件内,生成对应每个所述平台的引导界面组件。
4.根据权利要求1所述的引导界面组件的生成方法,其特征在于,在所述接收引导界面组件创建参数之前,还包括:
判断所述引导界面组件创建参数中是否存在允许设置所述引导界面组件的位置;
若所述引导界面组件创建参数中存在允许设置所述引导界面组件的位置,则接收导界面组件创建参数;
若所述引导界面组件创建参数中不存在允许设置所述引导界面组件的位置,则停止引导界面组件的创建。
5.根据权利要求1所述的引导界面组件的生成方法,其特征在于,所述基于所述通用协议对所述多组引导界面组件创建参数进行解析,根据解析结果通过所述引导界面公共组件生成多种不同的引导界面组件,还包括:
根据所述创建参数判断需要创建引导界面组件的平台的类型;
将所述引导界面公共组件设置在需要创建引导界面组件的平台。
6.根据权利要求1所述的引导界面组件的生成方法,其特征在于,所述方法还包括:
在根据所述通用协议创建并注册引导界面公共组件时,使用功能函数限制所述创建并注册引导界面公共组件的过程唯一,所述功能函数在限制所述创建并注册引导界面公共组件的过程唯一时具体实现以下功能:
创建一个术语令牌,所述术语令牌代表所述引导界面公共组件;
限制创建所述术语令牌的过程唯一。
7.根据权利要求2所述的引导界面组件的生成方法,其特征在于,在生成多个不同的引导界面组件之前,还包括:
根据所述身份标识码创建引导界面组件的标识信息,其中,所述标识信息用于查找和/或移除所述引导界面组件。
8.一种引导界面组件的生成装置,其特征在于,包括:
协议模块,用于定义引导界面公共组件创建的通用协议;
创建模块,用于根据所述通用协议创建并注册引导界面公共组件;
数据采集模块,用于接收多组引导界面组件创建参数;
控制模块,用于基于所述通用协议对所述多组引导界面组件创建参数进行解析,根据解析结果通过所述引导界面公共组件生成多个不同的引导界面组件。
9.一种电子设备,包括:储存器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器用于执行存储器中存储的计算机程序时实现如权利要求1-7中任一项所述的引导界面组件的生成方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于:所述计算机程序被处理器执行时实现如权利要求1-7中任一项所述的引导界面组件的生成方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011213813.0A CN114443029A (zh) | 2020-11-04 | 2020-11-04 | 一种引导界面组件的生成方法及相关装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011213813.0A CN114443029A (zh) | 2020-11-04 | 2020-11-04 | 一种引导界面组件的生成方法及相关装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114443029A true CN114443029A (zh) | 2022-05-06 |
Family
ID=81361494
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011213813.0A Pending CN114443029A (zh) | 2020-11-04 | 2020-11-04 | 一种引导界面组件的生成方法及相关装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114443029A (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5428791A (en) * | 1992-07-18 | 1995-06-27 | International Computers Limited | Configuration mechanism for a computer system having generic user interface and component-specific builder modules |
CN106598577A (zh) * | 2016-11-30 | 2017-04-26 | 中国航空工业集团公司沈阳飞机设计研究所 | 一种基于ScadeDisplay软件的通用组件集成方法 |
CN107247740A (zh) * | 2017-05-10 | 2017-10-13 | 北京潘达互娱科技有限公司 | 直播间功能定制方法及装置 |
CN107423040A (zh) * | 2017-03-24 | 2017-12-01 | 北京潘达互娱科技有限公司 | 直播应用程序开发方法及装置 |
CN107566875A (zh) * | 2017-08-31 | 2018-01-09 | 江苏省公用信息有限公司 | 一种在智能机顶盒上ui灵活配置、动态更新的方法 |
CN108664242A (zh) * | 2017-04-01 | 2018-10-16 | 北京京东尚科信息技术有限公司 | 生成可视化界面的方法、装置、电子设备和可读存储介质 |
CN109213486A (zh) * | 2018-08-20 | 2019-01-15 | 北京百度网讯科技有限公司 | 用于生成用户定制的可视化组件的方法和装置 |
CN110531976A (zh) * | 2019-09-02 | 2019-12-03 | 浪潮云信息技术有限公司 | 一种可视化大屏中组件化配制图表的方法 |
-
2020
- 2020-11-04 CN CN202011213813.0A patent/CN114443029A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5428791A (en) * | 1992-07-18 | 1995-06-27 | International Computers Limited | Configuration mechanism for a computer system having generic user interface and component-specific builder modules |
CN106598577A (zh) * | 2016-11-30 | 2017-04-26 | 中国航空工业集团公司沈阳飞机设计研究所 | 一种基于ScadeDisplay软件的通用组件集成方法 |
CN107423040A (zh) * | 2017-03-24 | 2017-12-01 | 北京潘达互娱科技有限公司 | 直播应用程序开发方法及装置 |
CN108664242A (zh) * | 2017-04-01 | 2018-10-16 | 北京京东尚科信息技术有限公司 | 生成可视化界面的方法、装置、电子设备和可读存储介质 |
CN107247740A (zh) * | 2017-05-10 | 2017-10-13 | 北京潘达互娱科技有限公司 | 直播间功能定制方法及装置 |
CN107566875A (zh) * | 2017-08-31 | 2018-01-09 | 江苏省公用信息有限公司 | 一种在智能机顶盒上ui灵活配置、动态更新的方法 |
CN109213486A (zh) * | 2018-08-20 | 2019-01-15 | 北京百度网讯科技有限公司 | 用于生成用户定制的可视化组件的方法和装置 |
CN110531976A (zh) * | 2019-09-02 | 2019-12-03 | 浪潮云信息技术有限公司 | 一种可视化大屏中组件化配制图表的方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6678885B2 (en) | System and method for common code generation | |
CN111736840A (zh) | 小程序应用的编译方法、运行方法、存储介质及电子设备 | |
US11699073B2 (en) | Network off-line model processing method, artificial intelligence processing device and related products | |
US11151089B2 (en) | Compression of log data using pattern recognition | |
CN110727429A (zh) | 一种前端页面的生成方法、装置及设备 | |
CN110633258B (zh) | 日志插入方法、装置、计算机装置及存储介质 | |
CN113900657A (zh) | 读取数据规则的方法和电子设备、存储介质 | |
CN114443029A (zh) | 一种引导界面组件的生成方法及相关装置 | |
CN116302054A (zh) | 一种软件项目的开发方法、装置、存储介质及电子设备 | |
CN113849161A (zh) | 应用控制方法、装置、存储介质及电子设备 | |
CN114356342A (zh) | 一种编译方法及装置 | |
CN113127005A (zh) | 一种可执行文件生成的方法、装置以及计算机存储介质 | |
CN114493642A (zh) | 用户画像标签生成方法、装置、计算设备及存储介质 | |
CN113792247B (zh) | 基于代码特征生成功能流程图的方法、装置、设备和介质 | |
CN114371852B (zh) | 一种编译方法及装置 | |
CN113032169B (zh) | 跨语言软件系统的资源调用方法、设备及存储介质 | |
CN115086690A (zh) | 一种界面控制信息分发方法及相关设备 | |
CN116521510A (zh) | 测试方法、装置、设备、存储介质及产品 | |
CN114020263A (zh) | 一种接口配置生成方法及装置 | |
CN117931198A (zh) | 路由预编译系统、路由调用方法、路由预编译方法及装置 | |
CN112631760A (zh) | 一种线程创建方法、系统、装置及计算机存储介质 | |
CN114490044A (zh) | 一种组件共享方法、装置、设备及介质 | |
CN113626110A (zh) | 数据动态处理方法、设备、存储介质及装置 | |
CN114091893A (zh) | 一种业务流程的生成方法及装置 | |
CN113220380A (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 |