CN114764358A - 一种界面显示方法及电子设备 - Google Patents
一种界面显示方法及电子设备 Download PDFInfo
- Publication number
- CN114764358A CN114764358A CN202110045127.5A CN202110045127A CN114764358A CN 114764358 A CN114764358 A CN 114764358A CN 202110045127 A CN202110045127 A CN 202110045127A CN 114764358 A CN114764358 A CN 114764358A
- Authority
- CN
- China
- Prior art keywords
- interface
- complex
- electronic device
- attribute
- drawing instruction
- 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 102
- 238000009877 rendering Methods 0.000 claims description 76
- 238000012545 processing Methods 0.000 claims description 57
- 238000004590 computer program Methods 0.000 claims description 18
- 238000007667 floating Methods 0.000 claims description 10
- 238000012544 monitoring process Methods 0.000 claims description 10
- 230000002194 synthesizing effect Effects 0.000 claims description 9
- 230000015572 biosynthetic process Effects 0.000 abstract description 40
- 238000003786 synthesis reaction Methods 0.000 abstract description 40
- 230000000694 effects Effects 0.000 abstract description 29
- 230000008569 process Effects 0.000 description 27
- 230000006870 function Effects 0.000 description 24
- 238000004891 communication Methods 0.000 description 21
- 238000010586 diagram Methods 0.000 description 21
- 239000000203 mixture Substances 0.000 description 21
- 238000007726 management method Methods 0.000 description 16
- 238000010295 mobile communication Methods 0.000 description 12
- 238000005516 engineering process Methods 0.000 description 6
- 238000013500 data storage Methods 0.000 description 4
- 229920001621 AMOLED Polymers 0.000 description 3
- 230000008901 benefit Effects 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
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 208000012661 Dyskinesia Diseases 0.000 description 1
- 206010016338 Feeling jittery Diseases 0.000 description 1
- 208000003028 Stuttering Diseases 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000003321 amplification Effects 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000003416 augmentation Effects 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 210000000988 bone and bone Anatomy 0.000 description 1
- 239000000872 buffer Substances 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000005266 casting Methods 0.000 description 1
- 238000012512 characterization method Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 238000003199 nucleic acid amplification method Methods 0.000 description 1
- 239000003973 paint Substances 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 239000002096 quantum dot Substances 0.000 description 1
- 239000000523 sample Substances 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000005236 sound signal Effects 0.000 description 1
- 239000012536 storage buffer Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/20—Processor architectures; Processor configuration, e.g. pipelining
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/001—Texturing; Colouring; Generation of texture or colour
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/20—Drawing from basic elements, e.g. lines or circles
- G06T11/203—Drawing of straight lines or curves
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2200/00—Indexing scheme for image data processing or generation, in general
- G06T2200/24—Indexing scheme for image data processing or generation, in general involving graphical user interfaces [GUIs]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2210/00—Indexing scheme for image generation or computer graphics
- G06T2210/62—Semi-transparency
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- General Engineering & Computer Science (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本申请公开了一种界面显示方法及电子设备,涉及电子技术领域,能够提高具有复杂属性的界面的显示效果,降低功耗,提升用户体验。本申请提供的方案中,电子设备可以在识别到界面包括复杂属性时,提前在绘制得到的绘制指令中插入复杂属性对应的绘制指令,并且将界面属性修改为非复杂属性,以便硬件合成器可以顺利进行后续界面合成。通过这样的方法,可以提高具有复杂属性的界面的显示效果,例如解决具有复杂属性的界面在显示时的界面抖动或卡顿,同时可以降低功耗,提升用户体验。
Description
技术领域
本申请实施例涉及电子技术领域,尤其涉及一种界面显示方法及电子设备。
背景技术
随着电子设备功能的越来越强大以及设计的越来越人性化,电子设备界面属性的复杂性也越来越高。例如,越来越多的界面窗口被设计为以圆角的样式或以一定透明度显示。又如,越来越多的界面窗口中包括较多的复杂图标。又如,多窗口或多图层同时显示在电子设备显示屏上。为了保证界面的流畅显示,对电子设备的性能要求则越来越高。
但是,常规的硬件合成器没有能力进行上述具有复杂属性的界面的界面合成,对于这种情况,硬件合成器通常会将界面合成任务交回给图形处理器(graphics processingunit,GPU)。对GPU造成了较高的负荷。GPU的高负荷会造成帧率的降低,从而引起界面的抖动或卡顿。另外,GPU的高负荷还会造成电子设备功耗的增加。
发明内容
本申请实施例提供一种界面显示方法及电子设备,能够提高具有复杂属性的界面的显示效果,降低功耗,提升用户体验。
为达到上述目的,本申请实施例采用如下技术方案:
第一方面,提供一种界面显示方法,该方法应用于电子设备,该方法包括:获取第一界面的第一绘制指令;在第一界面的界面属性包括复杂属性时,在第一绘制指令中插入复杂绘制指令,得到第二绘制指令;基于第二绘制指令对第一界面进行渲染;将第一界面的界面属性设置为非复杂属性;将第一界面和第二界面通过硬件合成器合成。
上述第一方面提供的技术方案,电子设备可以在识别到界面包括复杂属性时,提前在绘制得到的绘制指令中插入复杂属性对应的绘制指令,并且将界面属性修改为非复杂属性,以便硬件合成器可以顺利进行后续界面合成。通过这样的方法,可以提高具有复杂属性的界面的显示效果,例如解决具有复杂属性的界面在显示时的界面抖动或卡顿,同时可以降低功耗,提升用户体验。
在一种可能的实现方式中,上述复杂属性包括以下中的一个或多个:圆角特性、透明度特性、多复杂图标特性或多窗口/多图层特性;上述非复杂属性包括除上述复杂属性以外的界面属性。本申请中,电子设备可以在识别出界面包括圆角特性、透明度特性、多复杂图标特性或多窗口/多图层特性等任一种复杂属性时,均可以采用本申请提供的界面显示方法进行绘制、渲染和合成,以提高界面的显示效果。
在一种可能的实现方式中,在获取第一界面的第一绘制指令之后,上述方法还包括:电子设备通过监控界面信息,以获取第一界面的界面属性。作为一种实现方式,电子设备可以通过监控界面属性,以判断界面是否包括复杂属性。
在一种可能的实现方式中,上述复杂属性包括圆角特性;其中,复杂绘制指令用于描述复杂属性对应的图层信息,图层信息包括圆角的坐标信息和圆角的半径。在一些情况中,若界面具有圆角特性,则电子设备可以提前在绘制得到的绘制指令中插入用于表征圆角的坐标信息和圆角的半径等信息的绘制指令,以便圆角特性对应的图层的显示效果。
在一种可能的实现方式中,上述复杂属性包括透明度特性;其中,复杂绘制指令用于描述复杂属性对应的图层信息,图层信息包括具有透明度区域的坐标信息和透明度信息。在一些情况中,若界面具有透明度特性,则电子设备可以提前在绘制得到的绘制指令中插入用于表征具有透明度区域的坐标信息和透明度信息等信息的绘制指令,以便不影响透明度特性对应的图层的显示效果。
在一种可能的实现方式中,上述复杂属性包括多复杂图标特性;其中,复杂绘制指令用于描述复杂属性对应的图层信息,图层信息包括复杂图标的坐标信息和图标配置信息。在一些情况中,若界面具有多复杂图标特性,则电子设备可以提前在绘制得到的绘制指令中插入用于表征具有复杂图标的坐标信息和图标配置信息等信息的绘制指令,以便不影响多复杂图标特性对应的图层的显示效果。
在一种可能的实现方式中,上述复杂属性包括多窗口/多图层特性;其中,复杂绘制指令用于描述复杂属性对应的图层信息,图层信息包括窗口的坐标信息和窗口的显示样式。在一些情况中,若界面具有多窗口/多图层特性,则电子设备可以提前在绘制得到的绘制指令中插入用于表征窗口的坐标信息和窗口的显示样式等信息的绘制指令,以便不影响多窗口/多图层特性对应的图层的显示效果。
在一种可能的实现方式中,上述第一界面是第一应用界面;第二界面包括以下中的一个或多个:电子设备的桌面、第二应用界面、悬浮窗界面或电子设备的状态栏。本申请中,电子设备可以根据显示屏上的具体显示情况通过硬件合成器进行界面合成。例如,在显示屏上显示电子设备的桌面、第二应用界面、悬浮窗界面或电子设备的状态栏中的一个或多个对应的图层时,将该一个或多个图层与第一界面通过硬件合成器进行界面合成,以便不影响整体界面的显示效果。
在一种可能的实现方式中,上述获取第一界面的第一绘制指令,包括:绘制第一界面中非复杂属性对应的图层,获取第一绘制指令。本申请中,电子设备是将复杂属性对应的绘制指令插入经过绘制得到的非复杂属性对应的绘制指令中。
在一种可能的实现方式中,上述在第一绘制指令中插入复杂绘制指令,得到第二绘制指令,包括:获取第一界面的界面画布;界面画布上绘制有第一绘制指令对应的图层;在界面画布上绘制复杂绘制指令对应的图层;获取界面画布上图层信息,获取第二绘制指令。作为一种实现方式,电子设备可以通过在绘制得到的界面画布上绘制复杂绘制指令对应的绘制指令,以将复杂绘制指令插入第一绘制指令中。
在一种可能的实现方式中,上述方法还包括:电子设备显示第一界面;或者,电子设备将第一界面的配置参数发送给其他设备,以将第一界面投屏至其他设备。本申请提供的界面显示方法既适用于第一界面显示在电子设备上的场景,也适用于第一界面备扩展至其他设备上显示的场景。
第二方面,提供一种电子设备,该电子设备包括:第一处理单元,用于获取第一界面的第一绘制指令;以及在第一界面的界面属性包括复杂属性时,在第一绘制指令中插入复杂绘制指令,得到第二绘制指令;第二处理单元,用于基于第二绘制指令对第一界面进行渲染;以及将第一界面的界面属性设置为非复杂属性;硬件合成器,用于合成第一界面和第二界面。
上述第二方面提供的技术方案,电子设备可以在第一处理单元识别到界面包括复杂属性时,提前在绘制得到的绘制指令中插入复杂属性对应的绘制指令;通过第二处理单元基于第二绘制指令对第一界面进行渲染,以及将界面属性修改为非复杂属性,以便硬件合成器可以顺利进行后续界面合成。通过这样的方法,可以提高具有复杂属性的界面的显示效果,例如解决具有复杂属性的界面在显示时的界面抖动或卡顿,同时可以降低功耗,提升用户体验。
在一种可能的实现方式中,上述复杂属性包括以下中的一个或多个:圆角特性、透明度特性、多复杂图标特性或多窗口/多图层特性;上述非复杂属性包括除上述复杂属性以外的界面属性。本申请中,电子设备可以在识别出界面包括圆角特性、透明度特性、多复杂图标特性或多窗口/多图层特性等任一种复杂属性时,均可以采用本申请提供的界面显示方法进行绘制、渲染和合成,以提高界面的显示效果。
在一种可能的实现方式中,第一处理单元还用于,在获取第一界面的第一绘制指令之后,通过监控界面信息,以获取第一界面的界面属性。作为一种实现方式,电子设备可以通过监控界面属性,以判断界面是否包括复杂属性。
在一种可能的实现方式中,上述复杂属性包括圆角特性;其中,复杂绘制指令用于描述复杂属性对应的图层信息,图层信息包括圆角的坐标信息和圆角的半径。在一些情况中,若界面具有圆角特性,则电子设备可以提前在绘制得到的绘制指令中插入用于表征圆角的坐标信息和圆角的半径等信息的绘制指令,以便圆角特性对应的图层的显示效果。
在一种可能的实现方式中,上述复杂属性包括透明度特性;其中,复杂绘制指令用于描述复杂属性对应的图层信息,图层信息包括具有透明度区域的坐标信息和透明度信息。在一些情况中,若界面具有透明度特性,则电子设备可以提前在绘制得到的绘制指令中插入用于表征具有透明度区域的坐标信息和透明度信息等信息的绘制指令,以便不影响透明度特性对应的图层的显示效果。
在一种可能的实现方式中,上述复杂属性包括多复杂图标特性;其中,复杂绘制指令用于描述复杂属性对应的图层信息,图层信息包括复杂图标的坐标信息和图标配置信息。在一些情况中,若界面具有多复杂图标特性,则电子设备可以提前在绘制得到的绘制指令中插入用于表征具有复杂图标的坐标信息和图标配置信息等信息的绘制指令,以便不影响多复杂图标特性对应的图层的显示效果。
在一种可能的实现方式中,上述复杂属性包括多窗口/多图层特性;其中,复杂绘制指令用于描述复杂属性对应的图层信息,图层信息包括窗口的坐标信息和窗口的显示样式。在一些情况中,若界面具有多窗口/多图层特性,则电子设备可以提前在绘制得到的绘制指令中插入用于表征窗口的坐标信息和窗口的显示样式等信息的绘制指令,以便不影响多窗口/多图层特性对应的图层的显示效果。
在一种可能的实现方式中,上述第一界面是第一应用界面;第二界面包括以下中的一个或多个:电子设备的桌面、第二应用界面、悬浮窗界面或电子设备的状态栏。本申请中,电子设备可以根据显示屏上的具体显示情况通过硬件合成器进行界面合成。例如,在显示屏上显示电子设备的桌面、第二应用界面、悬浮窗界面或电子设备的状态栏中的一个或多个对应的图层时,将该一个或多个图层与第一界面通过硬件合成器进行界面合成,以便不影响整体界面的显示效果。
在一种可能的实现方式中,上述第一处理单元具体用于,绘制第一界面中非复杂属性对应的图层,获取第一绘制指令。本申请中,电子设备是将复杂属性对应的绘制指令插入经过绘制得到的非复杂属性对应的绘制指令中。
在一种可能的实现方式中,上述第一处理单元具体用于,获取绘制有所述第一绘制指令对应的图层的第一界面的界面画布;在界面画布上绘制复杂绘制指令对应的图层;获取界面画布上图层信息,获取第二绘制指令。作为一种实现方式,电子设备可以通过在绘制得到的界面画布上绘制复杂绘制指令对应的绘制指令,以将复杂绘制指令插入第一绘制指令中。
在一种可能的实现方式中,上述电子设备还包括:显示单元,用于显示第一界面。本申请提供的界面显示方法可以适用于第一界面显示在电子设备上的场景。
在一种可能的实现方式中,上述电子设备还包括:收发单元,用于将第一界面的配置参数发送给其他设备,以将第一界面投屏至其他设备。本申请提供的界面显示方法可以适用于第一界面备扩展至其他设备上显示的场景。
在一种可能的实现方式中,上述第一处理单元是中央处理器(centralprocessing unit,CPU),第一处理单元是(graphics processing unit,GPU)。
第三方面,提供一种电子设备,该电子设备包括:存储器,用于存储计算机程序;处理器,用于执行所述计算机程序,使得电子设备获取第一界面的第一绘制指令;在第一界面的界面属性包括复杂属性时,在第一绘制指令中插入复杂绘制指令,得到第二绘制指令;基于第二绘制指令对第一界面进行渲染;将第一界面的界面属性设置为非复杂属性;硬件合成器,以及合成第一界面和第二界面。
上述第三方面提供的技术方案,电子设备可以在第一处理单元识别到界面包括复杂属性时,提前在绘制得到的绘制指令中插入复杂属性对应的绘制指令;通过第二处理单元基于第二绘制指令对第一界面进行渲染,以及将界面属性修改为非复杂属性,以便硬件合成器可以顺利进行后续界面合成。通过这样的方法,可以提高具有复杂属性的界面的显示效果,例如解决具有复杂属性的界面在显示时的界面抖动或卡顿,同时可以降低功耗,提升用户体验。
在一种可能的实现方式中,上述复杂属性包括以下中的一个或多个:圆角特性、透明度特性、多复杂图标特性或多窗口/多图层特性;上述非复杂属性包括除上述复杂属性以外的界面属性。本申请中,电子设备可以在识别出界面包括圆角特性、透明度特性、多复杂图标特性或多窗口/多图层特性等任一种复杂属性时,均可以采用本申请提供的界面显示方法进行绘制、渲染和合成,以提高界面的显示效果。
在一种可能的实现方式中,上述处理器还用于,执行所述计算机程序,使得电子设备在获取第一界面的第一绘制指令之后,通过监控界面信息,以获取第一界面的界面属性。作为一种实现方式,电子设备可以通过监控界面属性,以判断界面是否包括复杂属性。
在一种可能的实现方式中,在一种可能的实现方式中,上述复杂属性包括圆角特性;其中,复杂绘制指令用于描述复杂属性对应的图层信息,图层信息包括圆角的坐标信息和圆角的半径。在一些情况中,若界面具有圆角特性,则电子设备可以提前在绘制得到的绘制指令中插入用于表征圆角的坐标信息和圆角的半径等信息的绘制指令,以便圆角特性对应的图层的显示效果。
在一种可能的实现方式中,上述复杂属性包括透明度特性;其中,复杂绘制指令用于描述复杂属性对应的图层信息,图层信息包括具有透明度区域的坐标信息和透明度信息。在一些情况中,若界面具有透明度特性,则电子设备可以提前在绘制得到的绘制指令中插入用于表征具有透明度区域的坐标信息和透明度信息等信息的绘制指令,以便不影响透明度特性对应的图层的显示效果。
在一种可能的实现方式中,上述复杂属性包括多复杂图标特性;其中,复杂绘制指令用于描述复杂属性对应的图层信息,图层信息包括复杂图标的坐标信息和图标配置信息。在一些情况中,若界面具有多复杂图标特性,则电子设备可以提前在绘制得到的绘制指令中插入用于表征具有复杂图标的坐标信息和图标配置信息等信息的绘制指令,以便不影响多复杂图标特性对应的图层的显示效果。
在一种可能的实现方式中,上述复杂属性包括多窗口/多图层特性;其中,复杂绘制指令用于描述复杂属性对应的图层信息,图层信息包括窗口的坐标信息和窗口的显示样式。在一些情况中,若界面具有多窗口/多图层特性,则电子设备可以提前在绘制得到的绘制指令中插入用于表征窗口的坐标信息和窗口的显示样式等信息的绘制指令,以便不影响多窗口/多图层特性对应的图层的显示效果。
在一种可能的实现方式中,上述第一界面是第一应用界面;第二界面包括以下中的一个或多个:电子设备的桌面、第二应用界面、悬浮窗界面或电子设备的状态栏。本申请中,电子设备可以根据显示屏上的具体显示情况通过硬件合成器进行界面合成。例如,在显示屏上显示电子设备的桌面、第二应用界面、悬浮窗界面或电子设备的状态栏中的一个或多个对应的图层时,将该一个或多个图层与第一界面通过硬件合成器进行界面合成,以便不影响整体界面的显示效果。
在一种可能的实现方式中,上述处理器具体用于,执行所述计算机程序,使得电子设备绘制第一界面中非复杂属性对应的图层,获取第一绘制指令。本申请中,电子设备是将复杂属性对应的绘制指令插入经过绘制得到的非复杂属性对应的绘制指令中。
在一种可能的实现方式中,上述处理器具体用于,执行所述计算机程序,使得电子设备获取绘制有所述第一绘制指令对应的图层的第一界面的界面画布;在界面画布上绘制复杂绘制指令对应的图层;以及获取界面画布上图层信息,以获取第二绘制指令。作为一种实现方式,电子设备可以通过在绘制得到的界面画布上绘制复杂绘制指令对应的绘制指令,以将复杂绘制指令插入第一绘制指令中。
在一种可能的实现方式中,上述电子设备还包括:显示器,用于显示第一界面。本申请提供的界面显示方法可以适用于第一界面显示在电子设备上的场景。
在一种可能的实现方式中,上述电子设备还包括:收发器,用于将第一界面的配置参数发送给其他设备,以将第一界面投屏至其他设备。本申请提供的界面显示方法可以适用于第一界面备扩展至其他设备上显示的场景。
在一种可能的实现方式中,上述处理器包括CPU和GPU。
第四方面,提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序代码,该计算机程序代码被处理器执行时实现如第一方面任一种可能的实现方式中的方法。
第五方面,提供一种芯片系统,该芯片系统包括处理器、存储器,存储器中存储有计算机程序代码;所述计算机程序代码被所述处理器执行时,实现如第一方面任一种可能的实现方式中的方法。该芯片系统可以由芯片构成,也可以包含芯片和其他分立器件。
第六方面,提供一种计算机程序产品,当其在计算机上运行时,使得实现如第一方面任一种可能的实现方式中的方法。
附图说明
图1为本申请实施例提供的一种电子设备的硬件结构示意图;
图2为本申请实施例提供的一种电子设备的软件结构示意图;
图3为本申请实施例提供的一种界面显示具体过程示例图;
图4为本申请实施例提供的一种界面结构示例图;
图5为本申请实施例提供的三种具有复杂属性的界面示例图;
图6为本申请实施例提供的两种具有复杂属性的界面示例图;
图7A为本申请实施例提供的一种界面显示过程示意图;
图7B为本申请实施例提供的一种界面合成图层信息示例图;
图7C为本申请实施例提供的另一种界面合成图层信息示例图;
图8为本申请实施例提供的一种界面显示方法的流程图;
图9A为本申请实施例提供的一种具有圆角特性的界面示例图;
图9B为本申请实施例提供的一种界面信息对应的代码示例图;
图10为本申请实施例提供的一种插入复杂绘制指令的示例图;
图11为本申请实施例提供的一种电子设备的结构框图;
图12为本申请实施例提供的另一种电子设备的结构框图;
图13为本申请实施例提供的一种电子设备的示意性结构图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。其中,在本申请实施例的描述中,除非另有说明,“/”表示或的意思,例如,A/B可以表示A或B;本文中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,在本申请实施例的描述中,“多个”是指两个或多于两个。
以下,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本实施例的描述中,除非另有说明,“多个”的含义是两个或两个以上。
本申请实施例提供一种界面显示方法,该方法可以应用于电子设备进行包括有一个或多个窗口中界面的显示过程中。
在本申请中,一个或多个窗口中界面的界面属性包括复杂属性。其中,复杂属性可以包括但不限于圆角特性、透明度特性、多复杂图标特性或多窗口/多图层特性等中的一个或多个。关于复杂属性的介绍,将在下文中具体说明。
本申请不限定界面的显示的具体场景。例如,本申请实施例提供的方法可以应用于电子设备响应于用户启动应用A的操作,显示应用A窗口的过程中。又如,本申请实施例提供的方法可以应用于电子设备响应于户通过手势导航拖动应用窗口的操作,滑动显示多个界面窗口(如应用窗口)的过程中。
其中,上述电子设备可以包括但不限于智能手机、上网本、平板电脑、智能手表、智能手环、电话手表、智能相机、掌上电脑、个人计算机(personal computer,PC)、个人数字助理(personal digital assistant,PDA)、便携式多媒体播放器(portable multimediaplayer,PMP)、(Augmented Reality,AR)/虚拟现实(Virtual Reality,VR)设备、电视机、投影设备或人机交互场景中的体感游戏机等包括显示屏的电子设备。或者,电子设备还可以是其他类型或结构的电子设备,本申请不限定。
请参考图1,图1以智能手机为例,示出了本申请实施例提供的一种电子设备的硬件结构示意图。如图1所示,电子设备可以包括处理器110,存储器(包括外部存储器接口120和内部存储器121),通用串行总线(universal serial bus,USB)接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,传感器模块180,按键190,马达191,指示器192,摄像头193,显示屏194,以及用户标识模块(subscriberidentification module,SIM)卡接口195等。其中传感器模块180可以包括压力传感器,陀螺仪传感器,气压传感器,磁传感器,加速度传感器,距离传感器,接近光传感器,指纹传感器,温度传感器,触摸传感器,环境光传感器,骨传导传感器等。
可以理解的是,本发明实施例示意的结构并不构成对电子设备的具体限定。在本申请另一些实施例中,电子设备可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器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可以是一个通用中央处理器(central processingunit,CPU),微处理器,特定应用集成电路(application-specific integrated circuit,ASIC),或一个或多个用于控制本申请方案程序执行的集成电路,处理器110可以包括一个或多个CPU;举例来说,处理器110可以是华为的麒麟960芯片。
在本申请一些实施例中,GPU可以用于进行图像帧的绘制。
在本申请一些实施例中,进一步的,GPU还可以用于在完成图像帧的绘制之后,进行图像帧的渲染。
在一些实施例中,处理器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)接口等。
充电管理模块140用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。在一些有线充电的实施例中,充电管理模块140可以通过USB接口130接收有线充电器的充电输入。在一些无线充电的实施例中,充电管理模块140可以通过电子设备的无线充电线圈接收无线充电输入。充电管理模块140为电池142充电的同时,还可以通过电源管理模块141为电子设备供电。
电源管理模块141用于连接电池142,充电管理模块140与处理器110。电源管理模块141接收电池142和/或充电管理模块140的输入,为处理器110,内部存储器121,显示屏194,摄像组件193,和无线通信模块160等供电。电源管理模块141还可以用于监测电池容量,电池循环次数,电池健康状态(漏电,阻抗)等参数。在其他一些实施例中,电源管理模块141也可以设置于处理器110中。在另一些实施例中,电源管理模块141和充电管理模块140也可以设置于同一个器件中。
电子设备的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
天线1和天线2用于发射和接收电磁波信号。电子设备中的每个天线可用于覆盖单个或多个通信频段。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
移动通信模块150可以提供应用在电子上的包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块150可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(lownoise amplifier,LNA)等。移动通信模块150可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块150还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。在一些实施例中,移动通信模块150的至少部分功能模块可以被设置于处理器110中。在一些实施例中,移动通信模块150的至少部分功能模块可以与处理器110的至少部分模块被设置在同一个器件中。
调制解调处理器可以包括调制器和解调器。其中,调制器用于将待发送的低频基带信号调制成中高频信号。解调器用于将接收的电磁波信号解调为低频基带信号。随后解调器将解调得到的低频基带信号传送至基带处理器处理。低频基带信号经基带处理器处理后,被传递给应用处理器。应用处理器通过音频设备(不限于扬声器170A、受话器170B等)输出声音信号,或通过显示屏194显示图像或视频。在一些实施例中,调制解调处理器可以是独立的器件。在另一些实施例中,调制解调处理器可以独立于处理器110,与移动通信模块150或其他功能模块设置在同一个器件中。
无线通信模块160可以提供应用在电子设备上的包括无线局域网(wirelesslocal area networks,WLAN)(如WiFi网络),蓝牙BT,全球导航卫星系统(globalnavigation satellite system,GNSS),调频(frequency modulation,FM),近距离无线通信技术(near field communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。无线通信模块160可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块160经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器110。无线通信模块160还可以从处理器110接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
在一些实施例中,电子设备的天线1和移动通信模块150耦合,天线2和无线通信模块160耦合,使得电子设备可以通过无线通信技术与网络以及其他设备通信。所述无线通信技术可以包括全球移动通讯系统(global system for mobile communications,GSM),通用分组无线服务(general packet radio service,GPRS),码分多址接入(code divisionmultiple access,CDMA),宽带码分多址(wideband code division multiple access,WCDMA),时分码分多址(time-division code division multiple access,TD-SCDMA),长期演进(long term evolution,LTE),BT,GNSS,WLAN,NFC,FM,和/或IR技术等。所述GNSS可以包括全球卫星定位系统(global positioning system,GPS),全球导航卫星系统(globalnavigation satellite system,GLONASS),北斗卫星导航系统(beidou navigationsatellite system,BDS),准天顶卫星系统(quasi-zenith satellite system,QZSS)和/或星基增强系统(satellite based augmentation systems,SBAS)。
电子设备通过GPU,显示屏194,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏194和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。在本申请实施例中,GPU可以用于将计算机系统所需要的显示信息进行转换驱动,并向显示器提供行扫描信号,控制显示器的正确显示。
显示屏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)等。在一些实施例中,电子设备可以包括1个或N个显示屏194,N为大于1的正整数。
在本申请实施例中,GPU可以用于渲染应用界面,对应的,显示屏194可以用于显示GPU渲染的应用界面。在本申请一些实施例中,GPU可以用于在CPU完成图像帧的绘制之后,进行图像帧的渲染。在本申请一些实施例中,进一步的,经过GPU渲染的图像帧可以送显至显示屏194进行显示。
电子设备可以通过ISP,摄像组件193,视频编解码器,GPU,显示屏194以及应用处理器等实现拍摄功能。
外部存储器接口120可以用于连接外部存储卡,例如Micro SD卡,实现扩展电子设备的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
内部存储器121可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储电子设备使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,UFS)等。处理器110通过运行存储在内部存储器121的指令,和/或存储在设置于处理器中的存储器的指令,执行电子设备的各种功能应用以及数据处理。
电子设备可以通过音频模块170,扬声器170A,受话器170B,麦克风170C以及应用处理器等实现音频功能。例如音乐播放,录音等。关于音频模块170,扬声器170A,受话器170B和麦克风170C的具体工作原理和作用,可以参考常规技术中的介绍。
按键190包括开机键,音量键等。按键190可以是机械按键。也可以是触摸式按键。电子设备可以接收按键输入,产生与电子设备的用户设置以及功能控制有关的键信号输入。
需要说明的是,图1所示电子设备包括的硬件模块只是示例性地描述,并不对电子设备的具体结构做出限定。例如,电子设备还可以包括其他功能模块。
请参考图2,图2以Android操作系统为例,具体介绍本申请实施例中电子设备的软件结构示意图。
如图2所示,Android操作系统可以包括应用程序层,应用程序框架层(framework,FWK)、系统库、安卓运行时和内核层(kernel)。
其中,应用程序层可以提供一些核心应用程序。为方便描述,以下将应用程序简称为应用。应用程序层中的应用可以包括原生的应用(如在电子设备出厂前,安装操作系统时安装在电子设备中的应用),例如图2所示的相机、地图、短消息、图库、电子邮件和通信录等。应用程序层中的应用也可以包括第三方应用(如用户通过应用商店下载安装的应用),例如图2所示视频、游戏和音乐等。
应用程序框架层为应用程序层的应用程序提供应用编程接口(applicationprogramming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。如图2所示,应用程序框架层可以包括窗口管理服务器(window manager service,WMS),活动管理服务器(activity manager service,AMS),输入事件管理服务器(input managerservice,IMS),资源管理器,通知管理器和视图系统。
其中,WMS主要用于管理窗口程序。窗口管理服务器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。
AMS主要用于负责管理Activity,负责系统中各组件的启动、切换、调度及应用程序的管理和调度等工作。
IMS主要用于对原始输入事件进行翻译、封装等处理,得到包含更多信息的输入事件,并发送到WMS,WMS中存储有每个应用程序的可点击区域(比如控件)、焦点窗口的位置信息等。因此,WMS可以正确的将输入事件分发到指定的控件或者焦点窗口。例如,在本申请实施例中,IMS可以用于将接收到的触控事件等分发到指定的控件或者焦点窗口。
视图系统包括可视控件,例如显示文字的控件,显示图片的控件等。视图系统主要用于构建应用程序。显示界面可以由一个或多个视图组成的。例如,包括短信通知图标的显示界面,可以包括显示文字的视图以及显示图片的视图。例如,在本申请实施例中,视图系统可以用于构建电子设备上显示的界面上的文字控件、图片控件等。
通知管理器使应用程序可以在状态栏中显示通知信息,可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。比如通知管理器被用于告知下载完成,消息提醒等。通知管理器还可以是以图表或者滚动条文本形式出现在系统顶部状态栏的通知,例如后台运行的应用程序的通知,还可以是以对话窗口形式出现在屏幕上的通知。例如在状态栏提示文本信息,发出提示音,电子设备振动,指示灯闪烁等。
资源管理器主要用于为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等等。例如,在本申请实施例中,资源管理器可以用于为电子设备上显示的界面提供本地化字符串,图标,图片,布局文件、视频文件或音频文件等。
系统库和安卓运行时包含FWK所需要调用的功能函数,Android的核心库,以及Android虚拟机。系统库可以包括多个功能模块。例如:表面管理器、三维图形处理库、二维图形引擎和媒体库等。
内核层是Android操作系统的基础,Android操作系统最终的功能都是通过内核层完成。内核层可以包含显示驱动,输入/输出设备驱动(例如,键盘、触摸屏、耳机、扬声器、麦克风等),设备节点,蓝牙驱动,摄像头驱动,音频驱动以及传感器驱动等。用户通过输入设备进行输入操作,内核层可以根据输入操作产生相应的原始输入事件,并存储在设备节点中。
需要说明的是,图2仅以分层架构的Android系统为例,介绍一种电子设备的软件结构。本申请不限定电子设备软件系统的具体架构,关于其他架构的软件系统的具体介绍,可以参考常规技术。
以Android操作系统的界面显示流程为例,如图3所示,界面的显示通常要经过界面绘制、界面渲染、界面合成和送显流程。
其中,界面绘制主要用于对要显示的界面图层进行绘制。界面绘制的本质是像素的填充。以在Android操作系统开机后第一个启动,用来展示应用列表和快捷方式、小部件等的应用Launcher应用为例,如图4所示,假设Launcher应用界面包括四个图层:状态栏、导航栏、壁纸和启动器图标层,界面绘制则主要进行上述状态栏、导航栏、壁纸和启动器图标层的绘制,例如上述状态栏、导航栏、壁纸和启动器图标层的绘制可以由用户界面(userinterface,UI)线程完成。又如,状态栏和导航栏可以由Android的系统用户界面线程(system user interface thread,systemUI)绘制,壁纸可以由壁纸服务提供,启动器图标层可以由Launcher应用绘制。
示例性的,在一些实施例中,如图3所示,界面绘制具体可以包括以下过程:
输入:用于将输入事件传递给对应的对象进行处理。
动画:用于计算每一帧的动画的运动位置。
测量:用于根据xml布局文件和代码中对控件属性的设置,获取以及保存每个View和ViewGrop的尺寸。
布局:用于根据测量获取的信息,确定控件的显示位置。
绘制:用于在确定控件的显示位置后,在画布(canvas)上绘制应用程序窗口中的图层,构造绘制指令。
界面渲染主要用于对绘制后的图层进行例如亮度、对比度、饱和度等的调整,同时不改变原图层的状态。示例性的,界面渲染具体可以包括:GPU从CPU接收CPU绘制得到的绘制指令,GPU将图层进行光栅化处理,GPU将光栅化操作之后的图像缓存到缓存中。其中,光栅化是将一个图元转变为一个二维图像的过程,二维图像上每个点都包含了颜色、深度和纹理等数据。进一步的,在一些实施例中,CPU在绘制得到绘制指令后,还可以将该绘制指令发送至图形图像处理库(如嵌入式系统OpenGL(OpenGL for Embedded Systems,OpenGLES))。GPU可以通过驱动接口从图形图像处理库获取该绘制指令,然后进一步进行光栅化处理。如图3所示,界面渲染具体可以包括以下过程:同步,用于从CPU同步绘制后的绘制指令。渲染,用于对绘制后的图层进行例如亮度、对比度、饱和度等的调整。存入缓存区,用于将渲染的执行结果存入缓存区。
界面合成主要用于将多个渲染后的图层,例如将从缓存中获取的渲染后的图层数据按照恰当的重叠顺序等进行叠加合并,得到完整的图像帧。如图4所示,通过将绘制好的状态栏、导航栏、壁纸和启动器图标层按照恰当的重叠顺序等进行叠加合并,得到完整的图像帧。如图3所示,合成具体可以包括以下过程:获取执行结果,用于获取存储在缓存区的渲染的执行结果。界面合成,用于将多个渲染后的图层按照恰当的重叠顺序等进行叠加合并,得到完整的图像帧。
送显主要是指调用显示驱动,将合成后的图层按照规定的显示区域送往显示屏显示。
示例性的,Android操作系统中,上述界面绘制、界面渲染、界面合成和送显可以由垂直同步(vertical synchronization,VSYNC)信号触发。其中,VSYNC信号是Android操作系统发出的(如隔16ms发出的)用于触发界面绘制、界面渲染、界面合成和送显的信号。关于界面绘制、界面渲染、界面合成和送显的具体过程和介绍,可以参考常规技术中的解释和说明,本申请不做赘述。
以Android操作系统为例,当前Android操作系统的界面合成支持2种方式:一种是由GPU负责,一种是由硬件合成器负责。但是,由于在界面的显示过程中,界面渲染通常需要耗费的资源(包括硬件资源和软件资源)和算力最大,而GPU的能力有限,特别是在处理一些具有复杂属性的界面的界面合成时,因此若由GPU继续负责界面合成时的性能低,功耗高。
基于GPU的上述局限性,以及硬件合成器在进行界面合成时,具有性能高,功耗低的特点,作为一种实现方式,可以由GPU完成上述界面绘制和界面渲染,由硬件合成器完成上述界面合成和送显。但是,常规的硬件合成器没有能力进行具有复杂属性的界面的界面合成。
其中,关于GPU和硬件合成器进行界面合成的优缺点,可以参考以下表1中的介绍:
表1
界面合成方式 | 性能 | 功耗 | 是否支持复杂属性 | 对图层数量是否有限制 |
硬件合成器 | 高 | 低 | 不支持 | 是 |
GPU | 低 | 高 | 支持 | 否 |
对于上述具有复杂属性的界面的界面合成,作为一种处理方式,硬件合成器通常会将界面合成任务交回给GPU。
但是,基于上述GPU的局限性,仍然会存在界面显示过程中的性能低,功耗高造成的GPU高负荷和电子设备高功耗的问题。因此,基于上述图3所示方法,在界面显示的过程中,容易出现界面抖动、卡顿、电子设备电量消耗过快等问题,影响用户体验。
为解决上述问题,本申请实施例提供一种界面显示方法,该方法可以通过监控界面属性,以基于界面的具体属性(包括复杂属性和非复杂属性),采用最适合的处理流程进行界面显示。
例如,在识别到界面包括复杂属性时,提前在绘制得到的绘制指令中插入复杂属性对应的绘制指令,并将复杂属性修改为非复杂属性,以提高具有复杂属性的界面的显示效果,例如解决具有复杂属性的界面在显示时的界面抖动或卡顿,同时可以降低功耗,提升用户体验。
其中,非复杂属性和复杂属性是相对的概念。在本申请实施例中,复杂属性可以包括但不限于圆角特性、透明度特性、多复杂图标特性或多窗口/多图层特性等中的一个或多个。非复杂属性则可以理解为除了复杂属性以外的其他界面属性。例如非复杂属性可以称为简单属性、正常属性等,其中,本申请不限定与复杂属性相对的非复杂属性的具体命名。
其中,在本申请实施例中,圆角特性是指界面窗口被设计为以圆角的样式显示。
透明度特性可以理解为界面窗口以一定透明度显示。例如透明度特性是指界面窗口以大于第一预设透明度阈值(例如5%透明度),小于第二预设透明度阈值(例如95%透明度)的透明度显示。其中,第一预设透明度阈值和第二预设透明度阈值可以由软件开发人员定义,并预先设置在电子设备中。
多复杂图标特性可以理解为界面窗口中包括较多的复杂图标。例如多复杂图标特性是指界面窗口中包括大于预设数量(如5个)的复杂图标。其中,预设数量可以由软件开发人员定义,并预先设置在电子设备中。复杂图标是指图标中包括的特征元素等数量大于预设阈值,复杂图标具体可以由软件开发人员定义并预先设置在电子设备中,本申请不做限定。
多窗口/多图层特性可以理解为多个界面窗口或多个图层同时显示在电子设备显示屏上。
例如,多窗口/多图层特性是指同时显示在电子设备显示屏上的界面窗口数量/图层数量大于预设数量阈值。示例性的,对于大于预设数量阈值数量的界面窗口分屏显示在电子设备上的情况,则界面属性包括多窗口/多图层特性。
又如,多窗口/多图层特性是指电子设备需要同时对大于预设数量阈值数量的界面窗口/图层进行绘制、渲染和合成等。示例性的,在多屏协同的场景中,例如第一设备将第一设备上启动的一个或多个界面扩展(如投屏)至第二设备显示的情况,第一设备需要同时对第一设备上要显示的界面(如桌面)和扩展至第二设备显示的一个或多个界面进行绘制、渲染和合成等,对于这种情况,则界面属性包括多窗口/多图层特性。
其中,上述预设数量阈值可以由软件开发人员定义,并预先设置在电子设备中。
示例性的,请参考图5,图5示出了本申请实施例提供的三种具有复杂属性的界面示例。其中,图5中的(a)示出了具有圆角特性的界面示例,图5中的(b)示出了具有多窗口/多图层特性的界面示例,图5中的(c)示出了具有透明度特性的界面示例。
需要说明的是,图5中的(a)、图5中的(b)和图5中的(c)均以界面具有一种复杂属性,且复杂属性分别为圆角特性、多窗口/多图层特性和透明度特性为例,本申请实施例不限定界面的复杂属性的类别,也不限定界面具有的复杂属性的具体数量。
示例性的,界面中还可以具有多个复杂属性。例如,图6中的(a)所示的界面具有圆角特性和多窗口/多图层特性。又如,图6中的(b)所示的界面具有圆角特性和透明度特性。
以下将结合附图,对本申请实施例提供的一种界面显示方法进行具体阐述。
如图7A所示,本申请实施例提供的界面显示过程可以包括以下6个阶段:
阶段1:获取界面属性阶段。
其中,获取界面属性阶段(即阶段1)用于获取界面属性,例如界面的界面属性是否包括复杂属性。示例性的,复杂属性可以包括例如图5中的(a)所示的圆角特性,例如图5中的(b)所示的多窗口/多图层特性,如图5中的(c)所示的透明度特性等中的一个或多个。
阶段2:识别复杂属性阶段。
可以理解,如上文所述,对于具有非复杂属性界面的界面显示,可以采用常规的界面显示方法进行界面绘制、界面渲染、界面合成和送显。但是,对于具有复杂属性界面的界面显示,常规的界面显示方法存在界面抖动、卡顿、电子设备电量消耗过快等问题。因此,本申请实施例提供的界面显示方法包括识别复杂属性阶段(即阶段2)。电子设备可以通过监控界面属性,以基于界面的具体属性(包括复杂属性和非复杂属性),采用最适合的处理流程进行界面合成。例如,在电子设备确定界面具有复杂属性时,继续执行以下阶段3-阶段6对应的步骤。
阶段3:插入复杂绘制指令阶段。
在本申请实施例中,插入复杂绘制指令阶段(即阶段3)是指在正常绘制指令中插入复杂绘制指令。其中,正常绘制指令是电子设备在界面渲染之前,即在执行上述阶段1对应的步骤之前,通过界面绘制得到的绘制指令。复杂绘制指令用于描述界面上的复杂属性对应的图层信息。
可以理解,插入复杂绘制指令的目的在于在电子设备进行界面渲染时,可以同时进行复杂属性对应的复杂绘制指令的渲染,以避免后续硬件合成器无法处理具有复杂属性的界面的合成,GPU重新再次渲染,造成的界面显示性能低,功耗高等问题。
阶段4:界面渲染阶段。
示例性的,电子设备的GPU可以采用图3中所示的界面渲染方法,基于电子设备在阶段3插入了复杂绘制指令的绘制指令进行界面渲染。关于界面渲染的具体方法和过程,可以参考常规技术中的介绍,这里不做赘述。
阶段5:修改界面属性阶段。
修改界面属性阶段(即阶段5)用于将界面属性修改为用于表示不具有复杂属性的属性。例如,由复杂属性修改为简单属性、正常属性等非复杂属性。
可以理解,由于硬件合成器有能力处理具有简单属性、正常属性等非复杂属性的界面的合成,因此,本申请实施例提供的方法中,电子设备通过执行上述阶段5的步骤,将界面属性修改为非复杂属性,以便硬件合成器可以正常处理界面的合成。同时,由于在阶段4,电子设备已经对界面上复杂属性对应的图层信息进行了渲染,因此,不会影响具有复杂属性的界面的最终显示效果。
其中,在电子设备将界面属性修改为用于表示不具有复杂属性的属性之后,硬件合成器便可以基于GPU渲染的界面正常进行快速地界面合成。
需要说明的是,图7A是以电子设备先执行界面渲染阶段(即阶段4)对应的步骤,再执行修改界面属性阶段(即阶段5)对应的步骤作为示例,但是本申请实施例并不限定阶段4和阶段5对应的步骤的具体执行顺序,例如,电子设备还可以先执行修改界面属性阶段(即阶段5)对应的步骤,再执行界面渲染阶段(即阶段4)对应的步骤。又如,电子设备还可以同时执行界面渲染阶段(即阶段4)和修改界面属性阶段(即阶段5)对应的步骤。
阶段6:界面合成和送显阶段。
在本申请实施例中,界面合成和送显阶段(即阶段6)由硬件合成器执行,关于硬件合成器进行界面渲染、合成和送显的具体方法和过程,可以参考常规技术中的介绍,这里不做赘述。
请参考图7B,图7B示出了本申请实施例提供的一种界面合成图层信息示例图。示例性的,可以通过执行dumpsys SurfaceFlinger等命令获取图7B所示界面合成图层信息。如图7B所示,type用于表示界面合成方式,包括硬件合成器合成还是GPU合成等。其中,type为图7B所示Device则表示采用硬件合成器进行合成。相对应的,若采用GPU进行界面合成,则获取的界面合成图层信息可以如图7C所示。其中,type为图7C所示Client表示采用GPU进行界面合成。
为理解方便,请参考图8,图8示出了本申请实施例提供的一种界面显示方法的详细流程图。其中,上述获取界面属性阶段(即阶段1)具体可以包括图8所示步骤S802,上述识别复杂属性阶段(即阶段2)具体可以包括图8所示步骤S803,上述插入复杂绘制指令阶段(即阶段3)具体可以包括图8所示步骤S804.2、S805.2和S806.2,上述界面渲染阶段(即阶段4)具体可以包括图8所示步骤S807.2,上述修改界面属性阶段(即阶段5)具体可以包括图8所示步骤S808.2,上述界面合成和送显阶段(即阶段6)具体可以包括图8所示步骤S809。
其中,图8所示执行主体为电子设备(为简化图8,图8中未示出执行主体)。如图8所示,本申请实施例提供的一种界面显示方法可以包括以下步骤S801-S803:
S801、电子设备进行界面绘制。
示例性的,电子设备的CPU可以采用图3中所示的界面绘制方法进行界面绘制,在画布(canvas)上绘制界面包括的所有应用程序窗口中非复杂属性对应的图层,构造绘制指令1(即第一绘制指令)。其中,绘制指令1用于描述显示界面(如第一界面)的非复杂属性对应的图层信息。关于界面绘制的具体方法和过程,可以参考常规技术中的介绍,这里不做赘述。
需要说明的是,在一些情况下,若界面上包括有多个应用窗口,例如图5中的(b)和图6中的(a)所示的具有多窗口/多图层特性的界面,则电子设备对多个显示界面均进行绘制得到多个显示界面对应的绘制指令。
以界面上包括有4个应用窗口(如应用窗口1、应用窗口2、应用窗口3和应用窗口4)为例,则电子设备对多个应用窗口中的显示界面分别进行绘制得到包括应用窗口1中的显示界面对应的绘制指令11、应用窗口2中的显示界面对应的绘制指令12、应用窗口3中的显示界面对应的绘制指令13和应用窗口4中的显示界面对应的绘制指令14。
S802、电子设备获取界面属性。
其中,界面属性包括复杂属性和非复杂属性。示例性,复杂属性可以包括但不限于圆角特性、透明度特性、多复杂图标特性或多窗口/多图层特性等中的一个或多个。非复杂属性可以包括除所述复杂属性以外的界面属性。
示例性的,在本申请实施例中,电子设备的CPU可以通过监控界面信息,以获取显示界面(如第一界面)的界面属性。例如,电子设备可以在界面渲染前端,通过监控界面信息,以获取显示界面(如第一界面)的界面属性。
请参考图9B,图9B以图9A所示具有圆角特性的界面为例,示出了本申请实施例提供的一种界面信息示例图。如图9B所示,界面信息对应的代码包括cornerRadius表征该界面具有圆角特性。cornerRadius=222.482712表征窗口圆角的圆角值,其中圆角值即圆角半径(如图9A所示R)。坐标信息[363,766,1043,1815]表征圆角在预设坐标系中的坐标位置为(363,766)到(1043,1815)。
其中,预设坐标系可以是电子设备的预设坐标系、世界坐标系或者地面坐标系等,本申请不限定。示例性的,电子设备的预设坐标系可以是电子设备触摸屏对应的二维坐标系。以电子设备是智能手机为例,该二维坐标系可以是智能手机在竖屏状态下,触摸屏朝向用户时,由智能手机左下角为坐标原点O,下侧短边为x轴,左侧长边为y轴组成的坐标系。
S803、电子设备判断显示界面是否具有复杂属性。
例如,电子设备的CPU可以通过分析获取的显示界面(如第一界面)的界面属性,进一步判断显示界面(如第一界面)是否具有复杂属性。
本申请实施例提供的界面显示方法可以基于显示界面(如第一界面)的具体属性采用最适合的处理流程进行界面显示。
例如,在一些实施例中,若电子设备识别出显示界面的界面属性包括复杂属性,即显示界面具有复杂属性,则电子设备执行以下步骤S804.2-S808.2和S809:
S804.2、电子设备生成复杂绘制指令。
例如,电子设备的CPU可以基于获取的显示界面(如第一界面)的复杂属性,生成复杂绘制指令。
其中,复杂绘制指令用于描述显示界面(如第一界面)上的复杂属性对应的图层信息。
例如,在复杂属性是例如图5中的(a)所示的圆角特性时,复杂绘制指令是圆角特性对应的绘制指令。示例性的,圆角特性对应的绘制指令可以用于描述圆角的坐标信息和圆角的半径等。
又如,在复杂属性是例如图5中的(b)所示的多窗口/多图层特性时,复杂绘制指令是多窗口/多图层特性对应的绘制指令。示例性的,多窗口/多图层特性对应的绘制指令可以用于描述窗口的坐标信息和窗口的显示样式等。
又如,在复杂属性是例如图5中的(c)所示的透明度特性时,复杂绘制指令是透明度特性对应的绘制指令。示例性的,透明度特性对应的绘制指令可以用于描述具有透明度区域的坐标信息和透明度信息等。
又如,在复杂属性是多复杂图标特性时,复杂绘制指令是多复杂图标特性对应的绘制指令。示例性的,多复杂图标特性对应的绘制指令可以用于描述复杂图标的坐标信息和图标配置信息。其中,图标配置信息可以包括但不限于图标中的文字、颜色、图形等元素,以及元素的位置信息等。
示例性的,在Android操作系统中,透明度信息可以用alpha来表示。例如,alpha=#AB,其中A表示透明度,B表示颜色;A可以为00-ff之间的任意值,FF表示透明度为100%(即不透明),00表示透明度为0%(即完全透明);B可以为000000-ffffff之间的任意值,000000表示黑色,ffffff表示白色。关于alpha以及其他透明度信息的具体表示方式,可以参考常规技术中的介绍,这里不做赘述。
又如,在复杂属性是多复杂图标特性时,复杂绘制指令是多复杂图标特性对应的绘制指令。示例性的,多复杂图标特性对应的绘制指令可以用于描述复杂图标的坐标信息和复杂图标的显示样式等。
以图9A所示具有圆角特性的界面为例,示例性的,电子设备生成的圆角特性对应的绘制指令可以为(ClipRRect 363,766,1043,1815,222.48)。其中,该圆角特性对应的绘制指令用于指示在预设坐标系中,从(363,766)到(1043,1815)的位置区域里截取出一个圆角值(即圆角半径)为222.48的圆角矩形。222.48用于表征窗口圆角的圆角值(即圆角半径R)。
S805.2、电子设备获取界面画布。
其中,在本申请实施例中,界面画布是指显示界面(如第一界面)的根层画布。界面画布上绘制有绘制指令1(即第一绘制指令)对应的图层。
在一些实施例中,电子设备(更为具体的,例如电子设备的CPU)可以直接从绘制指令中提取出显示界面(如第一界面)的界面画布。
在另一些实施例中,电子设备无法直接从绘制指令中提取出显示界面(如第一界面)的界面画布。例如,对于一些视频播放的应用窗口,电子设备很难直接从绘制指令中提取出画布。对于这种情况,电子设备获取画布具体可以包括:电子设备(更为具体的,例如电子设备的CPU)通过在新建的画布上绘制绘制指令1,以获取显示界面(如第一界面)的界面画布。
S806.2、电子设备在绘制指令1中插入复杂绘制指令。
其中,在图8所示流程图中,插入复杂绘制指令(即阶段4)是指在绘制指令1(即第一绘制指令)中插入复杂绘制指令,得到第二绘制指令。绘制指令1是指电子设备在步骤S801进行界面绘制,构造的绘制指令1。
示例性的,电子设备的CPU可以在获取的界面画布上,插入复杂绘制指令对应的图层。进一步的,电子设备的CPU可以获取界面画布上图层信息,从而获取第二绘制指令。
请参考图10,图10以图9A所示具有圆角特性的微信界面为例,示出了一种在绘制指令1中插入复杂绘制指令的示例图。又如,以具有透明度特性的界面为例,电子设备的CPU可以在绘制指令1中通过插入Paint的属性以及插入该属性对应的坐标信息,以插入透明度特性对应的具有透明度区域的坐标信息和透明度信息等。
S807.2、电子设备进行界面渲染。
示例性的,电子设备的GPU可以采用图3中所示的界面渲染方法,基于电子设备在步骤S806.2插入了复杂绘制指令的绘制指令(即第二绘制指令)对显示界面(如第一界面)进行界面渲染。
S808.2、电子设备将界面属性设置为默认属性。
其中,在本申请实施例中,默认属性是指电子设备的硬件合成器能够处理的界面属性。例如默认属性可以是简单属性、正常属性等非复杂属性。示例性的,电子设备可以将显示界面(如第一界面)的界面属性中的上述复杂属性修改为非复杂属性。
示例性的,电子设备的CPU可以通过修改显示界面(如第一界面)的界面信息中的界面属性,以将显示界面(如第一界面)的界面属性设置为默认属性。以图9A所示具有圆角特性的微信界面为例,例如,电子设备的CPU可以通过将界面信息中的cornerRadius设置为0,以将界面属性设置为无圆角特性。又如,以具有透明度特性的界面为例,电子设备的CPU可以通过将界面信息中用于表示窗口透明度的信息(如alpha值)修改为不透明。例如,电子设备的CPU可以通过将具有透明度特性的界面View对应的fColor4f.fA值修改为用于表示不透明的参数,如以下语言所示:
需要说明的是,图8是以电子设备先执行步骤S807.2,再执行步骤S808.2作为示例,但是本申请实施例并不限定步骤S807.2和S808.2的具体执行顺序,例如,电子设备还可以先执行步骤S808.2,再执行步骤S807.2。又如,电子设备可以同时执行步骤S807.2和S808.2。
S809、电子设备进行界面合成和送显。
例如,在执行完步骤S808.2之后,电子设备可以基于执行上述步骤S807.2后获取的执行结果进行界面合成。示例性的,电子设备可以将执行上述步骤S807.2后获取的执行结果与第二界面的渲染结果进行界面合成。
在一些实施例中,若第二界面具有复杂属性,则第二界面的渲染结果可以通过了类似上述步骤S801-S803,S804.2-S807.2的方法得到。
示例性的,第二界面可以包括以下中的一个或多个:电子设备的桌面、第二应用界面、悬浮窗界面或电子设备的状态栏。
进一步可选的,电子设备可以将显示界面(如第一界e面)送显。
或者在一些场景中,例如投屏场景中,进一步可选的,电子设备可以将显示界面(如第一界面)投屏至其他设备。
示例性的,电子设备通过将第一界面的配置参数发送给其他设备,以将第一界面投屏至其他设备。其中,第一界面的配置参数可以包括但不限于第一界面中的文字、控件、图形等元素的位置信息,以及元素的具体信息等。
其中,上述步骤S809中的界面合成可以由硬件合成器执行。上述步骤S809中的送显可以由硬件合成器执行,也可以由处理器或其他模块执行,本申请不限定。
可以理解,在电子设备将界面属性设置为默认属性之后,便可以最大化地利用硬件合成器的优势,基于GPU渲染的界面正常进行高性能、低功耗地界面合成。
又如,在另一些实施例中,若电子设备识别出显示界面(如第一界面)的界面属性不包括复杂属性,即显示界面(如第一界面)不具有复杂属性,则电子设备继续执行以下步骤S804.1-S805.1和S809:
S804.1、电子设备获取绘制指令1。
其中,在图8所示流程图中,绘制指令1是指电子设备在步骤S801进行界面绘制,构造的绘制指令(即第一绘制指令)。
S805.1、电子设备进行界面渲染。
示例性的,电子设备的GPU可以采用图3中所示的界面渲染方法,基于电子设备在步骤S804.1获取的绘制指令1对显示界面(如第一界面)进行界面渲染。
S809、电子设备进行界面合成和送显。
例如,在执行完步骤S805.1之后,电子设备可以基于执行上述步骤S805.1后获取的执行结果对进行界面合成。示例性的,电子设备可以将执行上述步骤S807.2后获取的执行结果与第二界面的渲染结果进行界面合成。
在一些实施例中,若第二界面具有复杂属性,则第二界面的渲染结果可以通过了类似上述步骤S801-S803,S804.2-S807.2的方法得到。
示例性的,第二界面可以包括以下中的一个或多个:电子设备的桌面、第二应用界面、悬浮窗界面或电子设备的状态栏。
在一些场景中,例如投屏场景中,可选的,在电子设备进行界面合成之后,电子设备还可以将显示界面(如第一界面)投屏至其他设备。
示例性的,电子设备通过将第一界面的配置参数发送给其他设备,以将第一界面投屏至其他设备。其中,第一界面的配置参数可以包括但不限于第一界面中的文字、控件、图形等元素的位置信息,以及元素的具体信息等。
其中,上述步骤S809中的界面合成可以由硬件合成器执行。
可以理解,在界面属性为非复杂属性时,硬件合成器在进行界面合成时,则不存在无法处理的情况。硬件合成器可以最大化地利用硬件合成器的优势,基于GPU渲染的界面正常进行高性能、低功耗地界面合成。
通过本申请实施例提供的一种界面显示方法,电子设备可以通过监控界面属性,以基于界面的具体属性(包括复杂属性和非复杂属性),采用最适合的处理流程进行界面显示。例如,在识别到界面不包括复杂属性时,采用常规的处理流程,通过硬件合成器进行界面合成;在识别到界面包括复杂属性时,提前在绘制得到的绘制指令中插入复杂属性对应的绘制指令,并且将界面属性修改为非复杂属性,以便硬件合成器可以顺利进行后续界面合成。通过这样的方法,可以提高具有复杂属性的界面的显示效果,例如解决具有复杂属性的界面在显示时的界面抖动或卡顿,同时可以降低功耗,提升用户体验。
应理解,本申请实施例的各个方案可以进行合理的组合使用,并且实施例中出现的各个术语的解释或说明可以在各个实施例中互相参考或解释,对此不作限定。
还应理解,在本申请的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
可以理解的是,电子设备为了实现上述任一个实施例的功能,其包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本申请实施例可以对电子设备进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
比如,以采用集成的方式划分电子设备各个功能模块的情况下,如图11所示,为本申请实施例提供的一种电子设备的结构框图。如图11所示,该电子设备可以包括第一处理单元1110、第二处理单元1120、硬件合成器1130和显示单元1140。
其中,第一处理单元1110用于支持电子设备获取通过对第一界面进行绘制,得到第一绘制指令;判断第一界面是否具有复杂属性;在识别出第一界面的界面属性包括复杂属性时,获取复杂属性对应的复杂绘制指令;在第一绘制指令中插入复杂绘制指令,得到第二绘制指令;和/或用于本文所描述的技术的其他过程。第二处理单元1120用于支持电子设备基于第二绘制指令对第一界面进行渲染;将第一界面的界面属性设置为非复杂属性;和/或用于本文所描述的技术的其他过程。硬件合成器1130用于支持电子设备合成第一界面和第二界面;和/或用于本文所描述的技术的其他过程。
可选的,在一些实施例中,上述显示单元1140用于显示上述显示第一界面。
需要说明的是,在一些实施例中,上述第一界面的界面属性设置为非复杂属性可以由第一处理单元1110完成。
可选的,在另一些实施例中,如图12所示,电子设备还可以包括收发单元1150,用于将第一界面的配置参数发送给其他设备,以将第一界面投屏至其他设备。
需要说明的是,上述收发单元1150可以包括射频电路。具体的,电子设备可以通过射频电路进行无线信号的接收和发送。通常,射频电路包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器、双工器等。此外,射频电路还可以通过无线通信和其他设备通信。所述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统、通用分组无线服务、码分多址、宽带码分多址、长期演进、电子邮件、短消息服务等。
应理解,电子设备中的各个模块可以通过软件和/或硬件形式实现,对此不作具体限定。换言之,电子设备是以功能模块的形式来呈现。这里的“模块”可以指特定应用集成电路ASIC、电路、执行一个或多个软件或固件程序的处理器和存储器、集成逻辑电路,和/或其他可以提供上述功能的器件。可选地,在一个简单的实施例中,本领域的技术人员可以想到电子设备可以采用图13所示的形式。第一处理单元1110、第二处理单元1120和硬件合成器1130可以通过图13所示的处理器1310实现。显示单元1140可以通过图13所示的显示器1320实现。收发单元1150可以通过图13所示的收发器1330来实现。具体的,处理器通过执行存储器中存储的计算机程序来实现。可选地,所述存储器为所述芯片内的存储单元,比如寄存器、缓存等,所述存储单元还可以是所述计算机设备内的位于所述芯片外部的存储单元。
在一种可选的方式中,当使用软件实现数据传输时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地实现本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线((digital subscriber line,DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如软盘、硬盘、磁带)、光介质(例如数字化视频光盘(digital video disk,DVD))、或者半导体介质(例如固态硬盘solid state disk(SSD))等。
结合本申请实施例所描述的方法或者算法的步骤可以硬件的方式来实现,也可以是由处理器执行软件指令的方式来实现。软件指令可以由相应的软件模块组成,软件模块可以被存放于RAM存储器、闪存、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、移动硬盘、CD-ROM或者本领域熟知的任何其它形式的存储介质中。一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于ASIC中。另外,该ASIC可以位于探测装置中。当然,处理器和存储介质也可以作为分立组件存在于探测装置中。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
在一种可选的方式中,本申请提供一种芯片系统,该芯片系统包括处理器、存储器,存储器中存储有指令;当指令被处理器执行时,实现本申请提供的任一种可能的实现方式中的方法。该芯片系统可以由芯片构成,也可以包含芯片和其他分立器件。
在本申请所提供的几个实施例中,应该理解到,所揭露的电子设备和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是一个物理单元或多个物理单元,即可以位于一个地方,或者也可以分布到多个不同地方。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (23)
1.一种界面显示方法,应用于电子设备,其特征在于,所述方法包括:
获取第一界面的第一绘制指令;
在所述第一界面的界面属性包括复杂属性时,在所述第一绘制指令中插入复杂绘制指令,得到第二绘制指令;
基于所述第二绘制指令对所述第一界面进行渲染;
将所述第一界面的界面属性设置为非复杂属性;
将所述第一界面和第二界面通过硬件合成器合成。
2.根据权利要求1所述的方法,其特征在于,所述复杂属性包括以下中的一个或多个:圆角特性、透明度特性、多复杂图标特性或多窗口/多图层特性;
所述非复杂属性包括除所述复杂属性以外的界面属性。
3.根据权利要求1或2所述的方法,其特征在于,在获取所述第一界面的所述第一绘制指令之后,所述方法还包括:
所述电子设备通过监控界面信息,以获取所述第一界面的界面属性。
4.根据权利要求1-3中任一项所述的方法,其特征在于,所述复杂属性包括圆角特性;
其中,所述复杂绘制指令用于描述所述复杂属性对应的图层信息,所述图层信息包括圆角的坐标信息和所述圆角的半径。
5.根据权利要求1-4中任一项所述的方法,其特征在于,所述复杂属性包括透明度特性;
其中,所述复杂绘制指令用于描述所述复杂属性对应的图层信息,所述图层信息包括具有透明度区域的坐标信息和透明度信息。
6.根据权利要求1-5中任一项所述的方法,其特征在于,所述复杂属性包括多复杂图标特性;
其中,所述复杂绘制指令用于描述所述复杂属性对应的图层信息,所述图层信息包括复杂图标的坐标信息和图标配置信息。
7.根据权利要求1-6中任一项所述的方法,其特征在于,所述复杂属性包括多窗口/多图层特性;
其中,所述复杂绘制指令用于描述所述复杂属性对应的图层信息,所述图层信息包括窗口的坐标信息和所述窗口的显示样式。
8.根据权利要求1-7中任一项所述的方法,其特征在于,
所述第一界面是第一应用界面;
所述第二界面包括以下中的一个或多个:所述电子设备的桌面、第二应用界面、悬浮窗界面或所述电子设备的状态栏。
9.根据权利要求1-8中任一项所述的方法,其特征在于,所述获取所述第一界面的所述第一绘制指令,包括:
绘制所述第一界面中非复杂属性对应的图层,获取所述第一绘制指令。
10.根据权利要求1-9中任一项所述的方法,其特征在于,所述在所述第一绘制指令中插入复杂绘制指令,得到第二绘制指令,包括:
获取所述第一界面的界面画布;所述界面画布上绘制有所述第一绘制指令对应的图层;
在所述界面画布上绘制所述复杂绘制指令对应的图层;
获取所述界面画布上图层信息,获取第二绘制指令。
11.根据权利要求1-10中任一项所述的方法,其特征在于,所述方法还包括:
所述电子设备显示所述第一界面;或者,
所述电子设备将所述第一界面的配置参数发送给其他设备,以将所述第一界面投屏至其他设备。
12.一种电子设备,其特征在于,所述电子设备包括:
第一处理单元,用于获取第一界面的第一绘制指令;以及在所述第一界面的界面属性包括复杂属性时,在所述第一绘制指令中插入复杂绘制指令,得到第二绘制指令;
第二处理单元,用于基于所述第二绘制指令对所述第一界面进行渲染;以及将所述第一界面的界面属性设置为非复杂属性;
硬件合成器,用于合成所述第一界面和第二界面。
13.根据权利要求12所述的电子设备,其特征在于,所述复杂属性包括以下中的一个或多个:圆角特性、透明度特性、多复杂图标特性或多窗口/多图层特性;
所述非复杂属性包括除所述复杂属性以外的界面属性。
14.根据权利要求12或13所述的电子设备,其特征在于,所述第一处理单元还用于,
通过监控界面信息,以获取所述第一界面的界面属性。
15.根据权利要求12-14中任一项所述的电子设备,其特征在于,所述第一界面是第一应用界面;
所述第二界面包括以下中的一个或多个:所述电子设备的桌面、第二应用界面、悬浮窗界面、所述电子设备的状态栏。
16.根据权利要求12-15中任一项所述的电子设备,其特征在于,所述第一处理单元具体用于:
绘制所述第一界面中非复杂属性对应的图层,获取所述第一绘制指令。
17.根据权利要求12-16中任一项所述的电子设备,其特征在于,所述第一处理单元具体用于:
获取所述第一界面的界面画布;所述界面画布上绘制有所述第一绘制指令对应的图层;
在所述界面画布上绘制所述复杂绘制指令对应的图层;
获取所述界面画布上图层信息,获取第二绘制指令。
18.根据权利要求12-17中任一项所述的电子设备,其特征在于,所述电子设备还包括:
显示单元,用于显示所述第一界面。
19.根据权利要求12-17中任一项所述的电子设备,其特征在于,所述电子设备还包括:
收发单元,用于向其他设备发送所述第一界面的配置参数,以将所述第一界面投屏至其他设备。
20.根据权利要求12-19中任一项所述的电子设备,其特征在于,
所述第一处理单元是中央处理器CPU,所述第一处理单元是图形处理器GPU。
21.一种电子设备,其特征在于,所述电子设备包括:
存储器,用于存储计算机程序;
收发器,用于接收或发送无线电信号;
处理器,用于执行所述计算机程序,使得所述电子设备实现如权利要求1-11中任一项所述的方法。
22.一种芯片系统,其特征在于,所述芯片系统包括处理电路、存储介质,所述存储介质中存储有计算机程序代码;所述计算机程序代码被所述处理电路执行时实现如权利要求1-11中任一项所述的方法。
23.一种计算机程序产品,其特征在于,所述计算机程序产品用于在计算机上运行,以实现如权利要求1-11中任一项所述的方法。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110045127.5A CN114764358A (zh) | 2021-01-13 | 2021-01-13 | 一种界面显示方法及电子设备 |
US18/271,957 US20240069937A1 (en) | 2021-01-13 | 2021-12-22 | Interface display method and electronic device |
EP21919124.4A EP4254180A4 (en) | 2021-01-13 | 2021-12-22 | INTERFACE DISPLAY METHOD AND ELECTRONIC DEVICE |
PCT/CN2021/140486 WO2022151937A1 (zh) | 2021-01-13 | 2021-12-22 | 一种界面显示方法及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110045127.5A CN114764358A (zh) | 2021-01-13 | 2021-01-13 | 一种界面显示方法及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114764358A true CN114764358A (zh) | 2022-07-19 |
Family
ID=82363591
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110045127.5A Pending CN114764358A (zh) | 2021-01-13 | 2021-01-13 | 一种界面显示方法及电子设备 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20240069937A1 (zh) |
EP (1) | EP4254180A4 (zh) |
CN (1) | CN114764358A (zh) |
WO (1) | WO2022151937A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115359226B (zh) * | 2022-10-19 | 2023-01-20 | 深圳市明源云客电子商务有限公司 | 鸿蒙系统基于纹理压缩的vr展示方法、电子设备及介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015161775A1 (en) * | 2014-04-22 | 2015-10-29 | Tencent Technology (Shenzhen) Company Limited | Gui display method and apparatus, and terminal device |
CN110083324A (zh) * | 2019-04-30 | 2019-08-02 | 华为技术有限公司 | 图像绘制的方法、装置、电子设备及计算机存储介质 |
CN110209444A (zh) * | 2019-03-20 | 2019-09-06 | 华为技术有限公司 | 一种图形渲染方法和电子设备 |
CN110427094A (zh) * | 2019-07-17 | 2019-11-08 | Oppo广东移动通信有限公司 | 显示方法、装置、电子设备及计算机可读介质 |
CN110989905A (zh) * | 2019-12-18 | 2020-04-10 | 深圳市商汤科技有限公司 | 信息处理方法及装置、电子设备和存储介质 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104954848A (zh) * | 2015-05-12 | 2015-09-30 | 乐视致新电子科技(天津)有限公司 | 智能终端的显示图形用户界面的控制方法及装置 |
US10748235B2 (en) * | 2018-08-08 | 2020-08-18 | Qualcomm Incorporated | Method and system for dim layer power optimization in display processing |
CN110503708A (zh) * | 2019-07-03 | 2019-11-26 | 华为技术有限公司 | 一种基于垂直同步信号的图像处理方法及电子设备 |
CN110377257B (zh) * | 2019-07-17 | 2022-04-19 | Oppo广东移动通信有限公司 | 图层合成方法、装置、电子设备及存储介质 |
-
2021
- 2021-01-13 CN CN202110045127.5A patent/CN114764358A/zh active Pending
- 2021-12-22 US US18/271,957 patent/US20240069937A1/en active Pending
- 2021-12-22 WO PCT/CN2021/140486 patent/WO2022151937A1/zh active Application Filing
- 2021-12-22 EP EP21919124.4A patent/EP4254180A4/en active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015161775A1 (en) * | 2014-04-22 | 2015-10-29 | Tencent Technology (Shenzhen) Company Limited | Gui display method and apparatus, and terminal device |
CN110209444A (zh) * | 2019-03-20 | 2019-09-06 | 华为技术有限公司 | 一种图形渲染方法和电子设备 |
CN110083324A (zh) * | 2019-04-30 | 2019-08-02 | 华为技术有限公司 | 图像绘制的方法、装置、电子设备及计算机存储介质 |
CN110427094A (zh) * | 2019-07-17 | 2019-11-08 | Oppo广东移动通信有限公司 | 显示方法、装置、电子设备及计算机可读介质 |
CN110989905A (zh) * | 2019-12-18 | 2020-04-10 | 深圳市商汤科技有限公司 | 信息处理方法及装置、电子设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
US20240069937A1 (en) | 2024-02-29 |
WO2022151937A1 (zh) | 2022-07-21 |
EP4254180A4 (en) | 2024-04-24 |
EP4254180A1 (en) | 2023-10-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2021027747A1 (zh) | 一种界面显示方法及设备 | |
CN115486087A (zh) | 多窗口投屏场景下的应用界面显示方法及电子设备 | |
US10943563B2 (en) | Electronic device and displaying method thereof | |
WO2022258024A1 (zh) | 一种图像处理方法和电子设备 | |
CN113254120B (zh) | 数据处理方法和相关装置 | |
CN114115769B (zh) | 一种显示方法及电子设备 | |
CN113556598A (zh) | 多窗口投屏方法及电子设备 | |
WO2018161534A1 (zh) | 一种显示图像的方法、双屏终端和计算机可读的非易失性存储介质 | |
WO2022252805A1 (zh) | 显示方法及电子设备 | |
WO2023005751A1 (zh) | 渲染方法及电子设备 | |
US11989385B2 (en) | Cursor display method and electronic device | |
WO2022151937A1 (zh) | 一种界面显示方法及电子设备 | |
CN113835802A (zh) | 设备交互方法、系统、设备及计算机可读存储介质 | |
WO2023103800A1 (zh) | 绘制方法及电子设备 | |
WO2024179249A1 (zh) | 一种电子设备的显示方法、电子设备及存储介质 | |
CN116672707B (zh) | 生成游戏预测帧的方法和电子设备 | |
CN116700655B (zh) | 一种界面显示方法及电子设备 | |
CN117689796B (zh) | 一种渲染处理方法及电子设备 | |
WO2024179406A1 (zh) | 基于多操作系统的图形显示方法及相关装置 | |
WO2024022257A1 (zh) | 一种内容显示方法、设备及系统 | |
CN116991532A (zh) | 一种虚拟机窗口的显示方法、电子设备及系统 | |
CN116737291A (zh) | 桌面应用的处理方法和电子设备 | |
CN116688494A (zh) | 生成游戏预测帧的方法和电子设备 | |
CN114968165A (zh) | 一种分布式音频播放方法及电子设备 | |
CN117111796A (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 |