CN109725964B - 混合型框架的换肤方法、装置、电子设备 - Google Patents
混合型框架的换肤方法、装置、电子设备 Download PDFInfo
- Publication number
- CN109725964B CN109725964B CN201811495046.XA CN201811495046A CN109725964B CN 109725964 B CN109725964 B CN 109725964B CN 201811495046 A CN201811495046 A CN 201811495046A CN 109725964 B CN109725964 B CN 109725964B
- Authority
- CN
- China
- Prior art keywords
- skin
- latest
- rendering
- client
- framework
- 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.)
- Active
Links
Images
Landscapes
- Information Transfer Between Computers (AREA)
Abstract
本发明提供了混合型框架的换肤方法、装置及电子设备,属于程序开发领域,包括周期性检测是否存在最新皮肤,在接收到换肤请求时,根据客户端所使用的框架从已下载的皮肤文件中分别提取对应的皮肤元素进行皮肤渲染。在确定每种框架下均已完成皮肤渲染后,进行皮肤刷新切换至最新皮肤。通过采用皮肤文件预先缓存的方法缩短现有技术中从服务器实时下载存在的延迟,避免皮肤更新失败。另外提出了对换肤进程进行锁定的机制,确保全部客户端都完成换肤后再统一刷新显示界面的同步换肤的机制,能够避免极少数情况下换肤失败导致客户端界面显示错乱、新旧杂糅的现象,保证了客户端中数据的可读性,避免因界面混乱导致的交易延迟,降低了资产损失。
Description
技术领域
本发明属于程序开发领域,特别涉及混合型框架的换肤方法、装置、电子设备。
背景技术
在金融投资领域的用户群体中,每天面对多个显示器、并且每个显示器中同时显示多个程序界面已经成为司空见惯的事情。为了提高显示界面中众多数据的可读性,对程序界面进行换肤操作,也是用户的惯用操作。
由于用户使用的客户端往往采用不同的软件框架进行搭建,在使用混合型框架的客户端中,一旦需要更换客户端皮肤时,容易出现皮肤更新不彻底的情况,即客户端显示界面中会同时出现新旧两种皮肤。此时会大幅度降低客户端中数据的可读性,可能会导致交易延迟,从而造成资产损失。
发明内容
为了解决现有技术中存在的缺点和不足,本发明提供了能够切换程序显示界面的混合型框架的换肤方法、装置及电子设备,能够提高皮肤切换成功率,降低皮肤切换错乱导致的资产损失。
为了达到上述技术目的,根据本公开实施例的第一方面,本发明提供了混合型框架的换肤方法,所述换肤方法包括:
周期性检测混合型框架客户端是否存在最新皮肤,如果存在,则下载最新皮肤对应的皮肤文件至本地存储器;
在接收到换肤请求时,根据客户端所使用的框架从已下载的皮肤文件中分别提取对应的皮肤元素进行皮肤渲染;
在进行皮肤渲染的过程中,对正在显示的界面内容进行锁定,当确定每种框架下均已完成皮肤渲染后,在解除锁定后进行皮肤刷新操作,最终在不同显示界面同步切换至最新皮肤。
可选的,所述周期性检测混合型框架客户端是否存在最新皮肤,如果存在,则下载最新皮肤对应的皮肤文件至本地存储器,包括:
周期性生成针对最新皮肤是否存在的查新请求,将查新请求发送至服务器;
在服务器中对是否存有最新皮肤进行判断;
如果存在最新皮肤,则将与最新皮肤对应皮肤文件下载到本地存储器。
可选的,所述在服务器中对是否存有最新皮肤进行判断,包括:
获取服务器中存有的存档日期最新的皮肤对应的最新版本号;
与查新请求中包含的当前使用皮肤的当前版本号进行对比;
如果当前版本号等于最新版本号,则判断服务器中尚未存有最新皮肤;
如果当前版本号低于最新版本号,则判断服务器中已经存有最新皮肤。
可选的,所述如果存在最新皮肤,则将与最新皮肤对应皮肤文件下载到本地存储器,包括:
如果存在最新皮肤,则将最新皮肤包含的全部皮肤文件下载到本地存储器,或
将最新皮肤相对于当前使用皮肤的更新皮肤文件增量下载到本地存储器。
可选的,所述则下载最新皮肤对应的皮肤文件至本地存储器,包括:
混合型框架客户端所使用的框架包括于C/S框架和B/S框架;
针对C/S框架使用的皮肤文件下载方式为借助C/S框架客户端更新时所使用的独立网路链路;
针对B/S框架使用的皮肤文件下载方式为复用C/S框架客户端更新时所使用的独立网路链路。
可选的,所述在接收到换肤请求时,根据客户端所使用的框架从已下载的皮肤文件中分别提取对应的皮肤元素进行皮肤渲染,包括:
在接收到换肤请求后锁定客户端当前的显示界面;
从本地存储器中调取已下载的皮肤文件,根据客户端所使用的框架不同,分别从皮肤文件中提取与框架对应的皮肤元素进行渲染。
可选的,所述根据客户端所使用的框架不同,分别从皮肤文件中提取与框架对应的皮肤元素进行渲染,包括:
如果客户端使用C/S框架搭建,则从皮肤文件中选取针对C/S框架皮肤的皮肤元素;
将提取到的皮肤元素按客户端界面中从上到下、从左到右的顺序依次对界面中的颜色、图片、背景内容进行渲染;
或
如果客户端使用B/S框架搭建,则从皮肤文件中选取CSS样式文件进行渲染,并对图片资源进行切换处理。
可选的,所述在确定每种框架下均已完成皮肤渲染后,进行皮肤刷新操作,切换至最新皮肤,包括:
在进行皮肤渲染的过程中,对当前正在显示的界面内容进行锁定;
在锁定后对多个显示界面中每个框架下的皮肤渲染流程进行统计;
如果统计结果表明全部显示界面中针对每个框架的皮肤渲染流程均成功完成,则对客户端中已锁定的显示界面进行解锁;
对解锁后的显示界面进行刷新操作,刷新完成后将显示界面中的显示内容在同一时刻切换至最新皮肤。
可选的,所述换肤方法还包括:
如果统计结果表明全部显示界面中针对每个框架的皮肤渲染流程存在至少一个渲染失败的情况,则将客户端的显示界面切换回当前皮肤。
根据本公开实施例的第二方面,本申请还提出了混合型框架的换肤装置,所述换肤装置包括:
皮肤下载单元,用于周期性检测混合型框架客户端是否存在最新皮肤,如果存在,则下载最新皮肤对应的皮肤文件至本地存储器;
皮肤渲染单元,用于在接收到换肤请求时,根据客户端所使用的框架从已下载的皮肤文件中分别提取对应的皮肤元素进行皮肤渲染;
皮肤刷新单元,用于在进行皮肤渲染的过程中,对正在显示的界面内容进行锁定,当确定每种框架下均已完成皮肤渲染后,在解除锁定后进行皮肤刷新操作,最终在不同显示界面同步切换至最新皮肤。
可选的,所述皮肤下载单元,包括:
请求发送子单元,用于周期性生成针对最新皮肤是否存在的查新请求,将查新请求发送至服务器;
皮肤查新子单元,用于在服务器中对是否存有最新皮肤进行判断;
皮肤下载子单元,用于如果存在最新皮肤,则将与最新皮肤对应皮肤文件下载到本地存储器。
可选的,所述皮肤查新子单元,包括:
版本号查询子单元,用于获取服务器中存有的存档日期最新的皮肤对应的最新版本号;
版本号对比子单元,用于与查新请求中包含的当前使用皮肤的当前版本号进行对比;
版本号判断子单元,用于如果当前版本号等于最新版本号,则判断服务器中尚未存有最新皮肤;
版本号判断子单元,用于如果当前版本号低于最新版本号,则判断服务器中已经存有最新皮肤。
可选的,所述皮肤下载子单元,包括:
皮肤文件下载子单元,用于如果存在最新皮肤,则将最新皮肤包含的全部皮肤文件下载到本地存储器,或
将最新皮肤相对于当前使用皮肤的更新皮肤文件增量下载到本地存储器。
可选的,所述皮肤下载单元,包括:
混合型框架客户端所使用的框架包括于C/S框架和B/S框架;
链路下载子单元,用于针对C/S框架使用的皮肤文件下载方式为借助C/S 框架客户端更新时所使用的独立网路链路;
链路复用子单元,用于针对B/S框架使用的皮肤文件下载方式为复用C/S 框架客户端更新时所使用的独立网路链路。
可选的,所述皮肤渲染单元,包括:
界面锁定子单元,用于在接收到换肤请求后锁定客户端当前的显示界面;
皮肤元素渲染子单元,用于从本地存储器中调取已下载的皮肤文件,根据客户端所使用的框架不同,分别从皮肤文件中提取与框架对应的皮肤元素进行渲染。
可选的,所述皮肤元素渲染子单元,包括:
皮肤元素选取子单元,用于如果客户端使用C/S框架搭建,则从皮肤文件中选取针对C/S框架皮肤的皮肤元素;
第一元素渲染子单元,用于将提取到的皮肤元素按客户端界面中从上到下、从左到右的顺序依次对界面中的颜色、图片、背景内容进行渲染。
可选的,所述皮肤元素渲染子单元,包括:
第二元素渲染子单元,用于如果客户端使用B/S框架搭建,则从皮肤文件中选取CSS样式文件进行渲染,并对图片资源进行切换处理。
可选的,所述皮肤刷新单元,包括:
显示界面锁定单元,用于在进行皮肤渲染的过程中,对当前正在显示的界面内容进行锁定;
流程统计子单元,用于在锁定后对多个显示界面中每个框架下的皮肤渲染流程进行统计;
显示界面解锁子单元,用于如果统计结果表明全部显示界面中针对每个框架的皮肤渲染流程均成功完成,则对客户端中已锁定的显示界面进行解锁;
皮肤切换子单元,用于对解锁后的显示界面进行刷新操作,刷新完成后将显示界面中的显示内容在同一时刻切换至最新皮肤。
可选的,所述换肤装置还包括:
皮肤回退子单元,用于如果统计结果表明全部显示界面中针对每个框架的皮肤渲染流程存在至少一个渲染失败的情况,则将客户端的显示界面切换回当前皮肤。
根据本公开实施例的第三方面,本申请还提出了一种电子设备,包括:
处理器;以及
存储器,用于存储所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行所述混合型框架的换肤方法的步骤。
根据本公开实施例的第四方面,本申请还提出了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行所述混合型框架的换肤方法的步骤。
本发明提供的技术方案带来的有益效果是:
通过采用皮肤文件预先缓存的方法缩短现有技术中从服务器实时下载存在的延迟,避免皮肤更新失败。另外提出了对换肤界面进行锁定的机制,确保全部客户端都完成换肤后再统一刷新显示界面的同步换肤的机制,能够避免极少数情况下换肤失败导致客户端界面显示错乱、新旧杂糅的现象,保证了客户端中数据的可读性,避免因界面混乱导致的交易延迟,降低了资产损失。
附图说明
为了更清楚地说明本发明的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明提供的混合型框架的换肤方法的流程示意图;
图2是本发明提供的混合型框架的换肤方法的流程示意图;
图3是本发明提供的混合型框架的换肤方法的流程示意图。
具体实施方式
为使本发明的结构和优点更加清楚,下面将结合附图对本发明的结构作进一步地描述。
实施例一
为了便于理解,首先对本实施例中涉及到的若干名字进行解释:
C/S:client客户端server服务端,Client/Server或客户/服务器模式。服务器通常采用高性能的PC、工作站或小型机,并采用大型数据库系统,如 ORACLE、SYBASE、InfORMix或SQL Server。客户端需要安装专用的客户端软件。
B/S:(Browser/Server,浏览器/服务器模式),是WEB兴起后的一种网络结构模式,WEB浏览器是客户端最主要的应用软件。这种模式统一了客户端,将系统功能实现的核心部分集中到服务器上,简化了系统的开发、维护和使用。
基于上述两种框架,本发明提出了用于包含上述两种框架客户端的换肤方法,这里的客户端为广义所指,具体包括直接面向用户的计算机设备,以及位于机房或数据中心内进行数据运算的服务器设备。该方法解决背景技术中提出问题的主要思路为:
采用皮肤文件预先缓存的方法,定期查询服务器上是否已有新的皮肤文件,如果有则直接下载,这样在进行皮肤更新时就可以从本地快速读取皮肤文件,从而缩短现有技术中从服务器实时下载存在的延迟,避免皮肤更新失败。另外针对客户端中多界面因更新错误导致同时出现新旧两种皮肤的问题,本方法提出了借助对换肤进程进行统计从而保证同步换肤的机制。
基于上述技术构思,本发明提供了混合型框架的换肤方法,如图1所示,具体执行步骤为:
S11、周期性检测混合型框架客户端是否存在最新皮肤,如果存在,则下载最新皮肤对应的皮肤文件至本地存储器。
S12、在接收到换肤请求时,根据客户端所使用的框架从已下载的皮肤文件中分别提取对应的皮肤元素进行皮肤渲染。
S13、在进行皮肤渲染的过程中,对正在显示的界面内容进行锁定,当确定每种框架下均已完成皮肤渲染后,在解除锁定后进行皮肤刷新操作,最终在不同显示界面同步切换至最新皮肤。
为了尽可能在第一时间获取到最新皮肤的皮肤文件,这里在步骤S11中设置了皮肤定时检测机制。步骤S12、S13中涉及到针对不同框架所进行针对性的皮肤渲染操作流程,下文中会分别针对C/S、B/S两种框架进行说明。
步骤S11的详细内容包括:
S111、周期性生成针对最新皮肤是否存在的查新请求,将查新请求发送至服务器;
S112、在服务器中对是否存有最新皮肤进行判断;
S113、如果存在最新皮肤,则将与最新皮肤对应皮肤文件下载到本地存储器。
在实施中,S111中提出周期性向服务器发送针对最新皮肤是否存在的查新请求,以便服务器中存在皮肤更新的情况下尽快下载最新皮肤对应的皮肤文件。之所以这样做是为了缩短当用户提出皮肤更新需求后在前往服务器进行皮肤文件下载带来的延迟响应缺陷。
另外为了解决同样的问题,进一步在步骤S113中提出将最新皮肤对应的皮肤文件下载到本地存储器的步骤。由于本地存储器相对于服务器具有延迟端、可离线操作的特点,因此这里使用本地存储器读取的步骤代替从服务器获取的方式。
可选的,步骤S112提出的在服务器中进行最新皮肤的检测步骤的内容具体包括:
S1121、获取服务器中存有的存档日期最新的皮肤对应的最新版本号;
S1122、与查新请求中包含的当前使用皮肤的当前版本号进行对比;
S1123、如果当前版本号等于最新版本号,则判断服务器中尚未存有最新皮肤;
S1124、如果当前版本号低于最新版本号,则判断服务器中已经存有最新皮肤。
在实施中,本实施例提出的步骤S112对应的最新皮肤检测是通过皮肤版本号的对比来实现的。按照正常的开发进度,越新的文件会对应更新、数值更大的版本号,反之,相对较旧的文件则对应较老、数值稍小的版本号。根据这一原理,本实施例提出的步骤S1121-S1124是基于新文件对应数值更大的版本号这一原理进行是否有最新皮肤文件的判断。
除了基于版本号进行判定外,还可以基于文件的创建日期甚至文件名中是否能代表次序的关键字的方式来判断当前是否有最新皮肤的判定,此处不再赘述。
可选的,步骤S13对应最新皮肤下载的步骤,具体包括:
S131、如果存在最新皮肤,则将最新皮肤包含的全部皮肤文件下载到本地存储器,或
S132、将最新皮肤相对于当前使用皮肤的更新皮肤文件增量下载到本地存储器。
在实施中,针对皮肤文件的下载有两种实现方式,一种为基于S131所示的整体更新方式,另一种为基于步骤S132的增量更新方式。
前一种更新方式更为彻底,但需要更长的更新时间;后一种更新方式耗时较短,但容易出现更新不彻底的情况,两种更新方式需要择时选用。此处不再赘述。
可选的,针对不同的框架,步骤S13对应最新皮肤下载的步骤分别包括:
混合型框架客户端所使用的框架包括于C/S框架和B/S框架;
S133、针对C/S框架使用的皮肤文件下载方式为借助C/S框架客户端更新时所使用的独立网路链路;
S134、针对B/S框架使用的皮肤文件下载方式为复用C/S框架客户端更新时所使用的独立网路链路。
在实施中,在设计B/S页面的皮肤的时候,考虑到实际研发过程中存在混合型框架,因此将B/S换肤需要的资源、图片、CSS等文件,从C/S架构的客户端自动更新中附带发布,由于C/S架构中的自动更新是走独立的网路链路传输,避免了和交易链路数据传输带宽的抢占,所以能够快速的随时更新
在从服务端获取到皮肤的相关资源数据之后,每次启动客户端都是从本地的固定路径中加载这些皮肤相关的资源以及文件到内存中,随时供前端框架调用执行换肤,大大提升了加载性能,与传统的每次换肤都是从服务端拉取资源以及文件,该方案完全不需要和服务端交互并走网络传输并增加耗时风险,只是从内存中调用资源即可,性能大大提升,避免网络不稳定,超时等带来的延时问题。
在对皮肤渲染进行详细论述前,首先对本实施例针对的不同框架所使用的皮肤文件加载方式进行描述。
混合型框架换肤方法支持不同类型的技术架构换肤功能,比如c/s页面,b/s 页面,以及第三方子系统的换肤接口,来实现整个混合型框架的换肤。
在客户端启动后,负责皮肤文件下载以及皮肤文件加载的皮肤管理器对当前操作人员的身份权限(即能够使用的菜单类型)进行判断,同时加载与其身份权限对应的皮肤文件。
加载本地已有的存储C/S皮肤文件的皮肤库资源,根据操作人员的身份权限判断当前操作人员拥有的皮肤权限,将拥有操作权限的皮肤文件存储到内存中,以便后续渲染时读取。
加载本地已有的存储B/S皮肤文件的皮肤库资源,调用JS框架,复用C/S 客户端自动更新时的链路资源从服务器端获取当前操作人员具有操作权限的皮肤资源,将拥有操作权限的皮肤文件存储到内存中,以便后续渲染时读取。
针对客户端中存在的第三方子系统的换肤请求,实时调用其中的相关接口完成换肤操作。
本实施例前文中已经就如何对皮肤文件进行预存储进行了详细说明,下文则对如何对已存储的皮肤文件进行渲染进行说明。
可选的,S12对应的皮肤渲染步骤,具体包括:
S121、在接收到换肤请求后锁定客户端当前的显示界面;
S122、从本地存储器中调取已下载的皮肤文件,根据客户端所使用的框架不同,分别从皮肤文件中提取与框架对应的皮肤元素进行渲染。
在实施中,为了确保渲染过程不会影响客户端当前显示的画面,此处需要对客户端当前的显示界面进行锁定操作。具体的,针对C/S框架,这里的锁定操作为使用WindowsAPI锁定当前窗体的界面,而对应B/S框架,则是B.
获取当前菜单容器的句柄,根据句柄获取当前整个窗体的区域,自动截图并保存在临时目录,并将该图片设置到菜单容器表面形成遮罩效果。
对于S122所述的皮肤渲染步骤,具体为:
S1221、如果客户端使用C/S框架搭建,则从皮肤文件中选取针对C/S框架皮肤的皮肤元素;
S1222、将提取到的皮肤元素按客户端界面中从上到下、从左到右的顺序依次对界面中的颜色、图片、背景内容进行渲染。
S1223、如果客户端使用B/S框架搭建,则从皮肤文件中选取CSS样式文件进行渲染,并对图片资源进行切换处理。
在完成上述皮肤渲染后,还需要进行确保换肤同步的操作,以保证客户端显示界面中的整体换肤,具体为:
可选的,S13提出的操作步骤包括:
S131、在进行皮肤渲染的过程中,对当前正在显示的界面内容进行锁定;
S131、在锁定后对多个显示界面中每个框架下的皮肤渲染流程进行统计;
S131、如果统计结果表明全部显示界面中针对每个框架的皮肤渲染流程均成功完成,则对客户端中已锁定的显示界面进行解锁;
S131、对解锁后的显示界面进行刷新操作,刷新完成后将显示界面中的显示内容在同一时刻切换至最新皮肤。
在实施中,S131-S134中提出了对皮肤渲染流程进行统计的步骤,在实际操作中,这里的统计用list的方式实现。即确定当前需要进行换肤的全部项目,对每个项目中换肤所处的步骤进行统计。
在步骤S131-S134中通过在渲染过程中增加界面锁定—在全部渲染完成后解除锁定的步骤,实现了多个显示界面中皮肤同步切换的目的,能够有效防止某个显示界面可能由于渲染内容较少导致渲染时间短从而早于其他显示界面进行刷新的缺陷,实现在多个显示界面下,操作人员是看到一瞬间完成皮肤切换的,不存在现有技术中出现的换肤延迟,残影,卡顿,换肤失败等现象。
需要注意的是,这里的list<界面对象>的数据结构是位于内存中的数组,用于存储需要换肤的界面同时标识每个界面的状态。其中的界面对象包括界面序号、界面状态,而界面状态则具体包括正常、渲染中、渲染失败等。这样根据 list<界面对象>的具体内容能够在判断是否都换肤成功。
当一个项目中的换肤流程处于皮肤渲染时,在list中对该项目的状态标记为渲染中,当一个项目的换肤流程全部完成即换肤成功后,在list中对该项目的状态标记为已成功完成换肤,以此类推,只有当该list中全部项目的状态均为已成功完成换肤后,才允许执行步骤S13,即刷新界面切换至最新皮肤的操作。
还存在相反的情况,即
S134、如果统计结果表明全部显示界面中针对每个框架的皮肤渲染流程存在至少一个渲染失败的情况,则将客户端的显示界面切换回当前皮肤。
一般回退主题换肤是由于新的皮肤文件存在缺失,被误删,图片格式损坏,等问题导致,所以在出现换肤异常时,回退到原来的皮肤只需要切换回旧组皮肤对应的相关资源并执行换肤逻辑即可,换肤完成则退出换肤逻辑。
通过对换肤流程进行统计以及增设回退至原来皮肤的操作,能够避免极少数情况下换肤失败导致客户端界面显示错乱、新旧杂糅的现象,保证了客户端的正常使用。
本发明提供了混合型框架的换肤方法,包括周期性检测混合型框架客户端是否存在最新皮肤,如果存在,则下载最新皮肤对应的皮肤文件至本地存储器。在接收到换肤请求时,根据客户端所使用的框架从已下载的皮肤文件中分别提取对应的皮肤元素进行皮肤渲染。在确定每种框架下均已完成皮肤渲染后,进行皮肤刷新操作,切换至最新皮肤。通过采用皮肤文件预先缓存的方法缩短现有技术中从服务器实时下载存在的延迟,避免皮肤更新失败。另外提出了对换肤界面进行锁定的机制,确保全部客户端都完成换肤后再统一刷新显示界面的同步换肤的机制,能够避免极少数情况下换肤失败导致客户端界面显示错乱、新旧杂糅的现象,保证了客户端中数据的可读性,避免因界面混乱导致的交易延迟,降低了资产损失。
实施例二
本申请还提出了混合型框架的换肤装置2,如图2所示,所述换肤装置2包括:
皮肤下载单元21,用于周期性检测混合型框架客户端是否存在最新皮肤,如果存在,则下载最新皮肤对应的皮肤文件至本地存储器;
皮肤渲染单元22,用于在接收到换肤请求时,根据客户端所使用的框架从已下载的皮肤文件中分别提取对应的皮肤元素进行皮肤渲染;
皮肤刷新单元23,用于在进行皮肤渲染的过程中,对正在显示的界面内容进行锁定,当确定每种框架下均已完成皮肤渲染后,在解除锁定后进行皮肤刷新操作,最终在不同显示界面同步切换至最新皮肤。
具体的,换肤装置2包括有皮肤下载单元21、皮肤渲染单元22以及皮肤刷新单元23。
皮肤下载单元21用于执行实施例一中步骤S11的相关操作,
皮肤渲染单元22用于执行实施例一中步骤S12的相关操作,
皮肤刷新单元23用于执行实施例一中步骤S13的相关操作,
在该换肤装置2中采用皮肤文件预先缓存的方法,定期查询服务器上是否已有新的皮肤文件,如果有则直接下载,这样在进行皮肤更新时就可以从本地快速读取皮肤文件,从而缩短现有技术中从服务器实时下载存在的延迟,避免皮肤更新失败。另外针对客户端中多界面因更新错误导致同时出现新旧两种皮肤的问题,本方法提出了借助对换肤进程进行统计从而保证同步换肤的机制。
可选的,所述皮肤下载单元21,包括:
请求发送子单元211,用于周期性生成针对最新皮肤是否存在的查新请求,将查新请求发送至服务器;
皮肤查新子单元212,用于在服务器中对是否存有最新皮肤进行判断;
皮肤下载子单元213,用于如果存在最新皮肤,则将与最新皮肤对应皮肤文件下载到本地存储器。
在实施中,请求发送子单元211中提出周期性向服务器发送针对最新皮肤是否存在的查新请求,以便服务器中存在皮肤更新的情况下尽快下载最新皮肤对应的皮肤文件。之所以这样做是为了缩短当用户提出皮肤更新需求后在前往服务器进行皮肤文件下载带来的延迟响应缺陷。
另外为了解决同样的问题,进一步在皮肤下载子单元213中提出将最新皮肤对应的皮肤文件下载到本地存储器的步骤。由于本地存储器相对于服务器具有延迟端、可离线操作的特点,因此这里使用本地存储器读取的步骤代替从服务器获取的方式。
可选的,所述皮肤查新子单元212,包括:
版本号查询子单元2121,用于获取服务器中存有的存档日期最新的皮肤对应的最新版本号;
版本号对比子单元2122,用于与查新请求中包含的当前使用皮肤的当前版本号进行对比;
版本号判断子单元2123,用于如果当前版本号等于最新版本号,则判断服务器中尚未存有最新皮肤;
版本号判断子单元2124,用于如果当前版本号低于最新版本号,则判断服务器中已经存有最新皮肤。
在实施中,本实施例提出的皮肤查新子单元212涉及到的最新皮肤检测是通过皮肤版本号的对比来实现的。按照正常的开发进度,越新的文件会对应更新、数值更大的版本号,反之,相对较旧的文件则对应较老、数值稍小的版本号。根据这一原理,本实施例提出的步骤版本号查询子单元2121、版本号对比子单元2122、版本号判断子单元2123、以及版本号判断子单元2124协同完成的操作是基于新文件对应数值更大的版本号这一原理进行是否有最新皮肤文件的判断。
除了基于版本号进行判定外,还可以基于文件的创建日期甚至文件名中是否能代表次序的关键字的方式来判断当前是否有最新皮肤的判定,此处不再赘述。
可选的,所述皮肤下载子单元213,包括:
皮肤文件下载子单元2131,用于如果存在最新皮肤,则将最新皮肤包含的全部皮肤文件下载到本地存储器,或
将最新皮肤相对于当前使用皮肤的更新皮肤文件增量下载到本地存储器。
在实施中,针对皮肤文件的下载有两种实现方式,一种为基于S131所示的整体更新方式,另一种为基于步骤S132的增量更新方式。
前一种更新方式更为彻底,但需要更长的更新时间;后一种更新方式耗时较短,但容易出现更新不彻底的情况,两种更新方式需要择时选用。此处不再赘述。
可选的,针对不同的框架,所述皮肤下载单元213,包括:
混合型框架客户端所使用的框架包括于C/S框架和B/S框架;
链路下载子单元2131,用于针对C/S框架使用的皮肤文件下载方式为借助 C/S框架客户端更新时所使用的独立网路链路;
链路复用子单元2132,用于针对B/S框架使用的皮肤文件下载方式为复用 C/S框架客户端更新时所使用的独立网路链路。
在实施中,在设计B/S页面的皮肤的时候,考虑到实际研发过程中存在混合型框架,因此将B/S换肤需要的资源、图片、CSS等文件,从C/S架构的客户端自动更新中附带发布,由于C/S架构中的自动更新是走独立的网路链路传输,避免了和交易链路数据传输带宽的抢占,所以能够快速的随时更新
在从服务端获取到皮肤的相关资源数据之后,每次启动客户端都是从本地的固定路径中加载这些皮肤相关的资源以及文件到内存中,随时供前端框架调用执行换肤,大大提升了加载性能,与传统的每次换肤都是从服务端拉取资源以及文件,该方案完全不需要和服务端交互并走网络传输并增加耗时风险,只是从内存中调用资源即可,性能大大提升,避免网络不稳定,超时等带来的延时问题。
在对皮肤渲染进行详细论述前,首先对本实施例针对的不同框架所使用的皮肤文件加载方式进行描述。
混合型框架换肤方法支持不同类型的技术架构换肤功能,比如c/s页面,b/s 页面,以及第三方子系统的换肤接口,来实现整个混合型框架的换肤。
在客户端启动后,负责皮肤文件下载以及皮肤文件加载的皮肤管理器对当前操作人员的身份权限(即能够使用的菜单类型)进行判断,同时加载与其身份权限对应的皮肤文件。
加载本地已有的存储C/S皮肤文件的皮肤库资源,根据操作人员的身份权限判断当前操作人员拥有的皮肤权限,将拥有操作权限的皮肤文件存储到内存中,以便后续渲染时读取。
加载本地已有的存储B/S皮肤文件的皮肤库资源,调用JS框架,复用C/S 客户端自动更新时的链路资源从服务器端获取当前操作人员具有操作权限的皮肤资源,将拥有操作权限的皮肤文件存储到内存中,以便后续渲染时读取。
针对客户端中存在的第三方子系统的换肤请求,实时调用其中的相关接口完成换肤操作。
本实施例前文中已经就如何对皮肤文件进行预存储进行了详细说明,下文则对如何对已存储的皮肤文件进行渲染进行说明。
可选的,所述皮肤渲染单元22,包括:
界面锁定子单元221,用于在接收到换肤请求后锁定客户端当前的显示界面;
皮肤元素渲染子单元222,用于从本地存储器中调取已下载的皮肤文件,根据客户端所使用的框架不同,分别从皮肤文件中提取与框架对应的皮肤元素进行渲染。
在实施中,为了确保渲染过程不会影响客户端当前显示的画面,此处需要对客户端当前的显示界面进行锁定操作。具体的,针对C/S框架,这里的锁定操作为使用WindowsAPI锁定当前窗体的界面,而对应B/S框架,则是B.
获取当前菜单容器的句柄,根据句柄获取当前整个窗体的区域,自动截图并保存在临时目录,并将该图片设置到菜单容器表面形成遮罩效果。
可选的,所述皮肤元素渲染子单元222,包括:
皮肤元素选取子单元2221,用于如果客户端使用C/S框架搭建,则从皮肤文件中选取针对C/S框架皮肤的皮肤元素;
第一元素渲染子单元2222,用于将提取到的皮肤元素按客户端界面中从上到下、从左到右的顺序依次对界面中的颜色、图片、背景内容进行渲染。
第二元素渲染子单元2223,用于如果客户端使用B/S框架搭建,则从皮肤文件中选取CSS样式文件进行渲染,并对图片资源进行切换处理。
在完成上述皮肤渲染后,还需要进行确保换肤同步的操作,以保证客户端显示界面中的整体换肤,具体的皮肤刷新单元23,包括:
显示界面锁定单元231,用于在进行皮肤渲染的过程中,对当前正在显示的界面内容进行锁定;
流程统计子单元232,用于在锁定后对多个显示界面中每个框架下的皮肤渲染流程进行统计;
显示界面解锁子单元233,用于如果统计结果表明全部显示界面中针对每个框架的皮肤渲染流程均成功完成,则对客户端中已锁定的显示界面进行解锁;
皮肤切换子单元234,用于对解锁后的显示界面进行刷新操作,刷新完成后将显示界面中的显示内容在同一时刻切换至最新皮肤。
在实施中,显示界面锁定单元231、流程统计子单元232、显示界面解锁子单元233及皮肤切换子单元234协同执行的方案中提出了对皮肤渲染流程进行统计的步骤,在实际操作中,这里的统计用list的方式实现。即确定当前需要进行换肤的全部项目,对每个项目中换肤所处的步骤进行统计。
在上述四个单元的协作过程中通过在渲染过程中增加界面锁定—在全部渲染完成后解除锁定的步骤,实现了多个显示界面中皮肤同步切换的目的,能够有效防止某个显示界面可能由于渲染内容较少导致渲染时间短从而早于其他显示界面进行刷新的缺陷,实现在多个显示界面下,操作人员是看到一瞬间完成皮肤切换的,不存在现有技术中出现的换肤延迟,残影,卡顿,换肤失败等现象。
当一个项目中的换肤流程处于皮肤渲染时,在list中对该项目的状态标记为渲染中,当一个项目的换肤流程全部完成即换肤成功后,在list中对该项目的状态标记为已成功完成换肤,以此类推,只有当该list中全部项目的状态均为已成功完成换肤后,才允许触发皮肤切换子单元233,即刷新界面切换至最新皮肤的操作。
考虑到还存在相反的情况,皮肤刷新单元23还包括:
皮肤回退子单元235,用于如果统计结果表明全部显示界面中针对每个框架的皮肤渲染流程存在至少一个渲染失败的情况,则将客户端的显示界面切换回当前皮肤。
一般回退主题换肤是由于新的皮肤文件存在缺失,被误删,图片格式损坏,等问题导致,所以在出现换肤异常时,回退到原来的皮肤只需要切换回旧组皮肤对应的相关资源并执行换肤逻辑即可,换肤完成则退出换肤逻辑。
通过对换肤流程进行统计以及增设回退至原来皮肤的操作,能够避免极少数情况下换肤失败导致客户端界面显示错乱、新旧杂糅的现象,保证了客户端的正常使用。
本发明提供了用于混合型框架客户端的换肤装置,包括周期性检测混合型框架客户端是否存在最新皮肤,如果存在,则下载最新皮肤对应的皮肤文件至本地存储器。在接收到换肤请求时,根据客户端所使用的框架从已下载的皮肤文件中分别提取对应的皮肤元素进行皮肤渲染。在确定每种框架下均已完成皮肤渲染后,进行皮肤刷新操作,切换至最新皮肤。通过采用皮肤文件预先缓存的方法缩短现有技术中从服务器实时下载存在的延迟,避免皮肤更新失败。另外提出了对换肤界面进行锁定的机制,确保全部客户端都完成换肤后再统一刷新显示界面的同步换肤的机制,能够避免极少数情况下换肤失败导致客户端界面显示错乱、新旧杂糅的现象,保证了客户端中数据的可读性,避免因界面混乱导致的交易延迟,降低了资产损失。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。作为模块或单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现木公开方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
本示例实施方式中,还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述任一实施例中所述混合型框架的换肤方法的步骤。混合型框架的换肤方法的具体步骤可参考前述实施例中关于上述皮肤处理各步骤的详细描述,此处不再赘述。所述计算机可读存储介质可以是 ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
本示例实施方式中,还提供一种电子设备,该电子设备可以包括处理器以及用于存储所述处理器的可执行指令的存储器。其中,所述处理器配置为经由执行所述可执行指令来执行上述任一实施例中混合型框架的换肤方法的步骤。该混合型框架的换肤方法的步骤可参考前述方法实施例中的详细描述,此处不再赘述。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等) 中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、触控终端、或者网络设备等)执行根据本公开实施方式的方法。
图3示出根据本公开示例实施方式中一种电子设备的示意图。例如,电子设备可以被提供为一服务器或客户端。参照图3,电子设备包括处理组件422,其进一步包括一个或多个处理器,以及由存储器432所代表的存储器资源,用于存储可由处理组件422执行的指令,例如应用程序。存储器432中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件422被配置为执行指令,以执行上述方法。
电子设备还可以包括一个电源组件426被配置为执行电子设备的电源管理,一个有线或无线网络接口450被配置为将电子设备连接到网络,和一个输入输出(I/O)接口458。电子设备可以操作基于存储在存储器432的操作系统,例如 Windows Server TM,Mac OSXTM,Unix TM、Linux TM,FreeBSDTM或类似。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由所附的权利要求指出。
Claims (20)
1.混合型框架的换肤方法,其特征在于,所述换肤方法包括:
周期性检测混合型框架客户端是否存在最新皮肤,如果存在,则下载最新皮肤对应的皮肤文件至本地存储器;
在接收到换肤请求时,根据客户端所使用的框架从已下载的皮肤文件中分别提取对应的皮肤元素进行皮肤渲染;
在进行皮肤渲染的过程中,对正在显示的界面内容进行锁定,当确定多个界面中每种框架下均已完成皮肤渲染后,在解除锁定后进行皮肤刷新操作,最终在不同显示界面同步切换至最新皮肤。
2.根据权利要求1所述的混合型框架的换肤方法,其特征在于,所述周期性检测混合型框架客户端是否存在最新皮肤,如果存在,则下载最新皮肤对应的皮肤文件至本地存储器,包括:
周期性生成针对最新皮肤是否存在的查新请求,将查新请求发送至服务器;
在服务器中对是否存有最新皮肤进行判断;
如果存在最新皮肤,则将与最新皮肤对应皮肤文件下载到本地存储器。
3.根据权利要求2所述的混合型框架的换肤方法,其特征在于,所述在服务器中对是否存有最新皮肤进行判断,包括:
获取服务器中存有的存档日期最新的皮肤对应的最新版本号;
与查新请求中包含的当前使用皮肤的当前版本号进行对比;
如果当前版本号等于最新版本号,则判断服务器中尚未存有最新皮肤;
如果当前版本号低于最新版本号,则判断服务器中已经存有最新皮肤。
4.根据权利要求3所述的混合型框架的换肤方法,其特征在于,所述如果存在最新皮肤,则将与最新皮肤对应皮肤文件下载到本地存储器,包括:
如果存在最新皮肤,则将最新皮肤包含的全部皮肤文件下载到本地存储器,或
将最新皮肤相对于当前使用皮肤的更新皮肤文件增量下载到本地存储器。
5.根据权利要求1至4任一项所述的混合型框架的换肤方法,其特征在于,所述则下载最新皮肤对应的皮肤文件至本地存储器,包括:
混合型框架客户端所使用的框架包括C/S框架和B/S框架;
针对C/S框架使用的皮肤文件下载方式为借助C/S框架客户端更新时所使用的独立网路链路;
针对B/S框架使用的皮肤文件下载方式为复用C/S框架客户端更新时所使用的独立网路链路。
6.根据权利要求1所述的混合型框架的换肤方法,其特征在于,所述在接收到换肤请求时,根据客户端所使用的框架从已下载的皮肤文件中分别提取对应的皮肤元素进行皮肤渲染,包括:
在接收到换肤请求后锁定客户端当前的显示界面;
从本地存储器中调取已下载的皮肤文件,根据客户端所使用的框架不同,分别从皮肤文件中提取与框架对应的皮肤元素进行渲染。
7.根据权利要求6所述的混合型框架的换肤方法,其特征在于,所述根据客户端所使用的框架不同,分别从皮肤文件中提取与框架对应的皮肤元素进行渲染,包括:
如果客户端使用C/S框架搭建,则从皮肤文件中选取针对C/S框架皮肤的皮肤元素;
将提取到的皮肤元素按客户端界面中从上到下、从左到右的顺序依次对界面中的颜色、图片、背景内容进行渲染;或
如果客户端使用B/S框架搭建,则从皮肤文件中选取CSS样式文件进行渲染,并对图片资源进行切换处理。
8.根据权利要求1所述的混合型框架的换肤方法,其特征在于,所述在进行皮肤渲染的过程中,对正在显示的界面内容进行锁定,当确定多个界面中每种框架下均已完成皮肤渲染后,在解除锁定后进行皮肤刷新操作,最终在不同显示界面同步切换至最新皮肤,包括:
在进行皮肤渲染的过程中,对当前正在显示的界面内容进行锁定;
在锁定后对多个显示界面中每个框架下的皮肤渲染流程进行统计;
如果统计结果表明全部显示界面中针对每个框架的皮肤渲染流程均成功完成,则对客户端中已锁定的显示界面进行解锁;
对解锁后的显示界面进行刷新操作,刷新完成后将显示界面中的显示内容在同一时刻切换至最新皮肤。
9.根据权利要求8所述的混合型框架的换肤方法,其特征在于,所述换肤方法还包括:
如果统计结果表明全部显示界面中针对每个框架的皮肤渲染流程存在至少一个渲染失败的情况,则将客户端的显示界面切换回当前皮肤。
10.混合型框架的换肤装置,其特征在于,所述换肤装置包括:
皮肤下载单元,用于周期性检测混合型框架客户端是否存在最新皮肤,如果存在,则下载最新皮肤对应的皮肤文件至本地存储器;
皮肤渲染单元,用于在接收到换肤请求时,根据客户端所使用的框架从已下载的皮肤文件中分别提取对应的皮肤元素进行皮肤渲染;
皮肤刷新单元,用于在进行皮肤渲染的过程中,对正在显示的界面内容进行锁定,当确定多个界面中每种框架下均已完成皮肤渲染后,在解除锁定后进行皮肤刷新操作,最终在不同显示界面同步切换至最新皮肤。
11.根据权利要求10所述的混合型框架的换肤装置,其特征在于,所述皮肤下载单元,包括:
请求发送子单元,用于周期性生成针对最新皮肤是否存在的查新请求,将查新请求发送至服务器;
皮肤查新子单元,用于在服务器中对是否存有最新皮肤进行判断;
皮肤下载子单元,用于如果存在最新皮肤,则将与最新皮肤对应皮肤文件下载到本地存储器。
12.根据权利要求11所述的混合型框架的换肤装置,其特征在于,所述皮肤查新子单元,包括:
版本号查询子单元,用于获取服务器中存有的存档日期最新的皮肤对应的最新版本号;
版本号对比子单元,用于与查新请求中包含的当前使用皮肤的当前版本号进行对比;
版本号判断子单元,用于如果当前版本号等于最新版本号,则判断服务器中尚未存有最新皮肤;
版本号判断子单元,用于如果当前版本号低于最新版本号,则判断服务器中已经存有最新皮肤。
13.根据权利要求12所述的混合型框架的换肤装置,其特征在于,所述皮肤下载子单元,包括:
皮肤文件下载子单元,用于如果存在最新皮肤,则将最新皮肤包含的全部皮肤文件下载到本地存储器,或
将最新皮肤相对于当前使用皮肤的更新皮肤文件增量下载到本地存储器。
14.根据权利要求10至13任一项所述的混合型框架的换肤装置,其特征在于,所述皮肤下载单元,包括:
混合型框架客户端所使用的框架包括C/S框架和B/S框架;
链路下载子单元,用于针对C/S框架使用的皮肤文件下载方式为借助C/S框架客户端更新时所使用的独立网路链路;
链路复用子单元,用于针对B/S框架使用的皮肤文件下载方式为复用C/S框架客户端更新时所使用的独立网路链路。
15.根据权利要求10所述的混合型框架的换肤装置,其特征在于,所述皮肤渲染单元,包括:
界面锁定子单元,用于在接收到换肤请求后锁定客户端当前的显示界面;
皮肤元素渲染子单元,用于从本地存储器中调取已下载的皮肤文件,根据客户端所使用的框架不同,分别从皮肤文件中提取与框架对应的皮肤元素进行渲染。
16.根据权利要求15所述的混合型框架的换肤装置,其特征在于,所述皮肤元素渲染子单元,包括:
皮肤元素选取子单元,用于如果客户端使用C/S框架搭建,则从皮肤文件中选取针对C/S框架皮肤的皮肤元素;
第一元素渲染子单元,用于将提取到的皮肤元素按客户端界面中从上到下、从左到右的顺序依次对界面中的颜色、图片、背景内容进行渲染;
第二元素渲染子单元,用于如果客户端使用B/S框架搭建,则从皮肤文件中选取CSS样式文件进行渲染,并对图片资源进行切换处理。
17.根据权利要求10所述的混合型框架的换肤装置,其特征在于,所述皮肤刷新单元,包括:
显示界面锁定单元,用于在进行皮肤渲染的过程中,对当前正在显示的界面内容进行锁定;
流程统计子单元,用于在锁定后对多个显示界面中每个框架下的皮肤渲染流程进行统计;
显示界面解锁子单元,用于如果统计结果表明全部显示界面中针对每个框架的皮肤渲染流程均成功完成,则对客户端中已锁定的显示界面进行解锁;
皮肤切换子单元,用于对解锁后的显示界面进行刷新操作,刷新完成后将显示界面中的显示内容在同一时刻切换至最新皮肤。
18.根据权利要求17所述的混合型框架的换肤装置,其特征在于,所述换肤装置还包括:
皮肤回退子单元,用于如果统计结果表明全部显示界面中针对每个框架的皮肤渲染流程存在至少一个渲染失败的情况,则将客户端的显示界面切换回当前皮肤。
19.一种电子设备,其特征在于,包括:
处理器;以及
存储器,用于存储所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行权利要求1至10任一项所述混合型框架的换肤方法的步骤。
20.一种计算机可读存储介质,其特征在于,其上存储有计算机程序,所述计算机程序被处理器执行根据权利要求1至9任一项所述混合型框架的换肤方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811495046.XA CN109725964B (zh) | 2018-12-07 | 2018-12-07 | 混合型框架的换肤方法、装置、电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811495046.XA CN109725964B (zh) | 2018-12-07 | 2018-12-07 | 混合型框架的换肤方法、装置、电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109725964A CN109725964A (zh) | 2019-05-07 |
CN109725964B true CN109725964B (zh) | 2021-11-26 |
Family
ID=66294824
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811495046.XA Active CN109725964B (zh) | 2018-12-07 | 2018-12-07 | 混合型框架的换肤方法、装置、电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109725964B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110727492A (zh) * | 2019-09-29 | 2020-01-24 | 北京金山云网络技术有限公司 | 客户端换肤方法、装置、电子设备及计算机可读存储介质 |
CN111752454A (zh) * | 2020-06-23 | 2020-10-09 | 厦门美柚股份有限公司 | 应用程序界面的皮肤控制方法、装置、终端及介质 |
CN113485733A (zh) * | 2021-07-20 | 2021-10-08 | 宜宾中星技术智能系统有限公司 | 基于混合架构的界面皮肤更新系统及更新方法 |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070271497A1 (en) * | 2001-01-31 | 2007-11-22 | Microsoft Corporation | Methods and Systems for Creating and Using Skins |
CN102129368A (zh) * | 2010-01-20 | 2011-07-20 | 腾讯科技(深圳)有限公司 | 界面皮肤更换系统及方法 |
CN102279745A (zh) * | 2011-08-25 | 2011-12-14 | 深圳市五巨科技有限公司 | 一种移动终端浏览器外观设置的方法及系统 |
CN104050002A (zh) * | 2014-06-24 | 2014-09-17 | 广州金山网络科技有限公司 | 一种应用软件界面换肤方法及装置 |
US20170010794A1 (en) * | 2015-07-08 | 2017-01-12 | Samsung Electronics Co., Ltd. | Electronic device, and method for changing icon in the electronic device |
CN107092507A (zh) * | 2017-04-18 | 2017-08-25 | 杭州云永网络科技有限公司 | 应用程序的换肤方法、装置及系统 |
CN107608674A (zh) * | 2017-09-22 | 2018-01-19 | 深圳市创维软件有限公司 | 一种应用换肤方法、装置、计算机及存储介质 |
CN107729103A (zh) * | 2017-09-29 | 2018-02-23 | 努比亚技术有限公司 | 一种主题切换方法、移动终端以及计算机存储介质 |
CN108509236A (zh) * | 2017-02-24 | 2018-09-07 | 北京旷视科技有限公司 | 主题更换方法及装置、人脸识别系统主题更换方法及装置 |
CN108572855A (zh) * | 2017-03-08 | 2018-09-25 | 上海传英信息技术有限公司 | 一种移动终端桌面主题系统及切换方法 |
CN108628518A (zh) * | 2017-07-26 | 2018-10-09 | 北京视联动力国际信息技术有限公司 | 一种应用程序界面皮肤更换方法及装置 |
CN108804188A (zh) * | 2018-05-30 | 2018-11-13 | 珠海市君天电子科技有限公司 | 界面换肤方法及装置 |
-
2018
- 2018-12-07 CN CN201811495046.XA patent/CN109725964B/zh active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070271497A1 (en) * | 2001-01-31 | 2007-11-22 | Microsoft Corporation | Methods and Systems for Creating and Using Skins |
CN102129368A (zh) * | 2010-01-20 | 2011-07-20 | 腾讯科技(深圳)有限公司 | 界面皮肤更换系统及方法 |
CN102279745A (zh) * | 2011-08-25 | 2011-12-14 | 深圳市五巨科技有限公司 | 一种移动终端浏览器外观设置的方法及系统 |
CN104050002A (zh) * | 2014-06-24 | 2014-09-17 | 广州金山网络科技有限公司 | 一种应用软件界面换肤方法及装置 |
US20170010794A1 (en) * | 2015-07-08 | 2017-01-12 | Samsung Electronics Co., Ltd. | Electronic device, and method for changing icon in the electronic device |
CN108509236A (zh) * | 2017-02-24 | 2018-09-07 | 北京旷视科技有限公司 | 主题更换方法及装置、人脸识别系统主题更换方法及装置 |
CN108572855A (zh) * | 2017-03-08 | 2018-09-25 | 上海传英信息技术有限公司 | 一种移动终端桌面主题系统及切换方法 |
CN107092507A (zh) * | 2017-04-18 | 2017-08-25 | 杭州云永网络科技有限公司 | 应用程序的换肤方法、装置及系统 |
CN108628518A (zh) * | 2017-07-26 | 2018-10-09 | 北京视联动力国际信息技术有限公司 | 一种应用程序界面皮肤更换方法及装置 |
CN107608674A (zh) * | 2017-09-22 | 2018-01-19 | 深圳市创维软件有限公司 | 一种应用换肤方法、装置、计算机及存储介质 |
CN107729103A (zh) * | 2017-09-29 | 2018-02-23 | 努比亚技术有限公司 | 一种主题切换方法、移动终端以及计算机存储介质 |
CN108804188A (zh) * | 2018-05-30 | 2018-11-13 | 珠海市君天电子科技有限公司 | 界面换肤方法及装置 |
Non-Patent Citations (1)
Title |
---|
"一种基于AJAX技术的B_S与C_S混合构架模式";李先军 等;《计算机应用》;20090401;第29卷(第4期);第1135-1138页 * |
Also Published As
Publication number | Publication date |
---|---|
CN109725964A (zh) | 2019-05-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11914486B2 (en) | Cloning and recovery of data volumes | |
CN109725964B (zh) | 混合型框架的换肤方法、装置、电子设备 | |
US9177035B2 (en) | Replicating data to a database | |
US9646042B2 (en) | Data consistency and rollback for cloud analytics | |
US20130151494A1 (en) | Consistent Database Recovery Across Constituent Segments | |
US20090259993A1 (en) | Sandbox Support for Metadata in Running Applications | |
US20230106118A1 (en) | Distributed processing of transactions in a network using timestamps | |
CN109634970B (zh) | 表数据同步方法、设备、存储介质及装置 | |
US9395979B1 (en) | Pre-emptive development conflict resolution | |
US11392360B2 (en) | Systems and methods for redeploying source code builds | |
US11176004B2 (en) | Test continuous log replay | |
US10528592B2 (en) | Database scaling for multi-tenant applications | |
CN112434043A (zh) | 一种数据同步方法、装置、电子设备及介质 | |
CN114153822A (zh) | 一种数据迁移方法、装置、电子设备及存储介质 | |
US10515089B2 (en) | Pseudo-synchronous processing by an analytic query and build cluster | |
CN114168287A (zh) | 任务调度方法及装置、可读存储介质及电子设备 | |
US20220229821A1 (en) | Data restoration using dynamic data structure altering | |
CN111858637A (zh) | 一种数据处理方法及装置 | |
US20230195582A1 (en) | Rolling back a database transaction | |
CN115113989A (zh) | 事务执行方法、装置、计算设备及存储介质 | |
CN108733704B (zh) | 多数据库数据处理方法、装置及存储介质和电子设备 | |
KR101437687B1 (ko) | 금융단말 및 그 업무파일 동기화 방법, 그리고 그를 이용한금융시스템 | |
CN113434509B (zh) | 一种增量索引的更新方法、装置、存储介质及电子设备 | |
US20230418672A1 (en) | Replacing stale clusters in a cluster pool | |
US20230185792A1 (en) | Verification of database system using deterministic read workloads |
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 | ||
CB03 | Change of inventor or designer information |
Inventor after: Liu Wei Inventor after: Peng Zhigang Inventor after: Wang Hongnan Inventor before: Liu Wei Inventor before: Peng Zhigang |
|
CB03 | Change of inventor or designer information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |