一种基于皮肤缓存机制的界面渲染方法、装置及电子设备制造方法及图纸

技术编号:21798526 阅读:19 留言:0更新日期:2019-08-07 10:22
本发明专利技术实施例提供了一种基于皮肤缓存机制的界面渲染方法、装置及电子设备。该方法应用于客户端,客户端中预先设置存储有基于预设的模型复用策略所缓存的各个皮肤模型的缓存池,且各个皮肤模型的模型标识是基于模型复用策略对应的皮肤模型的属性生成的;该方法包括:获取待渲染界面的目标数据文件和目标皮肤标识;监控渲染过程是否达到第一指定时机;若是,判断缓存池中是否存在与目标皮肤标识相同的目标模型标识;当判断结果为是时,从缓存池中提取具有目标模型标识的皮肤模型,作为目标皮肤模型;基于目标数据文件和目标皮肤模型,渲染待渲染界面。与现有技术相比,应用本发明专利技术实施例提供的方案,可以提高客户端进行界面渲染的速度。

An Interface Rendering Method, Device and Electronic Equipment Based on Skin Buffer Mechanism

【技术实现步骤摘要】
一种基于皮肤缓存机制的界面渲染方法、装置及电子设备
本专利技术涉及计算机
,特别是涉及一种基于皮肤缓存机制的界面渲染方法、装置及电子设备。
技术介绍
当前,随着计算机技术的不断发展,人们在日常生活中会应用到越来越多的客户端,例如,即时通讯客户端、新闻客户端、各视频网站客户端等。为了带给用户更好的用户体验,这些客户端均支持界面动态化,即电子设备展示有某客户端的某个界面,当用户点击该界面中的指定按钮,或者,当用户在该电子设备的屏幕上执行滑动操作时,该客户端可以渲染新的界面,展示给用户新的内容。例如,如图1和图2所示,针对一客户端,当前电子设备所显示的界面如图1所示,当用户向上滑动该电子设备时,微博客户端便可以通过渲染新的界面,向用户展示如图2所示的新的内容。在现有技术中,客户端渲染每个新的界面时,均需要在下载得到该界面的皮肤文件和数据文件后,执行皮肤文件解析操作,得到该界面的皮肤模型,该皮肤模型为一种模板文件,表征了该新的界面所包括的各类元素和控件的数量、形状、大小、相对位置关系等布局信息。在得到该界面的皮肤模型后,客户端将该皮肤模型与上述数据文件绑定在一起,即按照皮肤模型中各类元素和控件与数据文件中各数据的对应关系,在皮肤模型中填充数据文件中的各类元素和控件的数据,从而,在绑定完成之后,展示该界面。然而,专利技术人在实现本专利技术的过程中发现,现有技术至少存在如下问题:客户端在对每一个新的界面进行渲染时,均需要执行皮肤文件解析操作。由于皮肤解析操作的耗时比较长,因此,导致客户端进行界面渲染的速度较慢。
技术实现思路
本专利技术实施例的目的在于提供一种基于皮肤缓存机制的界面渲染方法,以实现提高客户端进行界面渲染的速度。具体技术方案如下:第一方面,本专利技术实施例提供了一种基于皮肤缓存机制的界面渲染方法,应用于客户端,所述客户端中预先设置存储有皮肤模型的缓存池,所述缓存池中的各个皮肤模型是基于预设的模型复用策略所缓存的,且所述各个皮肤模型的模型标识是基于所述模型复用策略对应的皮肤模型的属性生成的;所述方法包括:获取待渲染界面的目标数据文件,并获取为所述待渲染界面的目标皮肤所设置的目标皮肤标识,其中,所述目标皮肤标识用于标识所述待渲染界面的目标皮肤的属性;监控所述待渲染界面的渲染过程是否达到第一指定时机,其中,每一界面的渲染过程被预分解为多个渲染时机,所述多个渲染时机中包括所述第一指定时机;若是,判断所述缓存池中是否存在与所述目标皮肤标识相同的目标模型标识;当判断结果为是时,从所述缓存池中提取具有所述目标模型标识的皮肤模型,作为目标皮肤模型;基于所述目标数据文件和所述目标皮肤模型,渲染所述待渲染界面。可选的,一种具体实现方式中,所述多个渲染时机包括:准备渲染时机、将要渲染时机、开始渲染时机、渲染完成时机、准备消失时机、将要消失时机、开始消失时机和消失完成时机;所述第一指定时机为:所述开始渲染时机。可选的,一种具体实现方式中,所述方法还包括:当所述判断结果为所述缓存池中不存在与所述目标皮肤标识相同的目标模型标识时,获取所述待渲染界面的目标皮肤文件;基于所述目标皮肤文件和所述目标数据文件,渲染所述待渲染界面。可选的,一种具体实现方式中,在所述获取为所述待渲染界面的目标皮肤所设置的目标皮肤标识的步骤之前,所述方法还包括:检测所述客户端是否存在默认皮肤标识;如果存在,从所述缓存池中获取任一预设皮肤模型,基于所获取的预设皮肤模型和所述目标数据文件,渲染所述待渲染界面;其中,所述预设皮肤模型为:预先在所述缓存池中存储的具有所述默认皮肤标识的,且基于所述模型复用策略生成的皮肤模型;如果不存在,执行所述获取为所述待渲染界面的目标皮肤文件所设置的目标皮肤标识的步骤。可选的,一种具体实现方式中,在所述从所述缓存池中获取任一预设皮肤模型的步骤之前,所述方法还包括:在所述缓存池中存储具有所述默认皮肤标识的基于所述模型复用策略的预设皮肤模型。可选的,一种具体实现方式中,所述默认皮肤标识的设置方式为:获得用户发出的标识设置指令,将所述标识设置指令所指示的标识设置为所述客户端对应的默认皮肤标识;或,在检测到符合默认皮肤标识设置条件时,确定预设时间段内出现频率最高的,且为渲染界面的皮肤文件所设置的标识,作为所述客户端对应的默认皮肤标识。可选的,一种具体实现方式中,在所述从所述缓存池中提取所述目标皮肤模型的步骤之后,在所述基于所述目标数据文件和所述目标皮肤模型,渲染所述待渲染界面的步骤之前,所述方法还包括:删除所述缓存池中所存储的所述目标皮肤模型。可选的,一种具体实现方式中,所述方法还包括:监控所述待渲染界面的渲染过程是否达到所述多个渲染时间包括的第二指定时机;若是,将所述目标皮肤模型存储到所述缓存池中。第二方面,本专利技术实施例提供了一种基于皮肤缓存机制的界面渲染装置,应用于客户端,所述客户端中预先设置存储有皮肤模型的缓存池,所述缓存池中的各个皮肤模型是基于预设的模型复用策略所缓存的,且所述各个皮肤模型的模型标识是基于所述模型复用策略对应的皮肤模型的属性生成的;所述装置包括:信息获取模块,用于获取待渲染界面的目标数据文件,并获取为所述待渲染界面的目标皮肤所设置的目标皮肤标识,其中,所述目标皮肤标识用于标识所述待渲染界面的目标皮肤的属性;第一时机监控模块,用于监控所述待渲染界面的渲染过程是否达到第一指定时机,如果是,触发模型判断模块;其中,每一界面的渲染过程被预分解为多个渲染时机,所述多个渲染时机中包括所述第一指定时机;所述模型判断模块,用于判断所述缓存池中是否存在与所述目标皮肤标识相同的目标模型标识;若是,触发模型提取模块;所述模型提取模块,用于从所述缓存池中提取具有所述目标模型标识的皮肤模型,作为目标皮肤模型;第一界面渲染模块,用于基于所述目标数据文件和所述目标皮肤模型,渲染所述待渲染界面。可选的,一种具体实现方式中,所述多个渲染时机包括:准备渲染时机、将要渲染时机、开始渲染时机、渲染完成时机、准备消失时机、将要消失时机、开始消失时机和消失完成时机;所述第一指定时机为:所述开始渲染时机。可选的,一种具体实现方式中,所述装置还包括:文件获取模块,用于当所述判断结果为所述缓存池中不存在与所述目标皮肤标识相同的目标模型标识时,获取所述待渲染界面的目标皮肤文件;第二界面渲染模块,用于基于所述目标皮肤文件和所述目标数据文件,渲染所述待渲染界面。可选的,一种具体实现方式中,所述装置还包括:标识检测模块,用于在所述获取为所述待渲染界面的目标皮肤所设置的目标皮肤标识的步骤之前,检测所述客户端是否存在默认皮肤标识;如果存在,触发模型获取模块;如果不存在,触发所述信息获取模块;所述模型获取模块,用于从所述缓存池中获取任一预设皮肤模型,基于所获取的预设皮肤模型和所述目标数据文件,渲染所述待渲染界面;其中,所述预设皮肤模型为:预先在所述缓存池中存储的具有所述默认皮肤标识的,且基于所述模型复用策略生成的皮肤模型。可选的,一种具体实现方式中,所述装置还包括:第一模型存储模块,用于在所述从所述缓存池中获取任一预设皮肤模型的步骤之前,在所述缓存池中存储具有所述默认皮肤标识的基于所述模型复用策略的预设皮肤模型。可选的,一种具体实现方式中,所述装置还包括:标识设置模块,用于设置所述本文档来自技高网...

