CN115658213B - 一种显示方法、电子设备及存储介质 - Google Patents
一种显示方法、电子设备及存储介质 Download PDFInfo
- Publication number
- CN115658213B CN115658213B CN202211533724.3A CN202211533724A CN115658213B CN 115658213 B CN115658213 B CN 115658213B CN 202211533724 A CN202211533724 A CN 202211533724A CN 115658213 B CN115658213 B CN 115658213B
- Authority
- CN
- China
- Prior art keywords
- display
- style
- interface
- screen
- electronic device
- 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
Abstract
本申请涉及一种显示方法、电子设备及存储介质。该方法包括:响应于焦点窗口由第一界面切换为第二界面的第一操作,电子设备的应用进程向电子设备的系统服务指示第二显示样式,系统服务将当前焦点窗口的样式参数更新为第二显示样式的样式参数,并通知系统UI进程刷新当前焦点窗口的样式参数,系统UI进程刷新当前焦点窗口的样式参数,并绘制第二显示样式对应的目标视图,电子设备的SurfaceFlinger进程根据目标视图渲染并显示第二界面。第一界面和第二界面的显示样式不同。本申请实施例可以在更改显示样式时,减少内存的占用率,降低进程之间耦合的复杂程度。
Description
技术领域
本申请涉及通信技术领域,尤其涉及一种显示方法、电子设备及存储介质。
背景技术
在进入智能科技时代之后,电子设备的显示屏幕越发受到重视。各种新型显示屏幕的设计方案层出不穷。例如,目标较为流行的“刘海屏”、“水滴屏”以及“挖孔屏”等屏幕样式。为了匹配显示屏幕的设计,电子设备的界面通常也会做出一些改变。例如,界面也会相应的设置“刘海”、“水滴”和“挖孔”的显示样式以适配显示屏幕。再例如,电子设备的界面通常以圆角样式展示,从而可以更好地实现界面与显示屏幕边框间的过渡。
举例来说,在手机将界面配置为圆角样式时,可以调用预存的圆角资源。然后手机可以将圆角资源渲染到界面上。最终,界面展示的画面可以是圆角样式的画面。
但是,实现电子设备上的各种显示方案,需要预先在内存中加载多套资源(如上述圆角资源),内存占用率较高。并且,目前电子设备在配置界面的显示样式时,是由上层业务模块(如窗口管理服务(Window Manager Service,WMS))直接通知底层的SurfaceFlinger进程来进行图层绘制的。上层业务模块直接调用底层SurfaceFlinger实现图层的绘制,会增加业务耦合的复杂程度。
发明内容
有鉴于此,本申请提供了一种显示方法、电子设备及存储介质,在电子设备更改界面的显示样式时,可以减少内存的占用率,降低进程之间耦合的复杂程度。
第一方面,本申请提供一种显示方法,可应用于包括显示屏的电子设备,显示屏为水滴屏、挖孔屏、刘海屏中的任一种。显示屏用于以多种显示样式显示不同的界面。显示样式可包括使用显示屏中摄像头所在的挖孔区显示图像的样式、不使用显示屏中摄像头所在的挖孔区显示图像的样式。
电子设备接收用户在第一界面的第一操作。该第一操作触发电子设备的焦点窗口由第一界面切换为第二界面。响应于该第一操作,电子设备的应用进程向电子设备的系统服务指示第二界面的第二显示样式。系统服务将当前焦点窗口的样式参数更新为第二显示样式的样式参数,并通知系统UI进程刷新当前焦点窗口的样式参数。进一步地,系统UI进程刷新当前焦点窗口的样式参数,并绘制第二显示样式对应的目标视图。电子设备的SurfaceFlinger进程根据目标视图渲染并显示第二界面。
本申请中,在调整界面的显示样式的情况下,电子设备的上层应用进程通过系统服务与负责管理用户界面系统UI进程进行通信,可以降低进程之间耦合的复杂程度。此外,电子设备利用系统UI对第二显示样式对应的目标视图进行绘制,可省略SurfaceFlinger进程加载第二显示样式的配置资源的步骤,电子设备的内存中也可不再缓存多种显示样式的配置资源。如此,可以减少电子设备缓存各种显示样式的配置资源,降低电子设备内存的占用。
在第一方面的一种可能的实现方式中,显示屏为瀑布屏,显示样式包括:使用挖孔区显示图像、且使用显示屏中瀑布区显示图像的样式。使用挖孔区显示图像、不使用瀑布区显示图像的样式。不使用挖孔区显示图像、使用瀑布区显示图像的样式。不使用挖孔区显示图像、且不使用瀑布区显示图像的样式。通过瀑布屏的多种显示样式,用户可以根据自身喜好进行选择,提高用户体验。
在第一方面的另一种可能的实现方式中,电子设备的操作系统中包括屏幕装饰图层,屏幕装饰图层对应显示屏的整个屏幕。上述绘制第二显示样式对应的目标视图可以包括:系统UI进程在屏幕装饰图层中绘制第二显示样式,得到目标视图。通过屏幕装饰图层,可以减少显示样式更改过程中所使用的图层数量,提高显示样式更改的效率。
在第一方面的另一种可能的实现方式中,电子设备的SurfaceFlinger进程根据目标视图渲染并显示第二界面,包括:在启用屏幕装饰图层的情况下, Surface Flinger进程通过预设图像处理单元根据目标视图渲染所述第二界面。
通过这种方式,在调整手机界面的显示样式时,可以通过低功耗通道进行手机界面的渲染,降低显示样式调整过程中手机的功耗,提高手机性能。
在第一方面的另一种可能的实现方式中,第一界面是用于设置电子设备的显示样式的界面。或者,第一界面和第二界面是不同应用的界面。或者,第一界面和第二界面是同一应用的不同界面。这样,用户可以根据喜好对手机系统或应用的显示样式进行调整,满足用户对于手机系统或应用的界面的个性化设置需求,提高用户体验。
在第一方面的另一种可能的实现方式中,系统服务包括显示扩展策略对象DisplayPolicyEx和电话窗口管理对象PhoneWindowManager。系统服务将当前焦点窗口的样式参数更新为第二显示样式的样式参数,并通知系统UI进程刷新当前焦点窗口的样式参数,包括:系统服务利用DisplayPolicyEx将当前焦点窗口的样式参数更新为第二显示样式的样式参数,并通过PhoneWindowManager通知系统UI进程刷新当前焦点窗口的样式参数。通过DisplayPolicyEx和PhoneWindowManager,系统服务可以通知系统UI进程对当前焦点窗口的样式参数进行刷新,使系统UI进程获取当前焦点状态最新的样式参数。
在第一方面的另一种可能的实现方式中,系统UI进程包括状态栏服务IStatusBarService和屏幕装饰对象ScreenDecorations。系统UI进程刷新当前焦点窗口的样式参数,并绘制第二显示样式对应的目标视图,包括:系统UI进程通过IStatusBarService刷新当前焦点窗口的样式参数,并利用ScreenDecorations绘制第二显示样式对应的目标视图。通过这种方式,显示样式的调整流程可通过屏幕装饰区的调整流程实现。
在第一方面的另一种可能的实现方式中,电子设备的应用进程向电子设备的系统服务指示所述第二显示样式,包括:应用进程通过binder机制向系统服务指示第二显示样式。通过这种方式,应用进程可实现与系统服务之间的跨进程通信。
第二方面,本申请提供一种电子设备,包括一个或多个处理器,处理器和存储器耦合,存储器存储有程序指令,当存储器存储的程序指令被处理器执行时使得电子设备执行如第一方面及其任一种可能的实现方式所述的方法。
第三方面,本申请提供一种计算机可读存储介质,包括计算机指令;当计算机指令在电子设备上运行时,使得电子设备执行如第一方面及其任一种可能的实现方式所述的方法。
第四方面,本申请提供一种包含程序指令的计算机程序产品,当其在计算机上运行时,使得计算机可以执行上述第一方面及其任一种可能的实现方式所述的方法。
附图说明
图1为本申请实施例提供的多种显示屏的顶部示意图;
图2为本申请实施例提供的挖孔屏对应的显示样式的示意图;
图3为本申请实施例提供的瀑布屏对应的显示样式的示意图;
图4为本申请实施例提供的设置显示样式的界面示意图;
图5为本申请实施例提供的具有不同显示样式的应用的界面示意图;
图6为本申请实施例提供的相同应用不同显示样式的界面示意图;
图7为本申请实施例提供的常规技术中的显示样式调整过程的示意图;
图8为本申请实施例提供的常规技术中的不同显示样式的圆角资源的示意图;
图9为本申请实施例提供的一种电子设备示例的结构示意图;
图10为本申请实施例提供的一种显示方法的流程图;
图11为本申请实施例提供的屏幕装饰图层以及常规技术中的图层的示意图;
图12为本申请实施例提供的显示方法中各个进程之间交互的类图。
具体实施方式
以下将参考附图详细说明本申请的各种示例性实施例、特征和方面。附图中相同的附图标记表示功能相同或相似的元件。尽管在附图中示出了实施例的各种方面,但是除非特别指出,不必按比例绘制附图。
在这里专用的词“示例性”意为“用作例子、实施例或说明性”。这里作为“示例性”所说明的任何实施例不必解释为优于或好于其它实施例。
本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中术语“至少一种”表示多种中的任意一种或多种中的至少两种的任意组合,例如,包括A、B、C中的至少一种,可以表示包括从A、B和C构成的集合中选择的任意一个或多个元素。
另外,为了更好地说明本申请,在下文的具体实施方式中给出了众多的具体细节。本领域技术人员应当理解,没有某些具体细节,本申请同样可以实施。在一些实例中,对于本领域技术人员熟知的方法、手段、元件和电路未作详细描述,以便于凸显本申请的主旨。
本申请实施例提供了一种显示方法,该方法可以应用于电子设备中。该电子设备配置有显示屏。该显示屏可以为水滴屏、挖孔屏、刘海屏中的任一种。可以理解的是,显示屏以顶部的屏幕样式作为区分可以包括水滴屏、挖孔屏和刘海屏。对于显示屏的曲直、可折叠与否、圆直角的任一种屏幕样式可与水滴屏、挖孔屏和刘海屏中任一种屏幕样式相互叠加。即水滴屏、挖孔屏、刘海屏中的任一种显示屏可以是平面屏、曲面屏、超曲面屏、折叠屏、圆角屏或直角屏。以电子设备是手机为例,手机的水滴屏、挖孔屏、刘海屏的顶部屏幕样式如图1所示。其中,水滴屏、挖孔屏、刘海屏均具有直角和圆角两种不同的屏幕样式。
相应地,电子设备的显示屏可用于以多种显示样式显示不同的界面。该显示样式可以包括使用显示屏中摄像头所在的挖孔区显示图像的样式、不使用显示屏中摄像头所在的挖孔区显示图像的样式。挖孔区可以是显示屏的顶部区域。举例来说,以电子设备是手机,显示屏是挖孔屏为例。挖孔屏可以以如图2所示的显示样式1和显示样式2显示不同的界面。其中,显示样式1是使用挖孔区显示图像的样式,显示样式2是不使用挖孔区显示图像的样式。
再例如,显示屏为瀑布屏。瀑布屏可以是超曲面屏,瀑布屏的屏幕弯曲程度相比于曲面屏而言要更大。瀑布屏的显示样式可以包括:使用挖孔区显示图像、且使用显示屏中瀑布区显示图像的样式。使用挖孔区显示图像、不使用瀑布区显示图像的样式。不使用挖孔区显示图像、使用瀑布区显示图像的样式。不使用挖孔区显示图像、且不使用瀑布区显示图像的样式。瀑布区可以是瀑布屏侧边弯曲程度最大的侧边区域。通过瀑布屏的多种显示样式,用户可以根据自身喜好进行选择,提高用户体验。
其中,使用挖孔区显示图像、且使用瀑布区显示图像的样式可以图2中的显示样式1所示。不使用挖孔区显示图像、使用瀑布区显示图像的样式可以图2中的显示样式2所示。不使用挖孔区显示图像、且不使用瀑布区显示图像的样式可以如图3中的显示样式3所示。使用挖孔区显示图像、且不使用瀑布区显示图像的样式可以如图3中的显示样式4所示。
可以理解的是,上述图2和图3中展示的显示样式均为圆角样式。一些示例中,显示样式也可以设置为直角样式、多角样式等。本申请实施例中的显示样式可以根据实际需求进行设置,本申请实施例不对显示样式进行限制。
其中,电子设备响应于用户操作,可以调整显示屏界面的显示样式,如将图2中的显示样式2调整为图3中的显示样式3。
举例来说,以电子设备是手机为例,手机可以根据用户选择“屏幕显示”选项的用户操作,向用户展示如图4所示的界面。界面中展示有配置挖孔区的默认样式,以及隐藏挖孔区的显示样式。用户可以根据需求选择界面的显示样式。其中,默认样式可以是手机界面默认的显示样式。手机使用默认样式的情况下,手机可以为用户提供尽可能大的屏幕空间。手机使用隐藏顶部区域(即挖孔区)的显示样式的情况下,手机界面的顶部不作为显示区域。
再例如,以电子设备为手机,用户操作为在不同应用之间切换的切换操作为例。不同应用对应的显示样式可以不同。如图5所示,手机可以根据用户的切换操作,从时钟应用的界面切换为通讯录应用的界面。时钟应用的界面是使用挖空区和瀑布区显示图像的显示样式,通讯录应用的界面是不使用挖空区、使用瀑布区显示图像的显示样式。可以理解的是,图中所示的通讯录应用界面中,摄像头所在的顶部区域设置为黑色,是为了表示通讯录界面不使用顶部区域对应的挖孔区,并非表示该挖孔区显示为黑色。
再例如,以电子设备为手机,用户操作为在同一应用的不同界面间切换的切换操作为例。不同界面对应的显示样式可以不同。如图6所示,手机可以根据用户的切换操作,从时钟应用的界面1切换为时钟应用的界面2。时钟应用的界面1是使用挖空区和瀑布区显示图像的显示样式,时钟应用的界面2是不使用挖空区和瀑布区显示图像的显示样式。可以理解的是,图中所示的时钟应用的界面2中,摄像头所在的顶部区域以及显示屏的侧边区域设置为黑色,是为了表示界面2不使用顶部区域对应的挖孔区以及侧边区域对应的瀑布区,并非表示该挖孔区和瀑布区显示为黑色。
示例性的,本申请实施例中显示屏界面的显示样式除上述挖空区和瀑布区的配置方案之外,还可以包括圆角区、底部区域或界面中其他的任意显示区域中一种或多种组合的配置方案。本申请实施例不对显示样式进行限制。
为了便于理解,本申请实施例这里介绍在常规技术中,电子设备调整显示屏的界面的显示样式的具体过程。
在常规技术中,电子设备以第一显示样式显示第一界面。在电子设备调整显示屏的界面的显示样式的情况下,电子设备的应用进程接收用户操作,向系统服务发送调整显示样式的触发事件。系统服务(SystemServer)接收调整显示样式的触发事件,对该触发事件进行响应。响应于该触发事件,电子设备通过系统服务调用底层业务进程。底层SurfaceFlinger进程加载电子设备中预存的显示样式的配置资源,如直角资源、圆角资源、挖孔资源等多种图像的配置资源,合成具有第二显示样式的视图。该第二显示样式可以是与第一显示样式不同的任意一种显示样式。底层业务进程再根据第二显示样式的视图对界面进行图像渲染,得到第二显示样式的界面。
举例来说,以电子设备是手机为例,手机将以第一显示样式显示的第一界面调整为以第二显示样式显示的第二界面。如图7所示,手机的应用进程可以接收用户操作,向手机系统服务中的窗口管理服务(Window Manager Service,WMS)发送显示样式更改的触发事件。WMS响应于该触发事件,通过软件架构层提供的接口通知SurfaceFlinger进程界面的显示样式发生改变。SurfaceFlinger进程通过预存的显示样式的配置资源加载第二显示样式的配置资源,并根据加载的第二显示样式的配置资源渲染第二界面。SurfaceFlinger进程渲染界面之后,手机可以对具有第二显示样式的第二界面进行展示。
这样,电子设备可以向用户展示具有第二样式的第二界面,如展示圆角样式、瀑布样式、刘海样式的第二界面。其中,WMS是用于窗口管理的上层服务进程。SurfaceFlinger是用于管理界面合成的底层服务进程。
示例性的,以圆角资源为例,电子设备中预先存储的圆角资源如图8所示。电子设备中预先存储具有不同显示样式的圆角资源(如圆角资源1-圆角资源4)。此外,为了适配不同场景对界面分辨率的需求,电子设备中还要存储不同分辨率的相同显示样式的圆角资源。例如,720像素单位的圆角资源1(圆角资源1-720)、圆角资源2(圆角资源2-720)、圆角资源3(圆角资源3-720)和圆角资源4(圆角资源4-720),以及1440像素单位的圆角资源1(圆角资源1-1440)、圆角资源2(圆角资源2-1440)、圆角资源3(圆角资源3-1440)和圆角资源4(圆角资源4-1440)。在实际运用中,配置资源和前景视图(包括界面内容的视图)的颜色分布尽量保持一致,减少因颜色差异引起用户视觉不适。电子设备中还要存储多种颜色的配置资源(图中未示出)。可见,预存的多种显示样式的配置资源,会占用电子设备的大量内存。
此外,电子设备中除了在调整界面的显示样式时会通过SurfaceFlinger进程渲染界面之外,电子设备中还存在其他大量的渲染任务,如界面切换、网页加载、游戏运行等,均会涉及SurfaceFlinger渲染界面。与此同时,相比于调整显示样式而言,其他渲染任务对于渲染的要求更高,如图像清晰度、图像刷新率等方面均会有更高的要求。可见,将调整显示样式作为常规渲染任务通过SurfaceFlinger执行渲染,会加重电子设备的负担,渲染功率较高。
在上述常规技术提供的显示样式的更改方案中,存在以下几点问题:
(1)电子设备内缓存多种显示样式的配置资源,内存占用过高。
(2)电子设备界面的显示样式发生改变时,电子设备中的上层应用进程通过WMS与底层服务进程SurfaceFlinger进程通信,进程之间耦合复杂程度高。
(3)电子设备对界面进行图像渲染,功耗较高。
本申请实施例提供的显示方案,可以至少解决上述问题中的一项或多项。本申请实施例提供中,电子设备接收用户在第一界面的第一操作。该第一操作触发电子设备的焦点窗口由第一界面切换为第二界面。响应于该第一操作,电子设备的应用进程向电子设备的系统服务指示第二界面的第二显示样式。系统服务将当前焦点窗口的样式参数更新为第二显示样式的样式参数,并通知系统UI进程刷新当前焦点窗口的样式参数。进一步地,系统UI进程刷新当前焦点窗口的样式参数,并绘制第二显示样式对应的目标视图。然后,电子设备的SurfaceFlinger进程根据目标视图渲染第二界面,使电子设备以第二显示样式显示第二界面。
这里,焦点窗口可以是电子设备展示在最前方用户可直接操作的窗口。在电子设备显示第一界面的情况下,焦点窗口可以对应于第一界面。在电子设备显示第二界面的情况下,焦点窗口可以对应于第二界面。系统服务可用于管理手机中的一些服务。例如,系统服务可用于管理手机窗口、服务通知、振动等手机系统服务。系统UI进程用于用户界面管理。例如,SystemUI进程用于管理手机的状态栏、通知栏、导航栏等用户界面项目。系统UI进程是上层系统级进程。
本申请实施例中,在调整界面的显示样式的情况下,电子设备的上层应用进程通过系统服务与负责管理用户界面系统UI进程进行通信,可以降低进程之间耦合的复杂程度。此外,电子设备利用系统UI对第二显示样式对应的目标视图进行绘制,可省略调用底层服务进程(如SurfaceFlinger进程)加载第二显示样式的配置资源的步骤,电子设备的内存中也可不再缓存多种显示样式的配置资源。如此,可以减少电子设备缓存各种显示样式的配置资源,降低电子设备内存的占用。
示例性的,本申请实施例中所述的电子设备可以是手机、平板电脑、桌面型、膝上型、手持计算机、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本,以及可视电话、个人数字助理(personal digital assistant,PDA)、增强现实(augmented reality,AR)\虚拟现实(virtual reality,VR)设备、媒体播放器、电视机等设备。本申请实施例对电子设备的具体形态不作特殊限制。
本申请实施例中以电子设备是手机100为例,介绍电子设备的硬件结构。如图9所示,手机100可以包括处理器110,内部存储器121,通用串行总线(universal serial bus,USB)接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,传感器模块180,摄像头193,以及显示屏194等。
可以理解的是,本申请实施例示意的结构并不构成对手机100的具体限定。在本申请另一些实施例中,手机100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
处理器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器可以为高速缓冲存储器。该存储器可以保存处理器110用过或使用频率较高的指令或数据。如果处理器110需要使用该指令或数据,可从该存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。
在一些实施例中,处理器110可以包括一个或多个接口。接口可以包括集成电路(inter-integrated circuit,I2C)接口,集成电路内置音频(inter-integrated circuitsound,I2S)接口,脉冲编码调制(pulse code modulation,PCM)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,UART)接口,移动产业处理器接口(mobile industry processor interface,MIPI),通用输入输出(general-purposeinput/output,GPIO)接口,用户标识模块(subscriber identity module,SIM)接口,和/或通用串行总线(universal serial bus,USB)接口等。处理器110可以通过以上至少一种接口连接触摸传感器、音频模块、无线通信模块、显示器、摄像头等模块。
可以理解的是,本申请实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对手机100的结构限定。在本申请另一些实施例中,手机100也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
USB接头130是一种符合USB标准规范的接口,可以用于连接手机100和外围设备,具体可以是Mini USB接头,Micro USB接头,USB Type C接头等。USB接头130可以用于连接充电器,实现充电器为该手机100充电,也可以用于连接其他电子设备,实现手机100与其他电子设备之间传输数据。也可以用于连接耳机,通过耳机输出电子设备中存储的音频。该接头还可以用于连接其他电子设备,例如VR设备等。在一些实施例中,通用串行总线的标准规范可以为USB1.x、USB2.0、USB3.x和USB4。
充电管理模块140用于接收充电器的充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。在一些有线充电的实施例中,充电管理模块140可以通过USB接口130接收有线充电器的充电输入。在一些无线充电的实施例中,充电管理模块140可以通过手机100的无线充电线圈接收无线充电输入。充电管理模块140为电池142充电的同时,还可以通过电源管理模块141为电子设备供电。
电源管理模块141用于连接电池142,充电管理模块140与处理器110。电源管理模块141接收电池142和/或充电管理模块140的输入,为处理器110,内部存储器121,显示屏194,摄像头193,和无线通信模块160等供电。电源管理模块141还可以用于监测电池容量,电池循环次数,电池健康状态(漏电,阻抗)等参数。在其他一些实施例中,电源管理模块141也可以设置于处理器110中。在另一些实施例中,电源管理模块141和充电管理模块140也可以设置于同一个器件中。
手机100的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
移动通信模块150可以提供应用在手机100上的包括2G/3G/4G/5G等无线通信的解决方案。
无线通信模块160可以提供应用在手机100上的包括无线局域网(wireless localarea networks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络),蓝牙(bluetooth,BT),蓝牙低功耗(bluetooth low energy,BLE),超宽带(ultra wide band,UWB),全球导航卫星系统(global navigation satellite system,GNSS),调频(frequency modulation,FM),近距离无线通信技术(near field communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。
显示屏194用于显示图像,视频等。显示屏194包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD),有机发光二极管(organic light-emittingdiode,OLED),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrixorganic light emitting diode的,AMOLED),柔性发光二极管(flex light-emittingdiode,FLED),MiniLED,MicrOLED,Micro-OLED,量子点发光二极管(quantum dot lightemitting diodes,QLED)等。
手机100可以通过摄像头193,ISP,视频编解码器,GPU,显示屏194以及应用处理器AP、神经网络处理器NPU等实现摄像功能。
摄像头193可用于采集拍摄对象的彩色图像数据以及深度数据。ISP 可用于处理摄像头193采集的彩色图像数据。例如,拍照时,打开快门,光线通过镜头被传递到摄像头感光元件上,光信号转换为电信号,摄像头感光元件将该电信号传递给ISP处理,转化为肉眼可见的图像。ISP还可以对图像的噪点,亮度,颜色进行算法优化。ISP还可以对拍摄场景的曝光,色温等参数优化。在一些实施例中,ISP可以设置在摄像头193中。
在另一些实施例中,摄像头193还可以由两个或更多个摄像头构成。这两个或更多个摄像头可包括彩色摄像头,彩色摄像头可用于采集被拍摄物体的彩色图像数据。这两个或更多个摄像头可采用立体视觉(stereo vision)技术来采集被拍摄物体的深度数据。立体视觉技术是基于人眼视差的原理,在自然光源下,透过两个或两个以上的摄像头从不同的角度对同一物体拍摄影像,再进行三角测量法等运算来得到手机100与被拍摄物之间的距离信息,即深度信息。
在一些实施例中,手机100可以包括1个或多个摄像头193。具体的,手机100可以包括1个前置摄像头193以及1个后置摄像头193。其中,前置摄像头193通常可用于采集面对显示屏194的拍摄者自己的彩色图像数据以及深度数据,后置摄像头可用于采集拍摄者所面对的拍摄对象(如人物、风景等)的彩色图像数据以及深度数据。
内部存储器121可以用于存储计算机可执行程序代码,该可执行程序代码包括指令。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储手机100使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,UFS)等。处理器110通过运行存储在内部存储器121的指令,和/或存储在设置于处理器中的存储器的指令,执行手机100的各种功能方法或数据处理。
以下实施例中的显示方法均可以在具备上述硬件结构的电子设备中实现。以下实施例中,以电子设备是图9所示的手机100为例,介绍本申请实施例的方法。
图10为本申请实施例提供的一种显示方法的流程图,如图10所示,该显示方法包括:
S21,手机以第一显示样式显示第一界面。
本申请实施例中,第一显示样式可以是上述多种显示样式中的任一种显示样式。手机当前焦点窗口可以对应于第一界面。第一界面可以是电子设备当前展示的界面。
S22,手机接收用户在第一界面的第一操作。
本申请实施例中,第一操作用于触发手机的焦点窗口由第一界面切换为第二界面。第二界面以第二显示样式显示。第二显示样式可以是上述多种显示样式中不同于第一显示样式的任一种显示样式。
示例性的,用户的第一操作可以是触控手机屏幕、点击手机按键或者执行预设手势(如挥手手势)等的用户操作。用户可以通过第一操作更改手机当前显示的界面。举例来说,用户可以通过选择手机界面的显示样式的选择操作,触发手机更改手机界面的显示样式。再例如,用户可以通过切换不同应用的切换操作,触发手机将第一应用对应的第一界面切换为第二应用对应的第二界面。再例如,用户可以通过在同一个应用中的不同界面切换的切换操作,触发手机将该应用的第一界面切换为第二界面。
示例性的,第一界面可以是用于设置手机的显示样式的界面。或者,第一界面和第二界面可以是不同应用的界面,或者,第一界面和第二界面是同一应用的不同界面。
在第一界面是用于设置显示样式的界面的情况下,手机可以接收用户在设置显示样式的界面中的上述选择操作,将手机系统或任意一个应用的显示样式调整为第二显示样式。调整后手机的不同界面均可以是第二显示样式,或者,手机中该应用的不同界面均可以是第二显示样式。
通过这种方式,用户可以根据喜好对手机系统或应用的显示样式进行调整,满足用户对于手机系统或应用的界面的个性化设置需求,提高用户体验。
在第一界面和第二界面是不同应用的界面的情况下,手机可以接收用户切换不同应用的切换操作,将手机界面由第一应用对应的第一界面切换为第二应用对应的第二界面。第一界面与第二界面的显示样式不同。如此,手机可为用户提供不同应用的不同显示样式的界面。
在第一界面和第二界面是同一应用的不同界面的情况下,手机可以接收用户切换同一应用不同界面的切换操作,将手机该应用的界面由第一界面切换为第二界面。第一界面和第二界面的显示样式不同。如此,手机可为用户提供相同应用中具有不同显示样式的界面。
S23,响应于第一操作,手机的应用进程向手机的系统服务指示第二显示样式。
本申请实施例中,手机中的应用进程在检测到用户在第一界面的第一操作之后,可以向手机的系统服务指示第二显示样式。示例性的,响应于第一操作,手机的应用进程可以生成目标触发事件。目标触发事件用于指示将手机的焦点窗口的显示样式更改为第二显示样式。例如,目标触发事件用于指示将显示样式更改为第二显示样式。应用进程可以向系统服务通知该目标触发事件,通过目标触发事件向手机的系统服务指示第二显示样式。
在一些实施例中,应用进程与系统服务的通信属于跨进程通信。应用进程可以通过binder机制向系统服务指示第二显示样式。如此,应用进程可实现与系统服务间的跨进程通信。
S24,系统服务将当前焦点窗口的样式参数更新为第二显示样式的样式参数,并通知系统用户界面UI进程刷新当前焦点窗口的样式参数。
本申请实施例中,样式参数可以用于指示当前焦点窗口的显示样式。例如,当前焦点窗口的样式参数可以通过预设标识(如mode)表示。该样式参数可具有多个参数值。一种显示样式可以对应样式参数的一个参数值。例如,在样式参数为第一参数值的情况下,第一参数值可以指示使用挖孔区的显示样式。再例如,在样式参数为第二参数值的情况下,第二参数值可以指示瀑布区的显示样式。
这里,手机中的系统服务收到应用进程通知的目标触发事件之后,可以重新布局当前焦点窗口。具体地,系统服务将当前焦点窗口的样式参数更新为第二显示样式的样式参数,并通知手机中的系统UI进程刷新当前焦点窗口的样式参数。
在一些实现方式中,系统服务包括显示扩展策略对象(DisplayPolicyEx)和电话窗口管理对象(PhoneWindowManager)。相应地,本步骤可以包括:
系统服务利用显示扩展策略对象将当前焦点窗口的样式参数更新为第二显示样式的样式参数,并通过电话窗口管理对象通知系统UI进程刷新当前焦点窗口的样式参数。
其中,显示扩展策略对象可用于窗口属性的调整。窗口属性可以包括当前焦点窗口的显示样式。在手机调整当前焦点窗口的显示样式的情况下,手机中的系统服务可以通过显示扩展策略对象将当前焦点窗口的样式参数更新为第二显示样式的样式参数,实现当前焦点窗口显示样式的更新。
其中,电话窗口管理对象可用于窗口的管理。例如,电话窗口管理对象可用于管理窗口的排列顺序、位置、大小等。相应地,电话窗口管理对象也可用于管理焦点窗口的显示样式。在显示扩展策略对象更新当前焦点窗口的样式参数之后,电话窗口管理对象可以通知系统UI进程对当前焦点窗口的样式参数进行刷新,使系统UI进程获取当前焦点状态最新的样式参数(即第二显示样式的样式参数)。
S25,系统UI进程刷新当前焦点窗口的样式参数,并绘制第二显示样式对应的目标视图。
本申请实施例中,手机中的系统UI进程收到系统服务的通知之后,可以刷新当前焦点窗口的样式参数,获取第二显示样式的样式参数。进一步地,系统UI进程可以根据第二显示样式的绘制信息,在当前焦点窗口的视图中绘制第二显示样式,得到目标视图。其中,第二显示样式的绘制信息可以包括绘制起点、绘制线条(如绘制直线或曲线)、绘制路径、外边距、圆弧半径、角度数、填充颜色中的一种或多种。
在一些实现方式中,系统UI进程可以包括状态栏服务IStatusBarService和屏幕装饰对象ScreenDecorations。相应地,本步骤可以包括:
系统UI进程通过IStatusBarService刷新当前焦点窗口的样式参数,并利用ScreenDecorations绘制第二显示样式对应的目标视图。
这里,状态栏服务是状态栏的管理服务。例如,状态栏服务可管理手机状态栏中多个项目,如管理移动热点、蓝牙、闹钟、定位等多个项目。在显示样式发生改变的情况下,系统UI进程可以通过状态栏服务刷新当前焦点窗口的样式参数,将当前焦点窗口的样式参数更新为第二显示样式的样式参数。如此,手机界面的显示样式可作为手机状态栏中的一个项目,第二显示样式的样式参数可通过系统服务中的电话窗口管理对象传递至状态栏所对应的状态栏服务。
这里,屏幕装饰对象用于调整屏幕装饰区的视图。屏幕装饰区可以包括状态栏和导航栏所在的界面区域。在焦点窗口的显示样式作为状态栏中的一个项目的情况下,系统UI进程可以通过屏幕装饰对象按照第二显示样式调整当前焦点窗口的视图,得到第二显示样式对应的目标视图。通过这种方式,显示样式的调整流程可通过屏幕装饰区的调整流程实现。
在一些实现方式中,手机中的系统UI进程在绘制第二显示样式的目标视图之后,可以通知手机中的SurfaceFlinger进程渲染界面。一些实现方式中,在绘制第二显示样式的目标视图之后,系统UI进程可以将第二显示样式的目标视图缓存在预设的内存空间中,等待SurfaceFlinger进程读取目标视图。
S26,手机的SurfaceFlinger进程根据目标视图渲染并显示第二界面。
本申请实施例中,SurfaceFlinger进程可以将第二界面的多个视图(包括目标视图)合成为一个主视图,并将合成的主视图渲染在手机的显示屏幕上,得到具有第二显示样式的第二界面。
这里,手机的一个界面可以包括多个视图。例如,界面可以包括绘制有显示样式的目标视图以及包括界面内容的前景视图。一些实现方式中,SurfaceFlinger进程可以周期性读取预设的内存空间中缓存的第二界面的多个视图。一些实现方式中,SurfaceFlinger进程可以在接收到系统UI进程的通知的情况下,在预设的内存空间中缓存读取第二界面的多个视图。SurfaceFlinger进程在读取第二界面的多个视图之后,可以将多个视图合成主视图,并将主视图渲染在手机的显示屏上。这样,手机可以显示具有第二显示样式的第二界面。
本申请实施例提供的显示方法,在手机更改界面的显示样式时,响应于用户的第一操作,手机中的应用进程向系统服务指示第二界面的第二显示样式。进一步地,系统服务与软件架构层中的系统UI进程进行通信,不再与底层的SurfaceFlinger进程直接通信。这样,可以降低显示样式更改过程中进程之间耦合的复杂程度。手机中的系统UI进程指示的第二显示样式之后,绘制具有第二显示样式的目标视图。然后,手机再通过SurfaceFlinger进程根据目标视图渲染第二界面。这样,手机通过系统UI进程绘制第二显示样式的目标视图,可省略调用底层服务进程(SurfaceFlinger进程)加载第二显示样式的配置资源的步骤。手机的内存中也可不再缓存多种显示样式的配置资源。如此,可以减少手机缓存各种显示样式的配置资源,降低手机内存的占用。
此外,本申请实施例提供的方法,手机可以在收到用户操作的情况下即对手机界面的显示样式进行调整,可实现动态调整界面的显示样式。与常规技术中需要在重启手机或重启应用时触发显示样式调整流程的方案相比,用户可以根据自身喜好随意更改手机界面的显示样式,提高用户体验。
在本申请实施例中,手机可以对系统的界面进行更改,更改后手机中各个应用的界面具有相同的显示样式。在一些实现方式中,手机还可以针对任意一个应用的界面进行更改,更改后该应用界面的显示样式可以与系统界面的显示样式不同,或者,该应用界面的显示样式可以与其他应用界面的显示样式不同。在一些实现方式中,手机中同一个应用的不同界面的显示样式也可以不同。手机中任一种焦点窗口的显示样式发生改变的情况,均可以触发手机调整显示样式的流程。如,切换窗口、启动手机桌面、更改侧边栏功能、添加窗口、启动输入法、设置单手模式中的任一种焦点窗口的显示样式发生改变的情况,均可以触发手机调整显示样式的流程。
通过本申请实施例提供的方法,用户可以根据自身需求对系统界面或应用界面的显示样式进行个性化设置,满足用户对于显示样式的多样化需求。
本申请实施例的上述S25中,手机中的系统UI刷新当前焦点窗口的样式参数,并绘制第二显示样式对应的目标视图。如此,在调整手机当前焦点窗口的显示样式的情况下,手机中的SurfaceFlinger进程可省略加载显示样式的配置资源的过程,提高手机调整显示样式的效率。为了进一步提高显示样式调整的效率,在本申请实施例的一种可能的实现方式中,上述S25可以包括S251:
S251,系统UI进程在屏幕装饰图层中绘制第二显示样式,得到目标视图。
本申请实施例中,电子设备的操作系统中可包括屏幕装饰图层。该屏幕装饰图层对应显示屏的整个屏幕。系统UI进程可以在该屏幕装饰图层中绘制第二显示样式。屏幕装饰图层可以是为当前焦点窗口的显示样式提供的图层。如图11所示,该屏幕装饰图层对应于手机显示屏的整个屏幕,即该屏幕装饰图层的大小等于手机显示屏的大小。系统UI进程通过屏幕装饰图层即可实现第二显示样式的绘制,即,系统UI进程通过一个图层实现第二显示样式的绘制。相比于常规技术方案而言,本申请实施例提供的方法可以减少显示样式更改过程中所使用的图层数量,提高显示样式更改的效率。
为了便于理解,图11中还提供一种常规技术中更改界面的显示样式过程中所使用的图层示意图。如图所示,常规技术中,手机在调整当前焦点窗口的显示样式的情况下,不同的界面区域对应不同的图层。如界面的顶部区域对应一个顶部图层,界面的底部区域对应一个底部图层。也就是说,在第二显示样式对应于多个界面区域的情况下,第二显示样式的目标视图需通过多个图层实现。
可见,本申请实施例提供的方法中,绘制第二显示样式的目标视图仅通过一个的屏幕装饰图层即可实现,从而降低了界面更改显示样式的复杂程度,提高显示样式调整的效率。
在上文中提到,系统UI进程可以包括状态栏服务IStatusBarService和屏幕装饰对象ScreenDecorations。系统UI进程通过IStatusBarService刷新当前焦点窗口的样式参数,并利用ScreenDecorations绘制第二显示样式对应的目标视图。在一些实现方式中,系统UI在利用屏幕装饰对象绘制第二显示样式对应的目标视图时,可以通过ScreenDecorations在屏幕装饰图层中绘制第二显示样式,即上述S251可以包括S2511:
S2511:系统UI进程通过ScreenDecorations在屏幕装饰图层中绘制第二显示样式,得到目标视图。
如此,系统UI进程可以通过ScreenDecorations按照第二显示样式在屏幕装饰图层中进行绘制,得到具有第二显示样式的目标视图。
为了进一步降低手机更改界面的显示样式过程中的功耗,在渲染手机应用的界面时,手机可以通过低功耗通道对手机的界面进行渲染,以降低更改显示样式过程中的功耗。具体地,上述S26可以包括S261:
S261,在启用屏幕装饰图层的情况下,SurfaceFlinger进程通过预设图像处理单元根据目标视图渲染第二界面。
在本申请实施例中,预设图像处理单元可以用于低功率渲染。预设图像处理单元可以是GPU承载的虚拟模块。一些实现方式中,预设图像处理单元可专门用于界面样式的渲染。如此,在渲染第二界面的情况下,SurfaceFlinger进程可以通过专门用于界面样式渲染的预设图像处理单元进行渲染,降低显示样式调整过程中的功耗。一些实现方式中,还可以在手机中设置专门用于渲染界面样式的GPU。在渲染第二界面的情况下,SurfaceFlinger进程可以通过该GPU承载的虚拟模块进行渲染,降低显示样式调整过程中的功耗。
举例来说,手机中的SurfaceFlinger进程可以判断目标视图中是否携带有屏幕装饰图层的图层标识。若目标视图中携带有屏幕装饰图层的图层标识,SurfaceFlinger进程进一步通过预设图像处理单元渲染第二界面。
通过这种方式,在调整手机界面的显示样式时,手机可以通过目标视图所使用的图层区分调整显示样式的渲染任务可以与常规渲染任务,充分发挥屏幕装饰图层的作用。在启用屏幕装饰图层的情况下,手机通过不同的图像处理单元执行调整显示样式的渲染任务和常规渲染任务,减少渲染任务的密集程度。一些实现方式中,还可以降低显示样式调整的渲染任务的渲染要求,如降低渲染的图像清晰度等。如此,在调整手机界面的显示样式时,可以通过低功耗通道进行手机界面的渲染,降低显示样式调整过程中手机的功耗,提高手机性能。
为了更好地对本申请实施例提供的显示方案进行说明,下面通过一示例说明各个进程之间的交互过程。如图12所示,各个进程之间的交互过程由类图示出。类图可用于描述软件架构中各个进程之间的关联关系。
示例中,手机中的应用进程响应于用户在第一界面的第一操作,创建根视图对象(ViewRootImpl)。第一操作触发手机的焦点窗口由第一界面切换为的第二界面。其中,第一界面以第一显示样式显示,第二界面以第二显示样式显示。第一显示样式与第二显示样式不同。ViewRootImpl可以用于传递焦点窗口的显示样式由第一显示样式切换为第二显示样式的目标触发事件。
例如,在用户通过触控操作将第一应用的第一界面切换为第二应用的第二界面的情况下,应用进程可以生成ViewRootImpl。应用进程通过ViewRootImpl请求重新布局窗口,向系统服务通知焦点窗口的显示样式由第一显示样式切换为第二显示样式。
这里,根视图对象的类图中描述了与根视图对象通信的接口为窗口会话类(mWindowSession)中的窗口会话对象(IWindowSession)。根视图对象的类图中还描述有根视图对象调用的函数为窗口重新布局函数(relayoutWindow())。窗口重新布局函数用于请求重新布局窗口。窗口重新布局函数的函数变量为布局参数(params),布局参数的数据类型为整型(int)。这里的布局参数可以包括第二显示样式对应的样式参数。
进一步地,应用进程通过Binder通信机制调用系统服务(SystemServer)进程。系统服务通过窗口会话对象接收应用进程传递的第二显示样式对应的样式参数。
这里,窗口会话对象的类图中,描述了与窗口会话对象通信的服务类型(type)是服务类(mService)中的窗口管理服务(WindowManagerService)。窗口会话对象的类图中还描述有窗口会话对象调用的函数为重新布局函数(relayout())。重新布局函数用于重新布局当前焦点窗口。重新布局函数的函数变量同样为布局参数(params),布局参数的数据类型为整型。第二显示样式的样式参数通过布局参数从根视图对象传递至窗口会话对象。
进一步地,系统服务通过窗口会话对象进一步通知窗口管理服务。窗口管理服务通过重新布局函数请求窗口的重新布局。其中,重新布局函数的函数变量为上述布局参数(params),布局参数的数据类型为整型。这样,第二显示样式的样式参数通过布局参数从窗口会话对象传递至窗口管理服务。
然后,窗口管理服务调用显示策略对象(DisplayPolicy)。
这里,显示策略对象的类图描述其通信的对象是显示扩展策略对象类(mDisplayPolicyEx)中的显示扩展策略对象DisplayPolicyEx,以及调用的函数为窗口布局函数(layoutWindowLw())。
窗口布局函数的函数变量为窗口参数(win)。该窗口布局函数的返回值为空(void)。这里的窗口参数中可以包括第二显示样式对应的样式参数。
进一步地,显示策略对象通知显示扩展策略对象布局窗口。显示扩展策略对象调用窗口布局函数对焦点窗口进行布局。布局时,显示扩展策略对象将当前焦点窗口的样式参数更新为第二显示样式对应的样式参数。
这里,显示扩展策略对象的类图描述显示扩展策略对象调用的函数为窗口布局函数。窗口布局函数的函数变量为窗口参数(win)。该窗口参数中包括第二显示样式对应的样式参数。该窗口布局函数的返回值为空(void)。
进一步地,显示扩展策略对象调用电话窗口管理对象PhoneWindowManager。电话窗口管理对象向系统UI进程通知刷新当前焦点窗口的样式参数。
这里,电话窗口管理对象的类图描述了与电话窗口管理对象的交互服务为状态栏服务类(mStutsBarService)中的状态栏服务IStutsBarService。相应地,类图中还描述了电话窗口管理对象调用的函数为挖角模式通知函数(notifyCutoutModeState())和状态栏获取函数(getStatusBarService())。
其中,挖角模式通知函数用于通知刷新当前焦点窗口的样式参数。该函数的返回值为空。状态栏获取函数用于获取状态栏服务,该函数的返回值为状态栏服务。
进一步地,状态栏服务调用挖角状态更新函数(updateCutoutState())将当前焦点窗口的样式参数更新为第二显示样式对应的样式参数。
这里,状态栏服务的类图中描述了状态栏服务调用的函数为挖角状态更新函数。挖角状态更新函数的函数变量为整型的状态参数(mode),挖角状态更新函数的返回值为空。其中,状态参数可以包括第二显示样式对应的样式参数。
进一步地,系统UI进程中的状态栏服务通知屏幕装饰对象(ScreenDecorations)当前焦点窗口的样式参数发生改变。屏幕装饰对象在当前焦点窗口的样式参数发生改变的情况下,可以根据当前焦点窗口的样式参数,即第二显示样式对应的样式参数动态调整当前焦点窗口的视图。例如,屏幕装饰对象在屏幕装饰图层中绘制第二显示样式,得到目标视图。
这里,屏幕装饰对象的类图描述了屏幕装饰对象调用的函数为挖角状态改变回调函数(onCutoutModeChanged())和视图更新函数(updateViews())。挖角状态改变回调函数用于获取屏幕装饰对象传递的整型的状态参数(mode),该状态参数中可以包括第二显示样式对应的样式参数。挖角状态改变回调函数的函数变量为空。视图更新函数用于更新当前焦点窗口的视图,如在当前焦点窗口的视图中绘制第二显示样式,得到当前焦点窗口的目标视图。视图更新函数的返回为空。
系统UI进程在通过屏幕装饰对象得到当前焦点窗口的目标视图之后,SurfaceFlinger进程根据目标视图渲染第二界面(图中未示出)。SurfaceFlinger进程可以将渲染后具有第二显示样式的第二界面发送至显示屏。如此,手机可以向用户展示具有第二显示样式的第二界面。
通过本申请实施例提供的显示方法,可以减少手机内缓存的多种显示样式的配置资源,减少内存的占用。在更改界面的显示样式时,手机中的上层应用进程与上层服务进程(如系统服务)、上层系统应用进程(如系统UI进程)通信,再通过系统应用进程调用底层服务进程实现界面的显示样式更改。这种方式可以降低进程之间的耦合程度。
此外,手机在接收用户在第一界面的第一操作后即启动显示样式的更改流程,可实现显示样式的动态调整,提高用户体验。
本申请另一些实施例提供了一种电子设备,该电子设备包括:存储器和一个或多个处理器。该存储器与处理器耦合。其中,上述存储器中存储有计算机程序代码,该计算机程序代码包括计算机指令。当计算机指令被处理器执行时,电子设备可执行上述方法实施例中手机100执行的各个功能或者步骤。该电子设备的结构可以参考图9所示的手机100的结构。
本申请实施例还提供一种芯片系统,该芯片系统包括至少一个处理器和至少一个接口电路。处理器和接口电路可通过线路互联。例如,接口电路可用于从其它装置(例如电子设备的存储器)接收信号。又例如,接口电路可用于向其它装置(例如处理器)发送信号。示例性的,接口电路可读取存储器中存储的指令,并将该指令发送给处理器。当所述指令被处理器执行时,可使得电子设备执行上述实施例中的各个步骤。当然,该芯片系统还可以包含其他分立器件,本申请实施例对此不作具体限定。
本申请实施例还提供一种计算机可读存储介质,该计算机存储介质包括计算机指令,当所述计算机指令在上述电子设备上运行时,使得该电子设备执行上述方法实施例中手机执行的各个功能或者步骤。
本申请实施例还提供一种计算机程序产品,当所述计算机程序产品在计算机上运行时,使得所述计算机执行上述方法实施例中手机执行的各个功能或者步骤。
通过以上实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是一个物理单元或多个物理单元,即可以位于一个地方,或者也可以分布到多个不同地方。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上内容,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (8)
1.一种显示方法,其特征在于,应用于包括显示屏的电子设备,所述显示屏为水滴屏、挖孔屏、刘海屏中的任一种;所述显示屏用于以多种显示样式显示不同的界面;所述显示样式包括:使用所述显示屏中摄像头所在的挖孔区显示图像的样式、不使用所述显示屏中摄像头所在的挖孔区显示图像的样式,所述方法包括:
以第一显示样式显示第一界面;
接收用户在所述第一界面的第一操作,所述第一操作触发所述电子设备的焦点窗口由第一界面切换为第二界面,所述第二界面以第二显示样式显示;
响应于所述第一操作,所述电子设备的应用进程向所述电子设备的系统服务指示所述第二显示样式;其中,所述应用进程通过binder机制调用所述系统服务;
所述系统服务将当前焦点窗口的样式参数更新为所述第二显示样式的样式参数,并通知系统UI进程刷新所述当前焦点窗口的样式参数;其中,所述系统服务包括窗口会话对象IWindowSession、显示扩展策略对象DisplayPolicyEx和电话窗口管理对象PhoneWindowManager;所述系统服务将当前焦点窗口的样式参数更新为所述第二显示样式的样式参数,并通知系统UI进程刷新所述当前焦点窗口的样式参数,包括:所述系统服务通过所述窗口会话对象接收所述应用进程传递的第二显示样式对应的样式参数;所述系统服务利用所述DisplayPolicyEx将所述当前焦点窗口的样式参数更新为所述第二显示样式的样式参数,并通过所述PhoneWindowManager通知所述系统UI进程刷新所述当前焦点窗口的样式参数;
所述系统UI进程刷新所述当前焦点窗口的样式参数,并绘制所述第二显示样式对应的目标视图;其中,所述系统UI进程包括状态栏服务IStatusBarService和屏幕装饰对象ScreenDecorations;所述系统UI进程刷新所述当前焦点窗口的样式参数,并绘制所述第二显示样式对应的目标视图,包括:所述系统UI进程通过所述状态栏服务刷新所述当前焦点窗口的样式参数,并利用所述ScreenDecorations在屏幕装饰图层中绘制所述第二显示样式,得到所述目标视图;其中,所述状态栏服务调用挖角状态更新函数将当前焦点窗口的样式参数更新为第二显示样式对应的样式参数;所述系统服务与所述系统UI进程通信,不与SurfaceFlinger进程直接通信;
所述电子设备的SurfaceFlinger进程根据所述目标视图渲染并显示所述第二界面。
2.根据权利要求1所述的方法,其特征在于,所述显示屏为瀑布屏,所述显示样式包括:使用所述挖孔区显示图像、且使用所述显示屏中瀑布区显示图像的样式;使用所述挖孔区显示图像、不使用所述瀑布区显示图像的样式;不使用所述挖孔区显示图像、使用所述瀑布区显示图像的样式;不使用所述挖孔区显示图像、且不使用所述瀑布区显示图像的样式。
3.根据权利要求1所述的方法,其特征在于,所述屏幕装饰图层对应所述显示屏的整个屏幕。
4.根据权利要求1所述的方法,其特征在于,所述电子设备的SurfaceFlinger进程根据所述目标视图渲染并显示所述第二界面,包括:
在启用所述屏幕装饰图层的情况下,所述SurfaceFlinger进程通过预设图像处理单元根据所述目标视图渲染所述第二界面。
5.根据权利要求1所述的方法,其特征在于,所述第一界面是用于设置所述电子设备的显示样式的界面;或者,所述第一界面和所述第二界面是不同应用的界面;或者,所述第一界面和所述第二界面是同一应用的不同界面。
6.根据权利要求1所述的方法,其特征在于,所述电子设备的应用进程向所述电子设备的系统服务指示所述第二显示样式,包括:
所述应用进程通过所述binder机制向所述系统服务指示所述第二显示样式。
7.一种电子设备,其特征在于,包括:存储器和一个或多个处理器;所述存储器与所述处理器耦合;其中,存储器中存储有计算机程序代码,所述计算机程序代码包括计算机指令,当所述计算机指令被所述处理器执行时,使得所述电子设备执行如权利要求1-6中任一项所述的方法。
8.一种计算机可读存储介质,其特征在于,包括计算机指令,当所述计算机指令在电子设备上运行时,使得所述电子设备执行如权利要求1-6中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211533724.3A CN115658213B (zh) | 2022-12-02 | 2022-12-02 | 一种显示方法、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211533724.3A CN115658213B (zh) | 2022-12-02 | 2022-12-02 | 一种显示方法、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115658213A CN115658213A (zh) | 2023-01-31 |
CN115658213B true CN115658213B (zh) | 2023-06-09 |
Family
ID=85017311
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211533724.3A Active CN115658213B (zh) | 2022-12-02 | 2022-12-02 | 一种显示方法、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115658213B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109542572A (zh) * | 2018-11-27 | 2019-03-29 | 维沃移动通信有限公司 | 一种界面显示方法和移动终端 |
CN110187815A (zh) * | 2019-01-24 | 2019-08-30 | 青岛海信移动通信技术股份有限公司 | 终端及处理方法 |
CN110489043A (zh) * | 2019-07-31 | 2019-11-22 | 华为技术有限公司 | 一种悬浮窗口的管理方法及相关装置 |
CN110647700A (zh) * | 2019-08-13 | 2020-01-03 | 平安普惠企业管理有限公司 | 页面资源的加载方法、装置、计算机设备和存储介质 |
CN114185522A (zh) * | 2021-12-16 | 2022-03-15 | 中国平安财产保险股份有限公司 | 页面主题定制方法、装置、电子设备及存储介质 |
CN114265657A (zh) * | 2021-12-24 | 2022-04-01 | 深圳前海微众银行股份有限公司 | 一种小程序的页面显示方法及装置 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10789412B2 (en) * | 2012-02-20 | 2020-09-29 | Wix.Com Ltd. | System and method for extended dynamic layout |
US10503357B2 (en) * | 2014-04-03 | 2019-12-10 | Oath Inc. | Systems and methods for delivering task-oriented content using a desktop widget |
US20160378291A1 (en) * | 2015-06-26 | 2016-12-29 | Haworth, Inc. | Object group processing and selection gestures for grouping objects in a collaboration system |
US10303329B2 (en) * | 2016-05-23 | 2019-05-28 | Target Brands, Inc. | Display system for smart products |
CN107885567B (zh) * | 2017-11-08 | 2021-06-29 | 奇酷互联网络科技(深圳)有限公司 | 界面的显示方法、系统、可读存储介质及移动设备 |
CN108089786B (zh) * | 2017-12-14 | 2019-12-31 | Oppo广东移动通信有限公司 | 用户界面显示方法、装置、设备及存储介质 |
CN108021306B (zh) * | 2017-12-20 | 2021-06-01 | Oppo广东移动通信有限公司 | 应用界面显示方法及相关设备 |
CN109308205B (zh) * | 2018-08-09 | 2020-12-01 | 腾讯科技(深圳)有限公司 | 应用程序的显示适配方法、装置、设备及存储介质 |
CN111580906A (zh) * | 2020-04-28 | 2020-08-25 | 深圳传音控股股份有限公司 | 一种界面显示方法、相关设备及存储介质 |
CN111580770A (zh) * | 2020-05-12 | 2020-08-25 | 上海闻泰信息技术有限公司 | 显示屏的显示控制方法、装置、设备和存储介质 |
CN112711454A (zh) * | 2020-12-29 | 2021-04-27 | 维沃移动通信有限公司 | 状态栏的显示方法、装置及存储介质 |
CN114637451B (zh) * | 2022-05-06 | 2023-06-20 | 荣耀终端有限公司 | 应用切换时的显示优化方法、设备和存储介质 |
-
2022
- 2022-12-02 CN CN202211533724.3A patent/CN115658213B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109542572A (zh) * | 2018-11-27 | 2019-03-29 | 维沃移动通信有限公司 | 一种界面显示方法和移动终端 |
CN110187815A (zh) * | 2019-01-24 | 2019-08-30 | 青岛海信移动通信技术股份有限公司 | 终端及处理方法 |
CN110489043A (zh) * | 2019-07-31 | 2019-11-22 | 华为技术有限公司 | 一种悬浮窗口的管理方法及相关装置 |
CN110647700A (zh) * | 2019-08-13 | 2020-01-03 | 平安普惠企业管理有限公司 | 页面资源的加载方法、装置、计算机设备和存储介质 |
CN114185522A (zh) * | 2021-12-16 | 2022-03-15 | 中国平安财产保险股份有限公司 | 页面主题定制方法、装置、电子设备及存储介质 |
CN114265657A (zh) * | 2021-12-24 | 2022-04-01 | 深圳前海微众银行股份有限公司 | 一种小程序的页面显示方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN115658213A (zh) | 2023-01-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106941563B (zh) | 一种移动终端刷新率的控制方法、装置及移动终端 | |
KR102310130B1 (ko) | 착용 가능한 전자 장치 | |
CN110113536B (zh) | 一种屏幕补光方法、装置、存储介质及智能终端 | |
CN110264935B (zh) | 显示器驱动方法、显示器驱动集成电路及电子设备 | |
CN114706503A (zh) | 一种应用显示方法及电子设备 | |
CN111182614B (zh) | 建立网络连接的方法和装置以及电子设备 | |
WO2021052279A1 (zh) | 一种折叠屏显示方法及电子设备 | |
CN115486087A (zh) | 多窗口投屏场景下的应用界面显示方法及电子设备 | |
EP4148567A1 (en) | Adaptive card generation method, terminal device and server | |
CN112825232B (zh) | 一种补偿方法及电子设备 | |
US11132929B2 (en) | Method and apparatus for controlling on-screen display | |
WO2023000772A1 (zh) | 模式切换方法、装置、电子设备及芯片系统 | |
WO2022257451A1 (zh) | 一种显示方法、电子设备及计算机存储介质 | |
WO2021254438A1 (zh) | 驱动控制方法及相关设备 | |
CN113986002A (zh) | 帧处理方法、装置及存储介质 | |
CN113656118B (zh) | 一种灭屏显示方法及电子设备 | |
CN113157357A (zh) | 一种页面显示的方法、装置、终端以及存储介质 | |
CN113986162A (zh) | 图层合成方法、设备及计算机可读存储介质 | |
CN115658213B (zh) | 一种显示方法、电子设备及存储介质 | |
CN111860440A (zh) | 人脸特征点的位置调整方法、装置、终端及存储介质 | |
JP7444527B2 (ja) | インタフェース表示方法および電子デバイス | |
CN113805830B (zh) | 一种分布显示方法及相关设备 | |
WO2023097671A1 (zh) | 图像处理方法、智能终端及存储介质 | |
CN114596819B (zh) | 亮度调节方法及相关装置 | |
CN113378085B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |