一种显示方法、电子设备及存储介质与流程

文档序号:30137297发布日期:2022-05-21 02:07阅读:82来源:国知局
一种显示方法、电子设备及存储介质与流程

1.本技术涉及终端技术领域,尤其涉及一种显示方法、电子设备及存储介质。


背景技术:

2.目前,电子设备的显示屏大多采用低温多晶氧化物(low temperature polycrystalline oxide,ltpo)显示屏,ltpo显示屏指的是在有机发光二极管(organic light-emitting diode,oled)显示屏的基材中多加了一层氧化物,降低了激发像素点所需要的能耗,从而能够降低电子设备显示时的功耗。
3.其中,ltpo显示屏能够支持多种屏幕刷新率,例如从144赫兹(hz)到1hz。具有ltpo显示屏的电子设备在运行不同应用时会采用不同的屏幕刷新率。例如,当电子设备运行视频类应用时,电子设备的屏幕刷新率为60hz;而当电子设备显示桌面时,电子设备的屏幕刷新率为120hz。这样一来,当电子设备启动不同应用时,会涉及到屏幕刷新率的切换。如电子设备在桌面上启动视频类应用时,电子设备的屏幕刷新率会从120hz切换至60hz。但是,在电子设备切换屏幕刷新率时,会出现卡顿的现象。


技术实现要素:

4.本技术实施例提供一种显示方法、电子设备及存储介质,能够解决电子设备切换屏幕刷新率时,出现卡顿的问题。
5.为达到上述目的,本技术的实施例采用如下技术方案:
6.第一方面,提供了一种显示方法,该方法应用于电子设备,电子设备支持第一刷新率和第二刷新率,该方法包括:电子设备在显示屏上以第一刷新率显示第一界面;电子设备接收用户的第一操作;电子设备响应于第一操作,开始播放动效;电子设备检测到动效播放结束,切换为在显示屏上以第二刷新率显示第二界面;其中,动效用于指示电子设备由第一界面切换至第二界面的过程中显示的画面。
7.基于第一方面,电子设备在显示屏上以第一刷新率显示第一界面;当电子设备接收到用户的第一操作,并响应于第一操作,电子设备开始播放动效;当电子设备检测到动效播放结束时,电子设备切换为在显示屏上以第二刷新率显示第二界面;由于动效用于执行电子设备由第一界面切换至第二界面的过程中显示的图像,因此当电子设备检测到动效播放结束时,电子设备才将第一刷新率切换为第二刷新率,并显示第二界面,从而避免了动效播放过程中切换刷新率造成的卡顿问题。
8.在第一方面的一种可能的设计方式中,动效包括连续的n帧画面,其中,n大于等于1;电子设备开始播放动效,包括:电子设备根据动效属性开始播放动效;动效属性包括动效内容、动效尺寸、动效时长或者动效起始位置和动效结束位置中的至少一种;动效起始位置用于指示n帧画面中的第一帧画面在显示屏上的位置,动效结束位置用于指示n帧画面中的最后一帧画面在显示屏上的位置。
9.在该设计方式中,电子设备根据动效属性开始播放动效;由于动效属性包括动效
内容、动效尺寸、动效时长或者动效起始位置和动效结束位置中的至少一种;动效起始位置用于指示n帧画面中的第一帧画面在显示屏上的位置,动效结束位置用于指示n帧画面中的最后一帧画面在显示屏上的位置,因此能够提高电子设备播放动效的效果
10.在第一方面的一种可能的设计方式中,动效包括连续的n帧画面,其中,n大于等于1;电子设备检测到动效播放结束,包括:当电子设备播放第m帧画面时,若第m帧画面在显示屏上的位置与目标位置之间的距离小于预设值,则电子设备检测到动效播放结束;1≤m≤n;其中,目标位置用于指示n帧画面中的最后一帧画面在显示屏上的位置。
11.在该设计方式中,当电子设备播放第m帧画面时,若第m帧画面在显示屏上的位置与目标位置之间的距离小于预设值,则电子设备检测到动效播放结束;由于目标位置用于指示n帧画面中的最后一帧画面在显示屏上的位置,即当电子设备播放到最后一帧画面时,电子设备检测到动效播放结束,有利于降低设备功耗。
12.在第一方面的一种可能的设计方式中,电子设备检测到动效播放结束,包括:当电子设备播放动效的时长满足预设时长时,电子设备检测到动效播放结束。
13.在该设计方式中,当电子设备播放动效的时长满足预设时长时,电子设备检测到动效播放结束,有利于降低设备功耗。
14.在第一方面的一种可能的设计方式中,电子设备包括目标应用,第二界面为目标应用的界面;在电子设备开始播放动效之后,方法还包括:电子设备获取第一信息;第一信息包括目标应用的应用包名;电子设备根据目标应用的应用包名和预设刷新率切换规则,确定第二刷新率;预设刷新率切换规则用于指示应用包名与显示屏的刷新率的映射关系。
15.在该设计方式中,电子设备在开始播放动效之后,电子设备可以根据目标应用的应用包名和预设刷新率切换规则,确定第二刷新率;由于预设刷新率切换规则用于指示应用包名与显示屏的刷新率的映射关系,有利于降低设备功耗。
16.在第一方面的一种可能的设计方式中,电子设备包括目标应用;第一界面为电子设备的桌面,第二界面为述目标应用启动后的界面;动效包括电子设备启动目标应用的过程中显示的画面。
17.在第一方面的一种可能的设计方式中,当目标应用未在电子设备的后台运行时,第二界面为目标应用的主界面;或者,当目标应用在电子设备的后台运行时,第二界面为目标应用在后台运行时的界面。
18.在第一方面的一种可能的设计方式中,动效包括连续的n帧画面,n大于等于1;n帧画面中,每一帧画面的尺寸不同;在目标应用启动的过程中,电子设备依次显示n帧画面,且n帧画面中,第一帧画面的尺寸到第n帧画面的尺寸依次增大。
19.在该设计方式中,在目标应用启动的过程中,电子设备依次显示n帧画面,且n帧画面中,第一帧画面的尺寸到第n帧画面的尺寸依次增大,有利于提高目标应用启动过程中播放动效的美观性。
20.在第一方面的一种可能的设计方式中,电子设备包括目标应用;第一界面为目标应用的界面,第二界面为电子设备的桌面;动效包括电子设备退出目标应用的过程中显示的画面。
21.在第一方面的一种可能的设计方式中,动效包括连续的n帧画面,n大于等于1;n帧画面中,每一帧画面的尺寸不同;在目标应用退出的过程中,电子设备依次显示n帧画面,且
n帧画面中,第一帧画面的尺寸到第n帧画面的尺寸依次减小。
22.在该设计方式中,在目标应用退出的过程中,电子设备依次显示n帧画面,且n帧画面中,第一帧画面的尺寸到第n帧画面的尺寸依次减小,有利于提高目标应用退出过程中播放动效的美观性。
23.在第一方面的一种可能的设计方式中,电子设备包括源应用和目标应用;第一界面和第二界面为电子设备的多任务界面;第一界面包括源应用在最近任务间运行时的界面,第二界面包括目标应用在最近任务间运行时的界面。
24.在第一方面的一种可能的设计方式中,电子设备包括桌面启动器、动效识别模块和动效播放组件;电子设备响应于第一操作,开始播放动效,包括:桌面启动器响应于第一操作,向动效识别模块发送第一动效通知消息;第一动效通知消息用于通知动效识别模块有动效开始;动效识别模块根据第一动效通知消息向动效播放组件发送第一目标消息;第一目标消息用于指示所述动效属性;所动效组件根据第一目标消息,开始播放动效。
25.在该设计方式中,桌面启动器响应于第一操作,向动效识别模块发送第一动效通知消息;第一动效通知消息用于通知动效识别模块有动效开始;动效识别模块根据第一动效通知消息向动效播放组件发送第一目标消息;第一目标消息用于指示所述动效属性;所动效组件根据第一目标消息,开始播放动效,有利于降低设备功耗。
26.在第一方面的一种可能的设计方式中,电子设备包括桌面启动器、动效识别模块和动效播放组件;电子设备检测到动效播放结束,包括:当动效播放组件播放第m帧画面时,若第m帧画面在显示屏上的位置与目标位置之间的距离小于预设值,动效播放组件通知桌面管理器动效播放结束;桌面管理器向动效识别模块发送第二动效通知消息;动效识别模块根据第二动效通知消息检测到动效播放结束。
27.在该设计方式中,当动效播放组件播放第m帧画面时,若第m帧画面在显示屏上的位置与目标位置之间的距离小于预设值,动效播放组件通知桌面管理器动效播放结束;桌面管理器向动效识别模块发送第二动效通知消息;动效识别模块根据第二动效通知消息检测到动效播放结束,有利于降低设备功耗。
28.在第一方面的一种可能的设计方式中,电子设备包括桌面启动器、动效识别模块和动效播放组件;电子设备检测到动效播放结束,包括:当动效播放组件播放动效的时长满足所述预设时长时,动效播放组件通知桌面管理器动效播放结束;桌面管理器向动效识别模块发送第二动效通知消息;动效识别模块根据第二动效通知消息检检测到动效播放结束。
29.在该设计方式中,当动效播放组件播放动效的时长满足所述预设时长时,动效播放组件通知桌面管理器动效播放结束;桌面管理器向动效识别模块发送第二动效通知消息;动效识别模块根据第二动效通知消息检检测到动效播放结束,有利于降低设备功耗。
30.第二方面,提供一种电子设备,该电子设备具有实现上述第一方面所述的功能。该功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。该硬件或软件包括一个或多个与上述功能相对应的模块。
31.第三方面,提供一种电子设备,该电子设备包括显示屏、存储器和一个或多个处理器;显示屏、存储器和处理器耦合;存储器用于存储计算机程序代码,计算机程序代码包括计算机指令;当计算机指令被处理器执行时,使得电子设备执行如下步骤:电子设备在显示
屏上以第一刷新率显示第一界面;电子设备接收用户的第一操作;电子设备响应于第一操作,开始播放动效;电子设备检测到动效播放结束,切换为在显示屏上以第二刷新率显示第二界面;其中,动效用于指示电子设备由第一界面切换至第二界面的过程中显示的画面。
32.在第三方面的一种可能的设计中,动效包括连续的n帧画面,其中,n大于等于1;当计算机指令被处理器执行时,使得电子设备具体执行如下步骤:电子设备根据动效属性开始播放动效;动效属性包括动效内容、动效尺寸、动效时长或者动效起始位置和动效结束位置中的至少一种;动效起始位置用于指示n帧画面中的第一帧画面在显示屏上的位置,动效结束位置用于指示n帧画面中的最后一帧画面在显示屏上的位置。
33.在第三方面的一种可能的设计中,动效包括连续的n帧画面,其中,n大于等于1;当计算机指令被处理器执行时,使得电子设备具体执行如下步骤:当电子设备播放第m帧画面时,若第m帧画面在显示屏上的位置与目标位置之间的距离小于预设值,则电子设备检测到动效播放结束;1≤m≤n;其中,目标位置用于指示n帧画面中的最后一帧画面在显示屏上的位置。
34.在第三方面的一种可能的设计中,当计算机指令被处理器执行时,使得电子设备具体执行如下步骤:当电子设备播放动效的时长满足预设时长时,电子设备检测到动效播放结束。
35.在第三方面的一种可能的设计中,电子设备包括目标应用,第二界面为目标应用的界面;当计算机指令被处理器执行时,使得电子设备具还执行如下步骤:电子设备获取第一信息;第一信息包括目标应用的应用包名;电子设备根据目标应用的应用包名和预设刷新率切换规则,确定第二刷新率;预设刷新率切换规则用于指示应用包名与显示屏的刷新率的映射关系。
36.在第三方面的一种可能的设计中,电子设备包括目标应用;第一界面为电子设备的桌面,第二界面为述目标应用启动后的界面;动效包括电子设备启动目标应用的过程中显示的画面。
37.在第三方面的一种可能的设计中,当目标应用未在电子设备的后台运行时,第二界面为目标应用的主界面;或者,当目标应用在电子设备的后台运行时,第二界面为目标应用在后台运行时的界面。
38.在第三方面的一种可能的设计中,动效包括连续的n帧画面,n大于等于1;n帧画面中,每一帧画面的尺寸不同;在目标应用启动的过程中,电子设备依次显示n帧画面,且n帧画面中,第一帧画面的尺寸到第n帧画面的尺寸依次增大。
39.在第三方面的一种可能的设计方式中,电子设备包括目标应用;第一界面为目标应用的界面,第二界面为电子设备的桌面;动效包括电子设备退出目标应用的过程中显示的画面。
40.在第三方面的一种可能的设计方式中,动效包括连续的n帧画面,n大于等于1;n帧画面中,每一帧画面的尺寸不同;在目标应用退出的过程中,电子设备依次显示n帧画面,且n帧画面中,第一帧画面的尺寸到第n帧画面的尺寸依次减小。
41.在第三方面的一种可能的设计方式中,电子设备包括源应用和目标应用;第一界面和第二界面为电子设备的多任务界面;第一界面包括源应用在最近任务间运行时的界面,第二界面包括目标应用在最近任务间运行时的界面。
42.在第三方面的一种可能的设计方式中,电子设备包括桌面启动器、动效识别模块和动效播放组件;桌面启动器响应于第一操作,向动效识别模块发送第一动效通知消息;第一动效通知消息用于通知动效识别模块有动效开始;动效识别模块根据第一动效通知消息向动效播放组件发送第一目标消息;第一目标消息用于指示所述动效属性;所动效组件根据第一目标消息,开始播放动效。
43.在第三方面的一种可能的设计方式中,电子设备包括桌面启动器、动效识别模块和动效播放组件;当动效播放组件播放第m帧画面时,若第m帧画面在显示屏上的位置与目标位置之间的距离小于预设值,动效播放组件通知桌面管理器动效播放结束;桌面管理器向动效识别模块发送第二动效通知消息;动效识别模块根据第二动效通知消息检测到动效播放结束。
44.在第三方面的一种可能的设计方式中,电子设备包括桌面启动器、动效识别模块和动效播放组件;电子设备检测到动效播放结束,包括:当动效播放组件播放动效的时长满足所述预设时长时,动效播放组件通知桌面管理器动效播放结束;桌面管理器向动效识别模块发送第二动效通知消息;动效识别模块根据第二动效通知消息检检测到动效播放结束。
45.第四方面,提供了一种计算机可读存储介质,该计算机可读存储介质中存储有计算机指令,当计算机指令在计算机上运行时,使得计算机可以执行上述第一方面中任一项所述的显示方法。
46.第五方面,提供了一种包含指令的计算机程序产品,当该指令在计算机上运行时,使得计算机可以执行上述第一方面中任一项所述的显示方法。
47.其中,第二方面至第四方面中任一种设计方式所带来的技术效果可参见第一方面中不同设计方式所带来的技术效果,此处不再赘述。
附图说明
48.图1为本技术实施例提供的一种屏幕刷新率切换的示意图一;
49.图2为本技术实施例提供的一种屏幕刷新率切换的示意图二;
50.图3为本技术实施例提供的一种屏幕刷新率切换的示意图三;
51.图4a为本技术实施例提供的一种界面切换的示意图一;
52.图4b为本技术实施例提供的一种动效播放示意图;
53.图5为本技术实施例提供的一种界面切换的示意图二;
54.图6为本技术实施例提供的一种界面切换的示意图三;
55.图7为本技术实施例提供的一种界面切换的示意图四;
56.图8为本技术实施例提供的一种电子设备的硬件结构示意图;
57.图9为本技术实施例提供的一种电子设备的软件框架示意图;
58.图10为本技术实施例提供的一种电子设备界面显示处理流程示意图一;
59.图11为本技术实施例提供的一种电子设备界面显示处理流程示意图二;
60.图12为本技术实施例提供的一种电子设备界面显示处理流程示意图三;
61.图13为本技术实施例提供的一种显示方法的流程示意图一;
62.图14为本技术实施例提供的一种显示方法的流程示意图二;
63.图15为本技术实施例提供的一种芯片系统的结构示意图。
具体实施方式
64.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行描述。其中,在本技术的描述中,除非另有说明,“/”表示前后关联的对象是一种“或”的关系,例如,a/b可以表示a或b;本技术中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况,其中a,b可以是单数或者复数。并且,在本技术的描述中,除非另有说明,“多个”是指两个或多于两个。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b,或c中的至少一项(个),可以表示:a,b,c,a-b,a-c,b-c,或a-b-c,其中a,b,c可以是单个,也可以是多个。另外,为了便于清楚描述本技术实施例的技术方案,在本技术的实施例中,采用了“第一”、“第二”等字样对功能和作用基本相同的相同项或相似项进行区分。本领域技术人员可以理解“第一”、“第二”等字样并不对数量和执行次序进行限定,并且“第一”、“第二”等字样也并不限定一定不同。同时,在本技术实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本技术实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念,便于理解。
65.目前,电子设备在启动某个应用时会播放启动动效;同时在退出该应用时也会播放退出动效。其中,启动动效指的是电子设备接收到用户的启动操作到电子设备显示该应用的界面的过程;退出动效指的是电子设备接收到用户的退出操作到电子设备显示桌面界面的过程。相关技术中,电子设备屏幕刷新率的切换往往是在播放动效(如启动动效或退出动效)的过程中,由于动效是一个界面发生变化的过程,因此电子设备在播放动效时切换屏幕刷新率,就会导致电子设备出现卡顿的现象,进而影响用户体验。
66.示例性的,如图1所示,例如在电子设备从桌面进入视频类应用的情况下,电子设备在播放启动视频类应用的动效的过程中发生屏幕刷新率的切换。参考图1可以看出,由于视频类应用的启动动效是一个动态的过程,因此在播放视频类应用的启动动效的过程中,电子设备的屏幕刷新率直接由120hz切换至60hz,从而导致卡顿。
67.具体的,在播放动效的过程中出现卡顿主要有两方面原因。其中,一方面是在电子设备采用硬件刷新的情况下,如图2所示,由于电子设备硬件的限制,电子设备切换屏幕刷新率需要两帧左右的时间,这样会造成丢帧,从而导致卡顿。另一方面是电子设备的屏幕刷新率在切换时,由于帧间隔发生变化所以用户会感觉到不流畅,即出现卡顿。尤其是从高刷新率(如120hz)到低刷新率(如60hz)时卡顿比较明显。
68.为解决上述技术问题,相关技术中提出了一种固定延时机制。该固定延时机制指的是电子设备将屏幕刷新率切换的时间延迟一个固定时间。但是由于应用启动动效和应用退出动效的时长不一致,因此通过将屏幕刷新率切换的时间延时一个固定时间只能够解决应用启动动效(或者应用退出动效)出现的卡顿,不能够同时解决应用启动动效和应用退出动效出现的卡顿。以荣耀的应用启动动效和应用退出动效为例,示例性的,应用启动动效的时长为400ms,应用退出动效的时长为700ms。那么,通过将屏幕刷新率切换的时间延迟一个
固定时间(如400ms),则可以避免应用启动动效的卡顿,无法避免应用退出动效的卡顿。若将屏幕刷新率切换的时间延迟一个固定时间(如700ms),则可以同时避免应用启动动效和应用退出动效的卡顿。但是若应用启动后,如果用户在300ms以内用户进行触摸操作(如滑动、点击等),则由于屏幕刷新率切换还是会造成卡顿。
69.另外,由于不同设备的性能不同,因此屏幕刷新率的切换时机可能提前或者推迟,这样固定时延的方法需要对不同的设备设置不同的时延,从而会增加开发人员的工作量,降低研发效率。
70.基于此,本技术实施例提供一种显示方法,该方法能够使电子设备在播放完动效之后,再切换屏幕刷新率,从而能够解决电子设备切换屏幕刷新率时出现卡顿的问题。
71.示例性的,如图3所示,例如在电子设备从桌面进入视频类应用的情况下,电子设备在播放完视频类应用的启动动效之后,切换屏幕刷新率。参考图3可以看出,电子设备在播放视频类应用的启动动效时,屏幕刷新率仍然为120hz。而在播放完视频类应用的启动动效之后,屏幕刷新率才切换至60hz。
72.应理解,本技术实施例的方案适用于动效场景下的屏幕刷新率的切换。其中,动效场景指的是电子设备的显示屏的界面发生变化的场景。也就是说,在电子设备的显示屏的界面发生变化的情况下,电子设备会产生屏幕刷新率的切换。示例性的,电子设备在显示第一界面时,使用第一刷新率(如120hz)刷新显示屏;当电子设备由第一界面切换至第二界面时,电子设备使用第二刷新率(如60hz)刷新显示屏。其中,电子设备由第一界面切换至第二界面的过程为本技术实施例所述的动效场景。
73.在一些实施例中,动效场景例如可以为应用启动的场景、应用退出的场景、应用切换(如从一个应用切换到另一个应用)的场景、在多任务界面中,最近任务间的应用切换的场景等。
74.下面以电子设备为手机为例,举例说明本技术实施例所述的动效场景。应理解,以下实施例中所描述的场景仅仅为本技术实施例中的一部分示例,并不构成对本技术的限定,其它适用于屏幕刷新率切换的动效场景也应属于本技术实施例的保护范围。
75.以应用为“通讯”应用,动效场景为“通讯”应用启动的场景为例,示例性的,如图4a中(a)所示,手机响应于用户在手机主屏幕界面中操作“通讯”应用的图标101(如用户点击图标101),手机显示如图4a中(b)所示的界面102。其中,界面102为“通讯”应用启动后的界面。在一些实施例中,如图4a中(b)所示,界面102可以为用户通讯列表的界面。在“通讯”应用启动的场景中,“通讯”应用的启动动效为用户点击图标101到手机显示界面102的过程。
76.需要说明的是,动效播放有固定的时长(如400ms)。在固定时长内连续播放一系列的图像帧即为一个动效场景。以上述启动动效为例,示例性的,启动动效是界面102中显示的图像由小变大的过程。具体的,当用户点击图标101,启动动效开始,并播放界面102中显示的图像;当界面102中显示的图像铺满整个屏幕(或称显示屏)时,启动动效结束。
77.示例性的,以手机在动效播放的固定时长内连续播放六帧的图像帧为例进行示意。当用户点击“通讯”应用的图标101后,手机连续播放如图4b所示的帧1、帧2、帧3、帧4、帧5以及帧6的图像帧。其中,手机播放帧1、帧2、帧3、帧4、帧5以及帧6的图像帧的过程即为启动动效的过程。
78.另外,在启动动效的场景下,在一些实施例中,手机显示主屏幕界面,并使用第一
预设刷新率(如120hz)刷新显示屏;当用户启动“通讯”应用,并显示“通讯”应用的界面时,手机使用第二预设刷新率(如60hz)刷新显示屏。在另一些实施例中,手机显示主屏幕界面,并使用第一预设刷新率(如120hz)刷新显示屏;当手机主屏幕界面在一定时间内没有接收到用户的操作(即主界面在一定时间内没有发生变化,处于静止状态)时,手机会降低屏幕刷新率(如降低至60hz),并使用降低后的屏幕刷新率刷新显示屏。当手机接收到用户的操作后(如用户启动“通讯”应用的操作),手机首先会将屏幕刷新率提高至第一预设刷新率(如120hz);而后,当“通讯”应用启动后,手机再使用第二预设刷新率(如60hz)刷新显示屏,并显示“通讯”应用的界面。
79.需要说明的是,在启动动效的场景中,启动动效可以是用户首次启动应用时播放的动效,也可以是用户非首次启动应用时播放的动效。其中,首次指的是该应用既没有在前台运行,也没有在后台运行。非首次指的是该应用在后台运行,这种情况下,启动动效也可以理解为该应用从后台切换至前台运行的过程。
80.以应用为“通讯”应用,动效场景为“通讯”应用退出的场景为例,示例性的,手机显示如图5中(a)所示的界面103,该界面103为“通讯”应用启动后的界面。示例性的,如图5中(a)所示,界面103例如可以为用户通讯列表的界面。而后,手机响应于用户对“通讯”应用的退出操作,显示如图5中(b)所示的界面104。其中,该界面204例如可以为手机主屏幕界面。
81.在一些实施例中,退出操作例如可以为手势操作、语音操作或触摸操作中的一种。其中,触摸操作例如可以为点击操作,滑动操作等。以退出操作为滑动操作为例,示例性的,仍如图5中(b)所示,该退出操作例如可以为用户对该“通讯”应用的界面的上滑的操作。
82.在“通讯”应用退出的场景中,“通讯”应用的退出动效为用户对“通讯”应用的界面的上滑的操作到手机显示主屏幕界面的过程。在一些实施例中,结合上述实施例,退出动效是界面102中显示的图像由大变小的过程。具体的,当用户在“通讯”应用的界面上滑时,退出动效开始;手机显示的界面102中的图像开始缩小;当界面102中显示的图像完全退出,并且手机显示主屏幕界面时,退出动效结束。
83.以动效场景为手机由主屏幕界面切换至多任务界面的场景为例,示例性的,手机显示如图6中(a)所示的界面105,该界面105为手机主屏幕界面。而后,手机响应于用户对主屏幕界面的操作,手机显示如图6中(b)所示的界面106,该界面106为手机的多任务界面。其中,界面106包括在后台运行的应用1的界面,该应用1为在后台运行时长最短的应用。其中,在该动效场景中,动效指的是用户对主屏幕界面的操作到手机显示多任务界面的过程。
84.需要说明的是,用户对主屏幕界面的操作可以参考上述实施例中对退出操作的举例说明,此处不再一一赘述。以该操作为滑动操作为例,示例性的,仍如图6中(b)所示,该操作例如可以为用户对主屏幕界面的上滑操作。
85.以动效场景为手机在多任务界面中,最近任务间的应用切换的场景为例,示例性的,手机显示如图7中(a)所示的界面107,该界面107为手机的多任务界面。其中,该界面107包括在后台运行的应用1的界面,该应用2为在后台运行时长最短的应用。而后,手机响应于用户对界面107的操作,显示如图7中(b)所示的界面108,该界面108包括在后台运行的应用2的界面,该应用2在后台运行的时长大于应用1在后台运行的时长。其中,在该动效场景中,动效指的是用户对界面107的操作到手机显示界面108的过程。
86.需要说明的是,用户对界面107的操作可以参考上述实施例中对退出操作的举例
input/output,gpio)接口,用户标识模块(subscriber identity module,sim)接口,和/或通用串行总线(universal serial bus,usb)接口等。
95.可以理解的是,本实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对电子设备的结构限定。在另一些实施例中,电子设备也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
96.充电管理模块140用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。在一些有线充电的实施例中,充电管理模块140可以通过usb接口130接收有线充电器的充电输入。在一些无线充电的实施例中,充电管理模块140可以通过电子设备的无线充电线圈接收无线充电输入。充电管理模块140为电池142充电的同时,还可以通过电源管理模块141为电子设备供电。
97.电源管理模块141用于连接电池142,充电管理模块140与处理器110。电源管理模块141接收电池142和/或充电管理模块140的输入,为处理器110,内部存储器121,外部存储器,显示屏194,摄像头193,和无线通信模块160等供电。电源管理模块141还可以用于监测电池容量,电池循环次数,电池健康状态(漏电,阻抗)等参数。在其他一些实施例中,电源管理模块141也可以设置于处理器110中。在另一些实施例中,电源管理模块141和充电管理模块140也可以设置于同一个器件中。
98.电子设备100的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
99.电子设备100通过gpu,显示屏194,以及应用处理器等实现显示功能。gpu为图像处理的微处理器,连接显示屏194和应用处理器。gpu用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个gpu,其执行程序指令以生成或改变显示信息。
100.显示屏194用于显示图像,视频等。该显示屏194包括显示面板(或称显示基板)。显示面板可以采用有机发光二极管(organic light-emitting diode,oled)。在本技术实施例中,显示屏为ltpo显示屏;ltpo显示屏包括的显示面板中的显示单元(如tft)为ltpo tft。其中,对于ltpo的举例说明可以参考上述实施例,此处不再一一赘述。
101.电子设备100可以通过isp,摄像头193,视频编解码器,gpu,显示屏194以及应用处理器等实现拍摄功能。
102.isp用于处理摄像头193反馈的数据。例如,拍照时,打开快门,光线通过镜头被传递到摄像头感光元件上,光信号转换为电信号,摄像头感光元件将所述电信号传递给isp处理,转化为肉眼可见的图像。isp还可以对图像的噪点,亮度,肤色进行算法优化。isp还可以对拍摄场景的曝光,色温等参数优化。在一些实施例中,isp可以设置在摄像头193中。
103.摄像头193用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,ccd)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,cmos)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给isp转换成数字图像信号。isp将数字图像信号输出到dsp加工处理。dsp将数字图像信号转换成标准的rgb,yuv等格式的图像信号。在一些实施例中,电子设备可以包括1个或n个摄像头193,n为大于1的正整数。
104.数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。例如,当电子设备在频点选择时,数字信号处理器用于对频点能量进行傅里叶
变换等。
105.视频编解码器用于对数字视频压缩或解压缩。电子设备100可以支持一种或多种视频编解码器。这样,电子设备可以播放或录制多种编码格式的视频,例如:动态图像专家组(moving picture experts group,mpeg)1,mpeg2,mpeg3,mpeg4等。
106.npu为神经网络(neural-network,nn)计算处理器,通过借鉴生物神经网络结构,例如借鉴人脑神经元之间传递模式,对输入信息快速处理,还可以不断的自学习。通过npu可以实现电子设备的智能认知等应用,例如:图像识别,人脸识别,语音识别,文本理解等。
107.电子设备100可以通过音频模块170,扬声器170a,受话器170b,麦克风170c,耳机接口170d,以及应用处理器等实现音频功能。例如音乐播放,录音等。
108.音频模块170用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。音频模块170还可以用于对音频信号编码和解码。在一些实施例中,音频模块170可以设置于处理器110中,或将音频模块170的部分功能模块设置于处理器110中。扬声器170a,也称“喇叭”,用于将音频电信号转换为声音信号。受话器170b,也称“听筒”,用于将音频电信号转换成声音信号。麦克风170c,也称“话筒”,“传声器”,用于将声音信号转换为电信号。
109.耳机接口170d用于连接有线耳机。耳机接口170d可以是usb接口130,也可以是3.5mm的开放移动电子设备平台(open mobile terminal platform,omtp)标准接口,美国蜂窝电信工业协会(cellular telecommunications industry association of the usa,ctia)标准接口。
110.外部存储器接口120可以用于连接外部存储卡,例如micro sd卡,实现扩展电子设备的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音频,视频等文件保存在外部存储卡中。
111.内部存储器121可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。处理器110通过运行存储在内部存储器121的指令,从而执行电子设备的各种功能应用以及数据处理。例如,在本技术实施例中,处理器110可以通过执行存储在内部存储器121中的指令,内部存储器121可以包括存储程序区和存储数据区。
112.其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储电子设备使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,ufs)等。
113.按键190包括开机键,音量键等。按键190可以是机械按键。也可以是触摸式按键。马达191可以产生振动提示。马达191可以用于来电振动提示,也可以用于触摸振动反馈。指示器192可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息,未接来电,通知等。sim卡接口195用于连接sim卡。sim卡可以通过插入sim卡接口195,或从sim卡接口195拔出,实现和电子设备的接触和分离。电子设备可以支持1个或n个sim卡接口,n为大于1的正整数。sim卡接口195可以支持nano sim卡,micro sim卡,sim卡等。
114.在一些实施例中,电子设备100的软件系统可以采用分层架构,事件驱动架构,微核架构或云架构。本技术实施例以分层架构android系统为例,示例性的说明电子设备100
的软件结构。
115.图9为本技术实施例提供的电子设备的软件结构图。
116.分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将android系统分为五层,从上至下分别为应用层(或称应用程序层),应用程序框架层,安卓运行时(android runtime)和系统库,硬件抽象层以及内核层。
117.应用层可以包括一系列应用程序包。
118.如图9所示,应用程序包可以包括电话、邮箱、日历、相机等应用程序。在一些实施例中,应用层还包括桌面启动器(launcher)。launcher是android系统中的桌面启动器,android系统的桌面界面(user interface,ui)统称为launcher。其中,桌面界面包括电子设备安装的各个应用的图标。示例性的,桌面界面包括电话图标、邮箱图标、日历图标、相机图标等。
119.应用程序框架层为应用层的应用程序提供应用编程接口(application programming interface,api)和编程框架。应用程序框架层包括一些预先定义的函数。
120.如图9所示,应用程序框架层可以包括窗口管理器、刷新率切换模块、动效识别模块、图像合成系统、视图系统、包管理器、输入管理器、活动管理器、资源管理器和动效播放组件等。
121.窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。
122.刷新率切换模块用于调节屏幕刷新率。
123.动效识别模块用于在电子设备发生界面切换的场景下,识别界面切换的动效。例如识别动效开始、动效结束等。
124.图像合成系统用于控制图像合成,以及产生垂直同步(vetical synchronization,vsync)信号。在一些实施例中,图像合成系统还包括图像缓存队列。示例性的,应用通过视图系统对图像进行绘制,并通过图像渲染系统对绘制后的图像进行渲染。而后应用将绘制渲染后的图像发送至图像合成系统中的图像缓存队列;图像缓存队列用于缓存应用绘制渲染后的图像。每当vsync信号到来时,图像合成系统从图像缓存队列中按顺序获取待合成的一帧图像,然后通过图像合成系统进行图像合成。
125.图像合成系统包括:合成线程、vsync线程、缓存队列(quene buffer)线程。合成线程用于被vsync信号唤醒进行合成。vsync线程用于根据vsync信号请求生成下一个vsync信号。缓存队列线程用于存放缓存、产生vsync信号请求,以及唤醒合成线程等。
126.视图系统包括可视控件,例如显示文字的控件,显示图片的控件等。视图系统可用于构建应用程序。显示界面可以由一个或多个视图组成的。例如,包括短信通知图标的显示界面,可以包括显示文字的视图以及显示图片的视图。
127.包管理器用于系统内的程序管理,例如:应用程序安装、卸载和升级等。
128.输入管理器用于管理输入设备的程序。例如,输入系统可以确定鼠标点击操作、键盘输入操作和触摸滑动等输入操作。
129.活动管理器用于管理各个应用程序的生命周期以及导航回退功能。负责android的主线程创建,各个应用程序的生命周期的维护。
130.资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等等。
131.动效播放组件用于播放动效。示例性的,动效播放组件用于播放应用启动时的动效(如启动动效)或者应用退出时的动效(如退出动效等)。
132.android runtime包括核心库和虚拟机。android runtime负责安卓系统的调度和管理。
133.核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。
134.应用层和应用程序框架层运行在虚拟机中。虚拟机将应用层和应用程序框架层的java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理,堆栈管理,线程管理,安全和异常的管理,以及垃圾回收等功能。
135.系统库可以包括多个功能模块。例如:图像渲染库、图像合成库、函数库、媒体库和输入处理库等。
136.图像渲染库用于二维或三维图像的渲染。图像合成库用于二维或三维图像的合成。
137.可能的实现方式中,应用通过图像渲染库对图像进行绘制渲染,然后应用将绘制渲染后的图像发送至图像合成系统的缓存队列中。每当vsync信号到来时,图像合成系统(例如,surface flinger)从缓存队列中按顺序获取待合成的一帧图像,然后通过图像合成库进行图像合成。
138.函数库提供c语言中所使用的宏、类型定义、字符串操作函数、数学计算函数以及输入输出函数等。
139.媒体库支持多种常用的音频,视频格式回放和录制,以及静态图像文件等。媒体库可以支持多种音视频编码格式,例如:mpeg4、h.264、mp3、aac、amr、jpg和png等。
140.输入处理库用于处理输入设备的库,可以实现鼠标、键盘和触摸输入处理等。
141.硬件抽象层,可以包含多个库模块,库模块如可以为硬件合成器(hwcomposer,hwc)、摄像头库模块等。android系统可以为设备硬件加载相应的库模块,进而实现应用程序框架层访问设备硬件的目的。设备硬件可以包括如电子设备中的显示屏、摄像头等。
142.内核层是硬件和软件之间的层。内核层至少包含触控(touch panel,tp)驱动、显示驱动、蓝牙驱动、wifi驱动、键盘驱动、共用存储器驱动和相机驱动等。
143.硬件可以是音频设备、蓝牙设备、相机设备、传感器设备等。
144.下面结合电子设备发生界面切换的场景,示例性说明电子设备软件以及硬件的工作流程。
145.当触控面板中触摸传感器接收到触摸操作时,内核层将触摸操作加工成原始输入事件(包括触摸坐标,触摸力度,触摸操作的时间戳等信息)。原始输入事件被存储在内核层。内核层通过输入处理库将原始输入事件的信息(包括操作类型和报点位置等)和根据当前焦点确定焦点应用,并将解析后的信息发送至焦点应用。焦点可以是触摸操作中触碰点或者鼠标点击操作中点击位置。焦点应用为电子设备前台运行的应用或触摸操作中触碰位置对应的应用。焦点应用根据解析后的原始输入事件的信息(例如报点位置)确定该原始输入事件所对应的控件。
146.以该触摸操作为点击操作,该点击操作所对应的控件为应用1的图标为例,应用1通过应用程序框架层的视图系统,调用系统库中图像渲染库对图像进行绘制渲染。应用1将绘制渲染后的图像发送至图像合成系统的缓存队列中。通过系统库中图像合成库将图像合成系统中绘制渲染后的图像合成为应用1界面。图像合成系统通过内核层的显示驱动,使得屏幕(显示屏)显示应用1的相应界面。
147.为了便于理解,示例性的给出部分与本技术实施例相关概念的说明以供参考。
148.1、帧:是指界面显示中最小单位的单幅画面。一帧可以理解为一幅静止的画面,快速连续地显示多个相连的帧可以形成物体运动的假象。帧率是指在1秒钟时间里刷新图片的帧数,也可以理解为电子设备中图像处理器每秒钟刷新画面的次数。高的帧率可以得到更流畅和更逼真的动画。每秒钟帧数越多,所显示的动作就会越流畅。
149.需要说明的是,界面显示帧之前通常需要经过绘制、渲染、合成等过程。
150.2、帧绘制:是指界面显示的图片绘制。显示界面可以由一个或多个视图组成,各个视图可以由视图系统的可视控件绘制,各个视图由子视图组成,一个子视图对应视图中的一个小部件,例如,其中的一个子视图对应图片视图中的一个符号。
151.3、帧渲染:是将绘制后的视图进行着色操作或增加3d效果等。例如:3d效果可以是灯光效果、阴影效果和纹理效果等。
152.4、帧合成:是将多个上述一个或多个渲染后的视图合成为显示界面的过程。
153.需要说明的是,为了提高显示的流畅性,减少出现显示卡顿等现象,电子设备一般基于vsync信号进行显示,以对图像的绘制、渲染、合成和屏幕刷新显示等流程进行同步。本领域技术人员应当理解的是,vsync信号为周期性信号,vsync信号周期可以根据显示屏的刷新率进行设置。例如,当显示屏的刷新率为60hz时,vsync信号周期可以为16.6ms,即电子设备每隔16.6ms生成一个控制信号使vsync信号周期触发。
154.另外,需要说明的是,vsync信号可以分为软件vsync信号和硬件vsync信号。软件vsync信号包括vsync-app和vsync-sf。vsync-app用于触发绘制渲染流程。vsync-sf用于触发合成流程。硬件vsync信号(vsync-hw)用于触发屏幕显示刷新流程。
155.通常情况下,软件vsync信号和硬件vsync信号保持周期同步。以120hz和60hz变化为例,若vsync-hw从120hz切换到60hz,vsync-app、vsync-sf同步变化,从120hz切换到60hz。
156.示例性的,图10为本技术实施例提供的一种电子设备界面显示处理流程示意图。按照时间顺序,电子设备显示的内容依次对应于帧1、帧2和帧3。
157.具体的,以帧1的显示为例,电子设备的应用通过应用程序框架层的视图系统对帧1进行绘制渲染。帧1绘制渲染完成后,电子设备的应用将绘制渲染好的帧1发送至图像合成系统。图像合成系统对绘制渲染好的帧1进行合成。帧1完成合成后,电子设备可以通过调用内核层显示驱动,在屏幕(如显示屏)显示帧1对应的内容。需要说明的是,帧2和帧3类似于帧1的过程也进行合成和显示,此处不再赘述。图3中每帧从绘制到显示,滞后2个vsync信号周期,即电子设备的显示具有滞后性。
158.示例性的,图11为本技术实施例提供的一种电子设备界面显示处理流程示意图。按照时间顺序,电子设备显示的内容依次对应于帧0、帧1、帧2、帧3、帧4、帧5和帧6。
159.具体的,以帧2的显示为例,电子设备的应用通过应用程序框架层的视图系统,对
帧2进行绘制渲染。帧2绘制渲染完成后,电子设备的应用将绘制渲染好的帧2发送至图像合成系统。图像合成系统对绘制渲染好的帧2进行合成。帧2完成合成后,电子设备可以通过调用内核层启动显示驱动,显示帧2对应的内容。帧3、帧4、帧5和帧6类似于帧2的过程也进行合成和显示,此处不再赘述。
160.其中,在帧3绘制渲染时,电子设备的屏幕刷新率切换模块决策切换刷新率(例如从120hz切换为60hz);在帧4绘制渲染时,进行屏幕刷新率切换,帧4绘制渲染对应的vsync信号周期时长变长,完成屏幕刷新率的切换。
161.从图11中可以看出,图11中每帧从绘制到显示,滞后2个vsync信号周期。由上述实施例可知,电子设备屏幕刷新率的切换发生在动效播放的过程中,参考图11可以看出,动效播放的过程中,电子设备的显示屏依次显示帧2和帧3。而在动效播放的过程中进行屏幕刷新率的切换时,帧2绘制渲染时对应的帧间隔与帧2显示时对应的帧间隔不一致(如帧2显示时对应的帧间隔相对于帧2绘制渲染时对应的帧间隔变长,距离变长)。同样,帧3绘制渲染时对应的帧间隔与帧3显示时对应的帧间隔不一致,因而导致在动效播放过程中,出现卡顿。
162.示例性的,图12为本技术实施例提供的一种电子设备界面显示处理流程示意图。案子时间顺序,电子设备显示的内容依次对应于帧0、帧1、帧2、帧3、帧4、帧5和帧6。
163.其中,在帧4绘制渲染时,电子设备的屏幕刷新率切换模块决策切换刷新率(例如从120hz切换为60hz);在帧5绘制渲染时,进行屏幕刷新率切换,帧5绘制渲染对应的vsync信号周期时长变长,完成屏幕刷新率的切换。
164.从图12可以看出,电子设备屏幕刷新率的切换发生在动效播放之后,即在播放完动效之后,立即进行屏幕刷新率的切换。参考图12所示,动效播放过程中,电子设备的显示屏显示帧0、帧1和帧2。而在此时,帧1绘制渲染时对应的帧间隔与帧1显示时对应的帧间隔一致。同样,帧2绘制渲染时对应的帧间隔与帧2显示时对应的帧间隔一致,从而可以避免电子设备在播放动效的过程中出现卡顿的问题。
165.需要说明的是,当显示屏的屏幕刷新率为120hz时,vsync信号周期可以为8.3ms,即电子设备每隔8.3ms生成一个控制信息使vsync信号周期触发。当显示屏的刷新率为60hz时,vsync信号周期可以为16.6ms,即电子设备每隔16.6ms生成一个控制信号使vsync信号周期触发。
166.另外,以电子设备的显示屏大小为1080x1980(单位为pixel,即像素),即电子设备的显示屏纵向为1080pixel,横向为1980pixel,应用启动动效时长为400ms为例。那么60hz刷新率下应用启动动效需要绘制24帧。一般情况下,显示屏纵向每帧间隔83pixel,横向每帧间隔45pixel。如果电子设备的屏幕刷新率切换为120hz,则每帧间隔减半,即显示屏纵向每帧间隔42pixel,横向每帧间隔23pixel。
167.为方便理解,下面结合图9所示的软件架构图,对本技术实施例提供的显示方法中涉及的各个模块之间交互的过程进行说明。
168.示例性的,图13为本技术实施例提供的显示方法中各个模块之间交互的过程示意图。如图13所示,电子设备可以包括:桌面启动器、动效识别模块、活动管理器、动效播放组件、屏幕刷新率切换模块、图像合成系统、硬件合成器以及显示驱动。例如,该显示方法可以包括s201-s215。
169.s201、桌面启动器接收用户的第一操作。
170.其中,第一操作可以为语音操作,手势操作或触摸操作中的一种。其中,触摸操作例如可以为点击操作或滑动操作等。
171.以第一操作为点击操作为例,示例性的,结合图4a所示,桌面启动器接收用户对通讯应用的点击操作,并响应于该点击操作,启动该通讯应用。其中,当通讯应用启动后,电子设备播放启动动效。以第一操作为滑动操作为例,示例性的,结合图5所示,桌面启动器接收用户对通讯应用界面的滑动操作(如上滑操作),并响应于该滑动操作,退出该通讯应用。其中,当通讯应用退出后,电子设备会播放退出动效。
172.s202、桌面启动器向动效识别模块发送第一动效通知消息。
173.其中,第一动效通知消息用于通知动效识别模块有目标动效产生(或称目标动效开始)。
174.在一些实施例中,第一动效通知消息还包括第一动效类型。其中,第一动效类型用于指示目标动效开始的动效类型。例如,当第一动效类型为“0”时,表示目标动效为启动动效;当第一动效类型为“1”时,表示目标动效为退出动效。
175.示例性的,第一动效通知消息例如可以为start“0”;或者为start“1”。其中,start表示开始。在此基础上,当第一动效通知消息为start“0”时,目标动效为启动动效开始;当第一动效通知消息为start“1”时,目标动效为退出动效开始。
176.在一些实施例中,当桌面启动器接收到用户的第一操作后,响应于第一操作,启动目标应用。其中,目标应用在启动过程中播放的动效称为目标动效。在此基础上,示例性的,当桌面启动器检测到用户的手指离开桌面(即用户的手指离开电子设备的屏幕)时,目标动效(如启动动效或者退出动效)开始播放。另外,在一些实施例中,当目标动效开始播放时,桌面启动器向动效识别模块发送第一动效通知消息;也就是说,当桌面启动器检测到用户的手指离开桌面时,桌面启动器向动效识别模块发送第一动效通知消息。
177.s203、动效识别模块向桌面启动器注册回调。
178.在一些实施例中,当动效识别模块接收到桌面启动器发送的第一动效通知消息时,动效识别模块向桌面启动器注册回调,以通知桌面启动器目标动效开始。
179.s204、桌面启动器通知活动管理器当前有动效开始。
180.s205、活动管理器向屏幕刷新率切换模块发送第一消息。
181.其中,第一消息用于告知屏幕刷新率切换模块当前有动效开始。在一些实施例中,第一消息包括目标应用的应用包名。
182.s206、屏幕刷新率切换模块根据第一消息以及预设刷新率切换规则确定目标应用的预设刷新率。
183.其中,预设刷新率切换规则存储于屏幕刷新率切换模块中,该预设刷新率切换规则用于指示目标应用的应用包名与目标应用的预设刷新率的对应关系。
184.例如,目标应用的应用包名为com.tencent.qqlive,该目标应用的应用包名对应的预设刷新率为60hz。
185.需要说明的是,若动效场景为应用启动时播放动效的场景,则第一消息包括启动应用(即目标应用)的包名。若动效场景为由第一应用切换至第二应用时播放动效的场景,则第一消息可以为包名切换消息,即由第一应用的应用包名切换至第二应用的应用包名的
消息。在此基础上,屏幕刷新率切换模块可以根据包名切换消息,确定切换后的第二应用的预设刷新率。
186.需要说明的是,在相关技术中,当屏幕刷新率切换模块接收到活动管理器发送的第一消息后,屏幕刷新率切换模块确定目标应用的预设刷新率;而后,屏幕刷新率切换模块就会将当前屏幕刷新率切换为目标应用的预设刷新率。但是在本技术实施例中,当屏幕刷新率切换模块接收到活动管理器发送的第一消息后,屏幕刷新率切换模块根据第一消息确定当前有动效开始。而后,屏幕刷新率切换模块根据第一消息携带的目标应用的应用包名,以及屏幕刷新率切换规则确定目标应用的预设刷新率,并将预设刷新率存储在屏幕刷新率切换模块中。当屏幕刷新率切换模块接收到动效结束的消息后,屏幕刷新率切换模块才会将当前屏幕刷新率切换为目标应用的预设刷新率。
187.s207、动效识别模块向动效播放组件发送第二消息。
188.其中,该第二消息(或称第一目标消息)用于指示目标动效的动效属性。示例性的,动效属性包括目标动效的动效内容、动效尺寸(如由小变大或由大变小)、动效时长或动效起始位置和结束位置中的一种或多种。
189.例如,当目标动效为启动动效开始时,动效识别模块会向动效播放组件发送启动动效开始的动效内容、动效尺寸、动效时长或动效起始位置和结束位置中的一种或多种。
190.需要说明的是,动效包括连续的多帧图像帧。其中动效起始位置指的是第一帧图像帧的位置,动效结束位置指的是最后一帧图像帧的位置。
191.s208、动效播放组件根据第二消息播放目标动效。
192.仍以目标动效的动效类型为启动动效开始为例,示例性的,动效播放组件根据启动动效开始的动效内容,启动动效的动效尺寸(如由小变大)、动效时长(如400ms)以及启动动效的起始位置和结束位置播放目标动效。
193.s209、动效播放组件向桌面启动器注册回调。
194.示例性的,当动效播放组件播放完目标动效时,动效播放组件向桌面启动器注册回调,以通知桌面启动器目标动效结束。
195.示例性的,目标动效为电子设备在固定时长内连续播放一系列的图像帧(如图4b所示的帧1至帧6)。在一些实施例中,当动效播放组件播放完目标动效的最后一帧图像帧时,动效播放组件向桌面启动器注册回调。示例性的,当动效播放组件当前播放的图像帧到达动效结束位置(即此时动效播放组件播放的图像帧为最后一帧)时,动效播放组件向桌面启动器注册回调。在另一些实施例中,当动效播放组件播放目标动效的时长达到固定时长(如播放完400ms)时,动画播放组件向桌面启动器注册回调。
196.s210、桌面启动器向动效识别模块发送第二动效通知消息。
197.其中,第二动效通知消息用于通知动效识别模块目标动效结束。
198.在一些实施例中,第二动效通知消息还包括第二动效类型。其中,第二动效类型用于指示目标动效结束的动效类型。例如当第二动效类型为“0”时,表示目标动效为启动动效;当第二动效类型为“1”时,表示目标动效为退出动效。
199.示例性的,第二动效通知消息例如可以为end“0”;或者end“1”。其中,end表示结束。在此基础上,当第二动效通知消息为end“0”时,目标动效为启动动效结束;当第二动效通知消息为end“1”时,目标动效为退出动效结束。
200.s211、动效识别模块通知屏幕刷新率切换模块目标动效结束。
201.示例性的,当动效识别模块通知屏幕刷新率切换模块目标动效结束之后,屏幕刷新率切换模块根据之前存储的目标应用的预设刷新率,将当前屏幕刷新率切换为目标应用的预设刷新率(如从120hz切换至60hz)。这里需要说明的是,若当前屏幕刷新率与目标应用的预设刷新率相同,则屏幕刷新率切换模块不会切换刷新率。
202.需要说明的是,本技术实施例中所述的目标应用的预设刷新率指的是电子设备的显示屏的屏幕刷新率,即显示屏每秒画面被刷新的次数。换言之,电子设备在显示屏上以目标应用的预设刷新率显示目标应用的界面。
203.需要说明的是,当桌面启动器向动效识别模块发送第一动效通知消息和第二动效通知消息时,可能会产生时延的问题。以桌面启动器向动效识别模块发送第一动效通知消息为例,例如,当桌面启动器接收用户的第一操作一段时间(如3ms)之后,桌面启动器才会向动效识别模块发送第一动效通知消息,即延迟发送。而这种时延会导致电子设备在播放动效时出现卡顿。基于此,在本技术实施例中,桌面启动器可以提前一定时间向动效识别模块发送第一动效通知消息和第二动效通知消息,从而有效避免时延导致的卡顿问题。
204.s212、屏幕刷新率切换模块向图像合成系统发送目标应用的预设刷新率。
205.s213、图像合成系统根据目标应用的预设刷新率合成目标图像。
206.示例性的,图像合成系统触发目标应用绘制渲染图像数据。例如,目标应用通过视图系统绘制图像数据,并通过图像渲染系统渲染图像数据。目标应用将绘制渲染后的图像数据发送至图像合成系统,图像合成系统对该图像数据进行合成,以得到目标图像。
207.s214、图像合成系统将合成后的目标图像发送至硬件合成器。
208.s215、硬件合成器将目标图像发送至显示驱动。
209.具体的,在硬件合成器将合成后的目标图像发送至显示驱动之后,显示驱动会驱动显示屏显示目标图像。
210.示例性的,在本技术实施例中,该目标图像可以为目标应用启动后显示的图像(如目标应用主界面的图像,或者目标应用在后台运行时的界面的图像)。
211.综上所述,在本技术实施例中,由于电子设备可以通过动效识别模块识别到目标动效的开始和结束,因此在电子设备识别到目标动效结束后,电子设备才会通过屏幕刷新率切换模块切换显示屏的刷新率,从而能够避免电子设备在播放目标动效的过程中出现的卡顿的问题。
212.如图14所示,为本技术实施例提供的一种显示方法的流程示意图。该显示方法应用于电子设备中,该电子设备支持第一刷新率和第二刷新率。该显示方法包括:
213.s301、电子设备在显示屏上以第一刷新率显示第一界面。
214.在一些实施例中,如图4a和图6所示,第一界面为电子设备的桌面;此时第一刷新率为桌面的预设刷新率。在另一些实施例中,如图5所示,第一界面为目标应用(如通讯应用)的界面;此时第一刷新率为目标应用的预设刷新率。在又一些实施例中,第一界面为电子设备的多任务界面,第一界面包括源应用在最近任务间运行时的界面;此时第一刷新率为源应用的预设刷新率。示例性的,如图7中(a)所示,第一界面为源应用(或称应用1)在最近任务间运行时的界面。
215.结合上述实施例所述,在本技术实施例中,源应用也可以称为第一应用(或称应用
1),目标应用也可以称为第二应用(或称应用2)。
216.s302、电子设备接收用户的第一操作。
217.其中,对于第一操作的举例说明可以参考上述实施例s201中对第一操作的举例说明,此处不再一一列举。
218.s303、电子设备响应于第一操作,电子设备开始播放动效。
219.在一些实施例中,动效(或称目标动效)包括连续的n帧画面(或称图像帧);其中,n大于等于1。示例性的,电子设备根据动效属性开始播放动效;其中,动效属性包括动效内容、动效尺寸、动效时长或者动效起始位置和动效结束位置中的至少一种;动效起始位置用于指示n帧画面中的第一帧画面在显示屏上的位置,动效结束位置用于指示n帧画面中的最后一帧画面在显示屏上的位置。
220.s304、电子设备检测到动效播放结束,切换为在显示屏上以第二刷新率显示第二界面。
221.其中,动效用于指示电子设备由第一界面切换至第二界面的过程中显示的画面。
222.在一些实施例中,如图4a所示,第二界面为目标应用(如通讯应用)的界面,此时第二刷新率为目标应用的预设刷新率。在另一些实施例中,如图5所示,第二界面为电子设备的桌面,此时第二刷新率为桌面的预设刷新率。在另一些实施例中,如图6所示,第二界面为源应用(如应用1)在最近任务间运行时的界面,此时第二刷新率为源应用的预设刷新率。在另一些实施例中,如图7所示,第二界面为目标应用(如应用2)在最近任务间运行时的界面,此时第二刷新率为目标应用的预设刷新率。
223.在一些实施例中,当电子设备播放第m帧画面时,若第m帧画面在显示屏上的位置与目标位置之间的距离小于预设值,则电子设备检测到动效播放结束;其中,1≤m≤n;目标位置用于指示n帧画面中的最后一帧画面在显示屏上的位置。
224.需要说明的是,预设值可以根据实际需求进行设置,本技术实施例对此不作限定。
225.示例性的,当电子设备播放第m帧画面时,若第m帧画面在显示屏上的位置与目标位置相同,则电子设备检测到动效播放结束。换言之,当电子设备播放n帧画面中的最后一帧画面时,电子设备检测到动效播放结束。
226.在另一些实施例中,当电子设备播放动效的时长满足预设时长时,电子设备检测到动效播放结束。
227.需要说明的是,预设时长可以根据实际需求进行设置,本技术实施例对此不作限定。
228.以预设时长为400ms为例进行示意,示例性的,当电子设备播放动效的时长达到预400ms时,电子设备检测到动效播放结束。
229.在本技术实施例中,电子设备在显示屏上以第一刷新率显示第一界面;当电子设备接收到用户的第一操作,并响应于第一操作,电子设备开始播放动效;当电子设备检测到动效播放结束时,电子设备切换为在显示屏上以第二刷新率显示第二界面;由于动效用于执行电子设备由第一界面切换至第二界面的过程中显示的图像,因此当电子设备检测到动效播放结束时,电子设备才将第一刷新率切换为第二刷新率,并显示第二界面,从而避免了动效播放过程中切换刷新率造成的卡顿问题。
230.本技术实施例提供了一种电子设备,该电子设备可以包括:显示屏(如触摸屏)、存
储器和一个或多个处理器。该显示屏、存储器和处理器耦合。该存储器用于存储计算机程序代码,该计算机程序代码包括计算机指令。当处理器执行计算机指令时,电子设备可执行上述方法实施例中手机执行的各个功能或者步骤。该电子设备的结构可以参考图8所示的电子设备100的结构。
231.本技术实施例还提供一种芯片系统,如图15所示,该芯片系统1800包括至少一个处理器1801和至少一个接口电路1802。其中,处理器1801可以是上述实施例中图8所示的处理器110。接口电路1802例如可以为处理器110和外部存储器120之间的接口电路;或者为处理器110和内部存储器121之间的接口电路。
232.上述处理器1801和接口电路1802可通过线路互联。例如,接口电路1802可用于从其它装置(例如电子设备的存储器)接收信号。又例如,接口电路1802可用于向其它装置(例如处理器1801)发送信号。示例性的,接口电路1802可读取存储器中存储的指令,并将该指令发送给处理器1801。当所述指令被处理器1801执行时,可使得电子设备执行上述实施例中手机180执行的各个步骤。当然,该芯片系统还可以包含其他分立器件,本技术实施例对此不作具体限定。
233.本技术实施例还提供一种计算机可读存储介质,该计算机可读存储介质包括计算机指令,当所述计算机指令在电子设备上运行时,使得该电子设备执行上述方法实施例中手机执行的各个功能或者步骤。
234.本技术实施例还提供一种计算机程序产品,当所述计算机程序产品在计算机上运行时,使得所述计算机执行上述方法实施例中手机执行的各个功能或者步骤。
235.通过以上实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
236.在本技术所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
237.所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是一个物理单元或多个物理单元,即可以位于一个地方,或者也可以分布到多个不同地方。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
238.另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
239.所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个可读取存储介质中。基于这样的理解,本技术实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式
体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
240.以上内容,仅为本技术的具体实施方式,但本技术的保护范围并不局限于此,任何在本技术揭露的技术范围内的变化或替换,都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应以所述权利要求的保护范围为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1