【技术保护点】
1.一种基于皮肤缓存机制的界面渲染方法,其特征在于,应用于客户端,所述客户端中预先设置存储有皮肤模型的缓存池,所述缓存池中的各个皮肤模型是基于预设的模型复用策略所缓存的,且所述各个皮肤模型的模型标识是基于所述模型复用策略对应的皮肤模型的属性生成的;所述方法包括:获取待渲染界面的目标数据文件,并获取为所述待渲染界面的目标皮肤所设置的目标皮肤标识,其中,所述目标皮肤标识用于标识所述待渲染界面的目标皮肤的属性;监控所述待渲染界面的渲染过程是否达到第一指定时机,其中,每一界面的渲染过程被预分解为多个渲染时机,所述多个渲染时机中包括所述第一指定时机;若是,判断所述缓存池中是否存在与所述目标皮肤标识相同的目标模型标识;当判断结果为是时,从所述缓存池中提取具有所述目标模型标识的皮肤模型,作为目标皮肤模型;基于所述目标数据文件和所述目标皮肤模型,渲染所述待渲染界面。

【技术特征摘要】
1.一种基于皮肤缓存机制的界面渲染方法,其特征在于,应用于客户端,所述客户端中预先设置存储有皮肤模型的缓存池,所述缓存池中的各个皮肤模型是基于预设的模型复用策略所缓存的,且所述各个皮肤模型的模型标识是基于所述模型复用策略对应的皮肤模型的属性生成的;所述方法包括:获取待渲染界面的目标数据文件,并获取为所述待渲染界面的目标皮肤所设置的目标皮肤标识,其中,所述目标皮肤标识用于标识所述待渲染界面的目标皮肤的属性;监控所述待渲染界面的渲染过程是否达到第一指定时机,其中,每一界面的渲染过程被预分解为多个渲染时机,所述多个渲染时机中包括所述第一指定时机;若是,判断所述缓存池中是否存在与所述目标皮肤标识相同的目标模型标识;当判断结果为是时,从所述缓存池中提取具有所述目标模型标识的皮肤模型,作为目标皮肤模型;基于所述目标数据文件和所述目标皮肤模型,渲染所述待渲染界面。2.根据权利要求1所述的方法,其特征在于,所述多个渲染时机包括:准备渲染时机、将要渲染时机、开始渲染时机、渲染完成时机、准备消失时机、将要消失时机、开始消失时机和消失完成时机;所述第一指定时机为:所述开始渲染时机。3.根据权利要求1所述的方法,其特征在于,所述方法还包括:当所述判断结果为所述缓存池中不存在与所述目标皮肤标识相同的目标模型标识时,获取所述待渲染界面的目标皮肤文件;基于所述目标皮肤文件和所述目标数据文件,渲染所述待渲染界面。4.根据权利要求1所述的方法,其特征在于,在所述获取为所述待渲染界面的目标皮肤所设置的目标皮肤标识的步骤之前,所述方法还包括:检测所述客户端是否存在默认皮肤标识;如果存在,从所述缓存池中获取任一预设皮肤模型,基于所获取的预设皮肤模型和所述目标数据文件,渲染所述待渲染界面;其中,所述预设皮肤模型为:预先在所述缓存池中存储的具有所述默认皮肤标识的,且基于所述模型复用策略生成的皮肤模型;如果不存在,执行所述获取为所述待渲染界面的目标皮肤文件所设置的目标皮肤标识的步骤。5.根据权利要求4所述的方法,其特征在于,在所述从所述缓存池中获取任一预设皮肤模型的步骤之前,所述方法还包括:在所述缓存池中存储具有所述默认皮肤标识的基于所述模型复用策略的预设皮肤模型。6.根据权利要求4所述的方法,其特征在于,所述默认皮肤标识的设置方式为:获得用户发出的标识设置指令,将所述标识设置指令所指示的标识设置为所述客户端对应的默认皮肤标识;或,在检测到符合默认皮肤标识设置条件时,确定预设时间段内出现频率最高的,且为渲染界面的皮肤文件所设置的标识,作为所述客户端对应的默认皮肤标识。7.根据权利要求1所述的方法,其特征在于,在所述从所述缓存池中提取具有所述目标模型标识的皮肤模型的步骤之后,在所述基于所述目标数据文件和所述目标皮肤模型,渲染所述待渲染界面的步骤之前,所述方法还包括:删除所述缓存池中所存储的所述目标皮肤模型。8.根据权利要求7所述的方法,其特征在于,所述方法还包括:监控所述待渲染界面的渲染过程是否达到所述多个渲染时机包括的第二指定时机;若是,将所述目标皮肤模型存储到所述缓存池中。9.一种基于皮肤缓存机制的界面渲染装置,其特征在于,应用于客户端,所述客户端中预先设置存储有皮肤模型的缓存池,所述缓存池中的各个皮肤模型是基于预设的模型复用策略所缓存的,且所述各个皮肤模型的模型标识是基于所述模型复用策略对应的皮肤模型的属性生成的;所述装置包括:信息获取模块,用于获取待渲染界面的目标数据文件,并获取为所述待...

【专利技术属性】
技术研发人员:杨阳
申请(专利权)人:北京奇艺世纪科技有限公司
类型:发明
国别省市:北京,11

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

1