CN117093290A - 窗口尺寸调整方法、相关装置及通信系统 - Google Patents
窗口尺寸调整方法、相关装置及通信系统 Download PDFInfo
- Publication number
- CN117093290A CN117093290A CN202210521904.3A CN202210521904A CN117093290A CN 117093290 A CN117093290 A CN 117093290A CN 202210521904 A CN202210521904 A CN 202210521904A CN 117093290 A CN117093290 A CN 117093290A
- Authority
- CN
- China
- Prior art keywords
- window
- interface
- content
- size
- application
- 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 109
- 238000004891 communication Methods 0.000 title claims abstract description 64
- 230000006870 function Effects 0.000 claims description 69
- 230000004044 response Effects 0.000 claims description 19
- 238000004590 computer program Methods 0.000 claims description 7
- 238000004513 sizing Methods 0.000 claims description 7
- 230000001360 synchronised effect Effects 0.000 claims description 4
- 230000000875 corresponding effect Effects 0.000 description 71
- 230000000694 effects Effects 0.000 description 29
- 238000007726 management method Methods 0.000 description 26
- 239000010410 layer Substances 0.000 description 25
- 238000012545 processing Methods 0.000 description 20
- 230000008569 process Effects 0.000 description 16
- 238000010586 diagram Methods 0.000 description 15
- 238000009877 rendering Methods 0.000 description 14
- 230000008859 change Effects 0.000 description 12
- 230000001276 controlling effect Effects 0.000 description 12
- 238000010295 mobile communication Methods 0.000 description 11
- 230000015572 biosynthetic process Effects 0.000 description 10
- 210000004027 cell Anatomy 0.000 description 10
- 210000003811 finger Anatomy 0.000 description 10
- 238000003786 synthesis reaction Methods 0.000 description 10
- 238000005516 engineering process Methods 0.000 description 9
- 230000006978 adaptation Effects 0.000 description 8
- 230000003993 interaction Effects 0.000 description 8
- 230000005540 biological transmission Effects 0.000 description 7
- 238000012508 change request Methods 0.000 description 6
- 230000005236 sound signal Effects 0.000 description 6
- 238000013528 artificial neural network Methods 0.000 description 4
- 230000002093 peripheral effect Effects 0.000 description 4
- 230000000007 visual effect Effects 0.000 description 4
- 238000011161 development Methods 0.000 description 3
- 230000003044 adaptive effect Effects 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 2
- 238000005266 casting Methods 0.000 description 2
- 238000012790 confirmation Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 238000013529 biological neural network Methods 0.000 description 1
- 210000000988 bone and bone Anatomy 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 239000012792 core layer Substances 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 210000002569 neuron Anatomy 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000005855 radiation Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 210000003813 thumb Anatomy 0.000 description 1
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
- G06F9/452—Remote windowing, e.g. X-Window System, desktop virtualisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/14—Digital output to display device ; Cooperation and interconnection of the display device with other functional units
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/14—Digital output to display device ; Cooperation and interconnection of the display device with other functional units
- G06F3/1454—Digital output to display device ; Cooperation and interconnection of the display device with other functional units involving copying of the display data of a local workstation or window to a remote workstation or window so that an actual copy of the data is displayed simultaneously on two or more displays, e.g. teledisplay
-
- 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
- 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/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
-
- 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/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/543—User-generated data transfer, e.g. clipboards, dynamic data exchange [DDE], object linking and embedding [OLE]
-
- 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/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Digital Computer Display Output (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本申请提供窗口尺寸调整方法、相关装置及通信系统。该方法应用于包含第一设备和第二设备的通信系统。第一设备可以显示多屏协同窗口。多屏协同窗口用于显示第二设备的界面。当检测到调整多屏协同窗口尺寸的操作,第一设备可通知第二设备,从第二设备获取界面布局与尺寸调整后的多屏协同窗口适配的用户界面,并在多屏协同窗口中显示。上述方法可以将多屏协同窗口的尺寸调整为多种不同的长宽比对应的尺寸,提高第一设备的屏幕空间使用率,提升用户在多屏协同场景中的使用体验。
Description
技术领域
本申请涉及终端技术领域,尤其涉及窗口尺寸调整方法、相关装置及通信系统。
背景技术
随着电子设备的发展,电子设备的种类越来也多。不同类型的电子设备适用的场景以及提供的功能可以不同。一个用户可能拥有多种类型的电子设备。例如,手机、平板电脑、个人电脑(personal computer,PC)、智能手表等等。
在一些场景中,用户可能需要同时使用多种类型的电子设备。例如,PC的屏幕比手机的屏幕大,更方便对文档进行编辑。用户想要将手机中的文档发送到PC,从而利用PC对文档进行编辑。在一种可能的实现方式中,手机和PC可以通过多屏协同技术,实现文档快速地从手机传输到PC。其中,手机和PC可以进行多屏协同,PC可以在屏幕上显示呈现手机屏幕内容的窗口。该窗口可以称为“手机窗口”。上述手机屏幕内容可以包含文档的标识。用户可以在手机窗口中,将上述文档的标识拖拽至PC屏幕上手机窗口以外的区域,实现将手机上的文档传输到PC。这可以减少用户频繁在手机和PC之间进行切换的情况,提升用户的工作学习效率。
在上述多屏协同的场景中,PC屏幕上显示的手机窗口的尺寸通常跟随与PC多屏协同的手机的尺寸。手机窗口中用户界面的布局与手机上呈现的用户界面布局相同。上述手机窗口的尺寸通常不可调整,或者只能等比例缩放。上述跟随手机尺寸的手机窗口,尤其是在PC的屏幕上显示有多个手机窗口的情况下,会导致PC的屏幕空间使用率低。用户不能将手机窗口的尺寸调整至自己想要的尺寸,用户在使用设备进行多屏协同的过程中体验较差。
发明内容
本申请提供窗口尺寸调整方法、相关装置及通信系统。该方法可以方便用户在两个设备进行多屏协同的场景中,将多屏协同窗口的尺寸调整为多种不同长宽比对应的尺寸,从而满足用户对不同尺寸的多屏协同窗口的需求。这不仅可以提供显示多屏协同窗口的设备的屏幕控件使用率,而且可以提升用户在多屏协同场景中的使用体验。
第一方面,本申请提供一种窗口尺寸调整方法。其中,第一设备显示第一窗口,第一窗口用于显示第二设备的界面;第一窗口具有第一尺寸,第一窗口中显示的第一内容按照第一界面布局呈现,第一界面布局适配具有第一尺寸的第一窗口。第一设备接收到第一操作,第一操作用于将第一窗口的尺寸调整为第二尺寸,第一窗口在第一尺寸下的第一长宽比与在第二尺寸下的第二长宽比不同。响应于第一操作,第一设备以第二尺寸显示第一窗口,并在第一窗口中按照第二界面布局呈现第二内容,第二内容与第一内容均包含第三内容,第二界面布局适配具有第二尺寸的第一窗口,第二界面布局不同于第一界面布局。
上述第一设备可以是平板电脑、PC等大屏设备。上述第二设备可以是手机等设备。第一设备和第二设备之间可建立有通信连接,实现多屏协同。
由上述方法可知,在第一设备和第二设备多屏协同的过程中,用户可以对第一设备上显示的第一窗口的尺寸进行调整。其中,用户可以将第一窗口的尺寸调整为多种不同的尺寸。第一窗口的长宽比可以改变。在上述第一窗口的尺寸变化后,第一窗口中显示的内容的布局也可以适应性调整,以适配尺寸变化后的第一窗口。
这样,用户可以通过调整第一窗口的尺寸,更好地为第一窗口、其它的多屏协同窗口以及一个或多个第一设备运行其它应用显示的窗口分配合理的显示区域,提高第一设备的屏幕空间使用率。用户可以将第一窗口的尺寸调整至自己想要的尺寸,这可以提升用户在使用设备进行多屏协同的体验。
上述第一窗口也可以称为多屏协同窗口。第一窗口用于显示第二设备的界面,具体可以指:第一窗口可用于显示在第二设备前台运行的应用的界面(即第二设备屏幕上显示的界面),或者,第二窗口可用于显示在第二设备后台运行的应用的界面。也即是说,第一窗口中显示的内容可以是由第二设备运行相应的应用,对该应用的用户界面进行图像合成、渲染等操作得到的。第一设备可以接收到第二设备对应用的用户界面进行图像合成、渲染等操作得到的结果,从而根据该结果在多屏协同窗口中显示第二设备的界面。
上述第一内容可以指一个应用界面中的界面元素。上述第二内容也可以指一个应用界面中的界面元素。例如,第一内容可以包含图6B所示子窗口540中新建信息界面的界面元素。第二内容可以包含图6C所示子窗口540中信息应用界面的界面元素。可以看出,第一内容和第二内容均可包含图6B所示子窗口540中新建信息界面的界面元素(即第三内容)。也即是说,第一窗口在尺寸调整前后显示的第一内容和第二内容是关联的,第一内容和第二内容包含至少一个相同界面元素。
结合第一方面,在一些实施例中,第三内容为第一内容。其中,第二内容包含第一内容和第四内容,第一内容和第四内容均为第一应用的界面内容。
也即是说,第一窗口的尺寸调整后,第一窗口中显示的内容除了包含在尺寸调整前显示的界面元素(即第一内容),还可以包含一些新增的界面元素(即第四内容)。这样可以使得尺寸调整之后显示的内容的界面布局与第一窗口适配。
结合第一方面,在一些实施例中,第二界面布局为分栏布局,分栏布局表示在一个窗口中划分多行和/或多列显示一个应用界面上的界面内容,第二内容为第一应用中一个应用界面上的界面内容,第一内容和第四内容分别显示在第一窗口的两行或两列显示区域中。上述分栏布局可以参考图6C所示子窗口540的区域542中的界面布局。例如,第一内容和第四内容均为信息应用的界面内容。其中,第一内容为信息应用中用于新建信息的界面元素。第二内容为信息应用中信息列表的界面元素。
在一些实施例中,在第二界面布局为分栏布局的情况下,上述第二内容可以是第二设备运行第一应用的一个activity得到的界面元素。即第二内容为第一应用中一个应用界面上的界面内容。
结合第一方面,在一些实施例中,第一应用支持第一功能,第一功能用于在一个窗口中显示同一个应用的两个应用界面;其中,第一内容为第一应用的第一应用界面上的界面内容,第四内容为第一应用的第二应用界面上的界面内容。上述在第一窗口中按照第二界面布局呈现第二内容,具体可以为:确定第一窗口中的第一显示区域和第二显示区域,在第一显示区域中显示第一内容,并在第二显示区域中显示第四内容。
上述第一功能也可以称为平行视界功能,应用内分屏功能等等。
第一设备在第二尺寸的第一窗口中显示第一应用的两个应用界面可以参考图10C所示子窗口550中的显示内容。例如,第一应用为视频应用。第一内容可以为视频A播放界面中的界面元素。第四内容可以为视频应用主界面中的界面元素。上述第二界面布局也可以称为平行视界的布局。
在一些实施例中,在第二界面布局为平行视界的布局的情况下,上述第二内容可以是第二设备运行第一应用的两个activity得到的界面元素。其中,第一内容可以是第二设备运行第一应用的一个activity得到的界面元素。第四内容可以是第二设备运行第一应用的另一个activity得到的界面元素。即第一内容和第四内容分别为第一应用中两个不同应用界面的界面内容。
结合第一方面,在一些实施例中,第二内容为第一内容;或者,第二内容包含第一内容中的一部分界面元素。
也即是说,第一窗口的尺寸调整后,第一窗口中显示的界面元素可以仍为尺寸调整前显示的界面元素,但界面元素的界面元素排布方式和/或界面元素显示样式改变。或者,第一窗口的尺寸调整后,第一窗口中显示的界面元素在尺寸调整前显示的界面元素的基础上,有所减少。例如,第一窗口在第二尺寸下的显示区域小于在第一尺寸下的显示区域。为了使得尺寸调整后显示的内容与第一窗口适配,第一窗口中显示的界面元素相比于在尺寸调整前显示的界面元素,减少了一部分。
结合第一方面,在一些实施例中,第一尺寸在第一尺寸范围内,第二尺寸在第二尺寸范围内,第一尺寸范围和第二尺寸范围不同。其中,第三内容在第一界面布局和第二界面布局中的界面元素排布方式不同。
在一些实施例中,第一应用的开发者可以开发出适配不同尺寸屏幕的界面元素排布方式,以便于应用能够结合不同类型电子设备的屏幕特性,将应用界面中的界面元素以合适的排布方式显示在不同尺寸的屏幕上,提高用户在不同类型电子设备上使用应用的体验。那么,上述适配不同尺寸屏幕的界面元素排布方式,也可以适配尺寸不同的多屏协同窗口。
上述尺寸范围可以指窗口的长宽比范围。例如,第一尺寸在第一尺寸范围内可以指第一窗口在第一尺寸下的第一长宽比在第一尺寸范围内。第二尺寸在第二尺寸范围内可以指第一窗口在第二尺寸下的第二长宽比在第二尺寸范围内。第一应用的开发者为第一应用的应用界面开发了多种界面元素排布方式。这多种界面元素排布方式可分别适配尺寸属于不同尺寸范围的多屏协同窗口。
上述实施例可以结合第一窗口中显示的应用本身拥有的界面布局资源,根据第一窗口当前的尺寸,确定第一窗口中显示内容的布局。这可以使得第二设备随着第一窗口尺寸的变化,调整第一窗口中显示内容的布局,使得第一窗口中显示的内容与第一窗口更好地适配。
结合第一方面,在一些实施例中,第三内容在第一界面布局和第二界面布局中的界面元素排布方式相同,第三内容在第一界面布局和第二界面布局中的界面元素显示样式不同。
在一些实施例中,第一应用的开发者可能对第一应用的一个应用界面仅开发了一种界面元素排布方式。那么,随着第一窗口尺寸的调整,第二设备可以不改变第一窗口中显示内容的界面元素排布方式,而对界面元素显示样式进行调整。例如调整界面元素的大小等。相比于在调整多屏协同窗口的尺寸时,将多屏协同窗口中显示内容所占的像素等比例缩放,上述实施例对界面元素显示样式进行调整可以使得多屏协同窗口中显示的内容与第一窗口更加适配,也更加清楚。这可以有效提升用户在调整多屏协同窗口的使用体验。
结合第一方面,在一些实施例中,第一尺寸和第二尺寸均在第一尺寸范围内。
可以理解的,第一应用的应用界面具有适配不同尺寸屏幕的界面元素排布方式。当第一窗口在尺寸调整前后的尺寸在同一个尺寸范围内,第一窗口中显示内容的界面元素排布方式可以保持不变,而界面元素显示样式可以改变,从而适配尺寸调整后的第一窗口。
结合第一方面,在一些实施例中,其特征在于,第一设备以第二尺寸显示第一窗口之后,第一设备还接收到第二操作,第二操作用于将第一窗口的尺寸调整为第三尺寸,第一窗口在第三尺寸下的长宽比与第二长宽比相同。响应于第二操作,第一设备以第三尺寸显示第一窗口,并在第一窗口中按照第三界面布局呈现第二内容,第三界面布局适配具有第三尺寸的第一窗口。其中,第二内容在三界面布局和第二界面布局中的界面元素排布方式相同,第二内容在第三界面布局和第二界面布局中的界面元素显示样式不同。
也即是说,用户在调整第一窗口的尺寸的过程中,第一窗口的长宽比既可以改变,也可以保持不变。
结合第一方面,在一些实施例中,第一设备显示第二窗口,第二窗口中显示的内容与第二设备屏幕上显示的内容保持同步;第二窗口的长宽比根据第二设备的屏幕尺寸确定,第二窗口的长宽比保持不变。
其中,上述第一窗口和第二窗口均为多屏协同窗口。第一窗口可以称为子窗口。第二窗口可以称为主窗口。主窗口可以是第一设备和第二设备进行多屏协同时建立的第一窗口。用户可以通过主窗口中显示的内容实现对第二设备的反向控制。子窗口可以是利用主窗口上显示的窗口分身控件分离出来的与主窗口独立的窗口。
第二方面,本申请提供一种窗口尺寸调整方法。该方法可应用于包含第一设备和第二设备的通信系统。其中第一设备显示第一窗口,第一窗口用于显示第二设备的界面;第一窗口具有第一尺寸,第一窗口中显示的第一内容按照第一界面布局呈现,第一界面布局适配具有第一尺寸的第一窗口。第一设备接收到第一操作,第一操作用于将第一窗口的尺寸调整为第二尺寸,第一窗口在第一尺寸下的第一长宽比与在第二尺寸下的第二长宽比不同。响应于第一操作,第一设备向第二设备发送第一消息,第一消息包含第一窗口的第一标识和第二尺寸。第二设备根据第一消息,确定按照第二界面布局呈现的第二内容,并得到第一显示数据,第二内容与第一内容均包含第三内容,第二界面布局适配具有第二尺寸的第一窗口,第二界面布局不同于第一界面布局。第二设备将第一显示数据发送给第一设备。第一设备以第二尺寸显示第一窗口,并根据第一显示数据在第一窗口中按照第二界面布局呈现第二内容。
上述第一设备可以是平板电脑、PC等大屏设备。上述第二设备可以是手机等设备。第一设备和第二设备之间可建立有通信连接,实现多屏协同。
由上述方法可知,在第一设备和第二设备多屏协同的过程中,用户可以对第一设备上显示的第一窗口的尺寸进行调整。其中,用户可以将第一窗口的尺寸调整为多种不同的尺寸。第一窗口的长宽比可以改变。在上述第一窗口的尺寸变化后,第一窗口中显示的内容的布局也可以适应性调整,以适配尺寸变化后的第一窗口。
这样,用户可以通过调整第一窗口的尺寸,更好地为第一窗口、其它的多屏协同窗口以及一个或多个第一设备运行其它应用显示的窗口分配合理的显示区域,提高第一设备的屏幕空间使用率。用户可以将第一窗口的尺寸调整至自己想要的尺寸,这可以提升用户在使用设备进行多屏协同的体验。
上述第一窗口也可以称为多屏协同窗口。第一窗口用于显示第二设备的界面,具体可以指:第一窗口可用于显示在第二设备前台运行的应用的界面(即第二设备屏幕上显示的界面),或者,第二窗口可用于显示在第二设备后台运行的应用的界面。也即是说,第一窗口中显示的内容可以是由第二设备运行相应的应用,对该应用的用户界面进行图像合成、渲染等操作得到的。第一设备可以接收到第二设备对应用的用户界面进行图像合成、渲染等操作得到的结果,从而根据该结果在多屏协同窗口中显示第二设备的界面。
上述第一内容可以指一个应用界面中的界面元素。上述第二内容也可以指一个应用界面中的界面元素。例如,第一内容可以包含图6B所示子窗口540中新建信息界面的界面元素。第二内容可以包含图6C所示子窗口540中信息应用界面的界面元素。可以看出,第一内容和第二内容均可包含图6B所示子窗口540中新建信息界面的界面元素(即第三内容)。也即是说,第一窗口在尺寸调整前后显示的第一内容和第二内容是关联的,第一内容和第二内容包含至少一个相同界面元素。
结合第二方面,在一些实施例中,第三内容为第一内容。其中,第二内容包含第一内容和第四内容,第一内容和第四内容均为第一应用的界面内容。
结合第二方面,在一些实施例中,第二界面布局为分栏布局,分栏布局表示在一个窗口中划分多行和/或多列显示一个应用界面上的界面内容,第二内容为第一应用中一个应用界面上的界面内容,第一内容和第四内容分别显示在第一窗口的两行或两列显示区域中。上述分栏布局可以参考图6C所示子窗口540的区域542中的界面布局。例如,第一内容和第四内容均为信息应用的界面内容。其中,第一内容为信息应用中用于新建信息的界面元素。第二内容为信息应用中信息列表的界面元素。
在一些实施例中,在第二界面布局为分栏布局的情况下,上述第二内容可以是第二设备运行第一应用的一个activity得到的界面元素。即第二内容为第一应用中一个应用界面上的界面内容。
结合第二方面,在一些实施例中,第一应用支持第一功能,第一功能用于在一个窗口中显示同一个应用的两个应用界面;其中,第一内容为第一应用的第一应用界面上的界面内容,第四内容为第一应用的第二应用界面上的界面内容。在第一窗口中按照第二界面布局呈现第二内容,具体可以为:确定第一窗口中的第一显示区域和第二显示区域,在第一显示区域中显示第一内容,并在第二显示区域中显示第四内容。
上述第一功能也可以称为平行视界功能,应用内分屏功能等等。
第一设备在第二尺寸的第一窗口中显示第一应用的两个应用界面可以参考图10C所示子窗口550中的显示内容。例如,第一应用为视频应用。第一内容可以为视频A播放界面中的界面元素。第四内容可以为视频应用主界面中的界面元素。上述第二界面布局也可以称为平行视界的布局。
在一些实施例中,在第二界面布局为平行视界的布局的情况下,上述第二内容可以是第二设备运行第一应用的两个activity得到的界面元素。其中,第一内容可以是第二设备运行第一应用的一个activity得到的界面元素。第四内容可以是第二设备运行第一应用的另一个activity得到的界面元素。即第一内容和第四内容分别为第一应用中两个不同应用界面的界面内容。
结合第二方面,在一些实施例中,第二内容为第一内容;或者,第二内容包含第一内容中的一部分界面元素。
结合第二方面,在一些实施例中,第一尺寸在第一尺寸范围内,第二尺寸在第二尺寸范围内,第一尺寸范围和第二尺寸范围不同。其中,第三内容在第一界面布局和第二界面布局中的界面元素排布方式不同。
在一些实施例中,第一应用的开发者可以开发出适配不同尺寸屏幕的界面元素排布方式,以便于应用能够结合不同类型电子设备的屏幕特性,将应用界面中的界面元素以合适的排布方式显示在不同尺寸的屏幕上,提高用户在不同类型电子设备上使用应用的体验。那么,上述适配不同尺寸屏幕的界面元素排布方式,也可以适配尺寸不同的多屏协同窗口。
上述尺寸范围可以指窗口的长宽比范围。例如,第一尺寸在第一尺寸范围内可以指第一窗口在第一尺寸下的第一长宽比在第一尺寸范围内。第二尺寸在第二尺寸范围内可以指第一窗口在第二尺寸下的第二长宽比在第二尺寸范围内。第一应用的开发者为第一应用的应用界面开发了多种界面元素排布方式。这多种界面元素排布方式可分别适配尺寸属于不同尺寸范围的多屏协同窗口。
上述实施例可以结合第一窗口中显示的应用本身拥有的界面布局资源,根据第一窗口当前的尺寸,确定第一窗口中显示内容的布局。这可以使得第二设备随着第一窗口尺寸的变化,调整第一窗口中显示内容的布局,使得第一窗口中显示的内容与第一窗口更好地适配。
结合第二方面,在一些实施例中,第三内容在第一界面布局和第二界面布局中的界面元素排布方式相同,第三内容在第一界面布局和第二界面布局中的界面元素显示样式不同。
在一些实施例中,第一应用的开发者可能对第一应用的一个应用界面仅开发了一种界面元素排布方式。那么,随着第一窗口尺寸的调整,第二设备可以不改变第一窗口中显示内容的界面元素排布方式,而对界面元素显示样式进行调整。例如调整界面元素的大小等。相比于在调整多屏协同窗口的尺寸时,将多屏协同窗口中显示内容所占的像素等比例缩放,上述实施例对界面元素显示样式进行调整可以使得多屏协同窗口中显示的内容与第一窗口更加适配,也更加清楚。这可以有效提升用户在调整多屏协同窗口的使用体验。
结合第二方面,在一些实施例中,第一尺寸和第二尺寸均在第一尺寸范围内。
可以理解的,第一应用的应用界面具有适配不同尺寸屏幕的界面元素排布方式。当第一窗口在尺寸调整前后的尺寸在同一个尺寸范围内,第一窗口中显示内容的界面元素排布方式可以保持不变,而界面元素显示样式可以改变,从而适配尺寸调整后的第一窗口。
结合第二方面,在一些实施例中,第一设备以第二尺寸显示第一窗口之后,第一设备还接收到第二操作,第二操作用于将第一窗口的尺寸调整为第三尺寸,第一窗口在第三尺寸下的长宽比与第二长宽比相同。响应于第二操作,第一设备向第二设备发送第二消息,第二消息包含第一标识和第三尺寸。第二设备根据第二消息,将第二内容的界面布局调整为第三界面布局,并得到第二显示数据,第三界面布局适配具有第三尺寸的第一窗口。第二设备将第二显示数据发送给第一设备。第一设备以第三尺寸显示第一窗口,并根据第二显示数据在第一窗口中按照上述第三界面布局呈现第二内容。其中,第二内容在三界面布局和第二界面布局中的界面元素排布方式相同,第二内容在第三界面布局和第二界面布局中的界面元素显示样式不同。
也即是说,用户在调整第一窗口的尺寸的过程中,第一窗口的长宽比既可以改变,也可以保持不变。
结合第二方面,在一些实施例中,第二设备根据屏幕上显示的界面内容,得到第三显示数据,并将第三显示数据发送给第一设备。第一设备显示第二窗口,并根据第三显示数据在第二窗口中显示第五内容,第五内容与第二设备屏幕上显示的内容保持同步;第二窗口的长宽比根据第二设备的屏幕尺寸确定,第二窗口的长宽比保持不变。
其中,上述第一窗口和第二窗口均为多屏协同窗口。第一窗口可以称为子窗口。第二窗口可以称为主窗口。主窗口可以是第一设备和第二设备进行多屏协同时建立的第一窗口。用户可以通过主窗口中显示的内容实现对第二设备的反向控制。子窗口可以是利用主窗口上显示的窗口分身控件分离出来的与主窗口独立的窗口。
第三方面,本申请提供一种窗口尺寸调整方法。第二设备确定在第一窗口中显示第一内容,且第一内容按照第一界面布局呈现,第一窗口是显示在第一设备中用于显示第二设备的界面的窗口,第一界面布局适配具有第一尺寸的第一窗口。第二设备根据第一内容和第一界面布局,得到第一视频流,并向第一设备发送第一视频流,第一视频流用于在第一窗口中按照第一界面布局呈现第一内容。第二设备接收到第一消息,第一消息包含第一窗口的第一标识和第二尺寸,第一窗口在第一尺寸下的第一长宽比与在第二尺寸下的第二长宽比不同。根据第一消息,第二设备确定在第一窗口中显示第二内容,且第二内容按照第二界面布局呈现,第二内容与第一内容均包含第三内容,第二界面布局适配具有第二尺寸的第一窗口,第二界面布局不同于第一界面布局。第二设备根据第二内容和第一界面布局,得到第二视频流,并向第一设备发送第二视频流,第二视频流用于在第一窗口中按照第二界面布局呈现第一内容。
上述第一设备可以是平板电脑、PC等大屏设备。上述第二设备可以是手机等设备。第一设备和第二设备之间可建立有通信连接,实现多屏协同。
由上述方法可知,在第一设备和第二设备多屏协同的过程中,用户可以对第一设备上显示的第一窗口的尺寸进行调整。其中,用户可以将第一窗口的尺寸调整为多种不同的尺寸。第一窗口的长宽比可以改变。在上述第一窗口的尺寸变化后,第一窗口中显示的内容的布局也可以适应性调整,以适配尺寸变化后的第一窗口。
这样,用户可以通过调整第一窗口的尺寸,更好地为第一窗口、其它的多屏协同窗口以及一个或多个第一设备运行其它应用显示的窗口分配合理的显示区域,提高第一设备的屏幕空间使用率。用户可以将第一窗口的尺寸调整至自己想要的尺寸,这可以提升用户在使用设备进行多屏协同的体验。
上述第一窗口也可以称为多屏协同窗口。第一窗口用于显示第二设备的界面,具体可以指:第一窗口可用于显示在第二设备前台运行的应用的界面(即第二设备屏幕上显示的界面),或者,第二窗口可用于显示在第二设备后台运行的应用的界面。也即是说,第一窗口中显示的内容可以是由第二设备运行相应的应用,对该应用的用户界面进行图像合成、渲染等操作得到的。第一设备可以接收到第二设备对应用的用户界面进行图像合成、渲染等操作得到的结果,从而根据该结果在多屏协同窗口中显示第二设备的界面。
上述第一内容可以指一个应用界面中的界面元素。上述第二内容也可以指一个应用界面中的界面元素。例如,第一内容可以包含图6B所示子窗口540中新建信息界面的界面元素。第二内容可以包含图6C所示子窗口540中信息应用界面的界面元素。可以看出,第一内容和第二内容均可包含图6B所示子窗口540中新建信息界面的界面元素(即第三内容)。也即是说,第一窗口在尺寸调整前后显示的第一内容和第二内容是关联的,第一内容和第二内容包含至少一个相同界面元素。
上述第一视频流、上述第二视频流均可以为第二设备根据第一窗口的尺寸,确定与第一窗口适配的界面布局后,对应用的用户界面进行图像合成、渲染等操作得到的。第一视频流和第二视频流也可以称为显示数据等名称。第一设备可以根据来自第二设备的视频流(或显示数据)在第一窗口中显示相应的应用界面。
结合第三方面,在一些实施例中,第三内容为第一内容。其中,第二内容包含第一内容和第四内容,第一内容和第四内容均为第一应用的界面内容。
也即是说,第一窗口的尺寸调整后,第一窗口中显示的内容除了包含在尺寸调整前显示的界面元素(即第一内容),还可以包含一些新增的界面元素(即第四内容)。这样可以使得尺寸调整之后显示的内容的界面布局与第一窗口适配。
结合第三方面,在一些实施例中,第二界面布局为分栏布局,分栏布局表示在一个窗口中划分多行和/或多列显示一个应用界面上的界面内容,第二内容为第一应用中一个应用界面上的界面内容。上述分栏布局可以参考图6C所示子窗口540的区域542中的界面布局。例如,第一内容和第四内容均为信息应用的界面内容。其中,第一内容为信息应用中用于新建信息的界面元素。第二内容为信息应用中信息列表的界面元素。
在一些实施例中,在第二界面布局为分栏布局的情况下,上述第二内容可以是第二设备运行第一应用的一个activity得到的界面元素。即第二内容为第一应用中一个应用界面上的界面内容。
结合第三方面,在一些实施例中,第一应用支持第一功能,第一功能用于在一个窗口中显示同一个应用的两个应用界面;其中,第一内容为第一应用的第一应用界面上的界面内容,第四内容为第一应用的第二应用界面上的界面内容。
上述第一功能也可以称为平行视界功能,应用内分屏功能等等。
第一设备在第二尺寸的第一窗口中显示第一应用的两个应用界面可以参考图10C所示子窗口550中的显示内容。例如,第一应用为视频应用。第一内容可以为视频A播放界面中的界面元素。第四内容可以为视频应用主界面中的界面元素。上述第二界面布局也可以称为平行视界的布局。
在一些实施例中,在第二界面布局为平行视界的布局的情况下,上述第二内容可以是第二设备运行第一应用的两个activity得到的界面元素。其中,第一内容可以是第二设备运行第一应用的一个activity得到的界面元素。第四内容可以是第二设备运行第一应用的另一个activity得到的界面元素。即第一内容和第四内容分别为第一应用中两个不同应用界面的界面内容。
结合第三方面,在一些实施例中,第二设备向第一设备发送第二视频流之后,第二设备还接收到第二消息,第二消息包含第一标识和第三尺寸,第一窗口在第三尺寸下的长宽比与第二长宽比相同。根据第二消息,第二设备将第二内容的界面布局调整为第三界面布局,并得到第三视频流,第三界面布局适配具有第三尺寸的第一窗口,第三视频流用于在第一窗口中按照第三界面布局呈现第一内容。其中,第二内容在三界面布局和第二界面布局中的界面元素排布方式相同,第二内容在第三界面布局和第二界面布局中的界面元素显示样式不同。第二设备向第一设备发送第三视频流。
第四方面,本申请提供一种电子设备,该电子设备可包括存储器和处理器,其中,该存储器可用于存储计算机程序,该处理器可用于调用该计算机程序,使得该电子设备执行如第一方面或第三方面中任一可能的实现方法。
第五方面,本申请提供一种计算机可读存储介质,包括指令,当该指令在电子设备上运行,使得该电子设备执行如第一方面或第三方面中任一可能的实现方法。
第六方面,本申请提供一种计算机程序产品,该计算机程序产品可包含计算机指令,当该计算机指令在电子设备上运行,使得该电子设备执行如第一方面或第三方面中任一可能的实现方法。
第七方面,本申请提供一种芯片,该芯片应用于电子设备,该芯片包括一个或多个处理器,该处理器用于调用计算机指令以使得该电子设备执行如第一方面或第三方面中任一可能的实现方法。
可以理解地,上述第四方面提供的电子设备、第五方面提供的计算机可读存储介质、第六方面提供的计算机程序产品、第七方面提供的芯片均用于执行本申请实施例所提供的方法。因此,其所能达到的有益效果可参考对应方法中的有益效果,此处不再赘述。
附图说明
图1是本申请实施例提供的一种通信系统的架构图;
图2A是本申请实施例提供的一种电子设备100的结构示意图;
图2B是本申请实施例提供的一种电子设备200的结构示意图;
图3是本申请实施例提供的一种电子设备100的软件结构框图;
图4是本申请实施例提供的另一种通信系统的架构示意图;
图5A~图5E是本申请实施例提供的一些多屏协同的场景示意图;
图6A~图6C是本申请实施例提供的一些调整窗口尺寸的场景示意图;
图7A和图7B是本申请实施例提供的一些适配不同尺寸屏幕的应用界面布局的示意图;
图8A和图8B是本申请实施例提供的另一些调整窗口尺寸的场景示意图;
图8C和图8D是本申请实施例提供的一些适配不同尺寸屏幕的应用界面布局的示意图;
图9是本申请实施例提供的一种窗口尺寸调整的方法流程图;
图10A~图10C是本申请实施例提供的另一些调整窗口尺寸的场景示意图;
图11是本申请实施例提供的另一种窗口尺寸调整的方法流程图;
图12A~图12C是本申请实施例提供的另一些调整窗口尺寸的场景示意图;
图13A和图13B是本申请实施例提供的另一些调整窗口尺寸的场景示意图。
具体实施方式
下面结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。其中,在本申请实施例的描述中,以下实施例中所使用的术语只是为了描述特定实施例的目的,而并非旨在作为对本申请的限制。如在本申请的说明书和所附权利要求书中所使用的那样,单数表达形式“一种”、“所述”、“上述”、“该”和“这一”旨在也包括例如“一个或多个”这种表达形式,除非其上下文中明确地有相反指示。还应当理解,在本申请以下各实施例中,“至少一个”、“一个或多个”是指一个或两个以上(包含两个)。术语“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系;例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A、B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。
在本说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。术语“连接”包括直接连接和间接连接,除非另外说明。“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。
在本申请实施例中,“示例性地”或者“例如”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性地”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性地”或者“例如”等词旨在以具体方式呈现相关概念。
本申请以下实施例中的术语“用户界面(user interface,UI)”,是应用程序(application,APP)或操作系统(operating system,OS)与用户之间进行交互和信息交换的介质接口,它实现信息的内部形式与用户可以接受形式之间的转换。用户界面是通过java、可扩展标记语言(extensible markup language,XML)等特定计算机语言编写的源代码,界面源代码在电子设备上经过解析,渲染,最终呈现为用户可以识别的内容。用户界面常用的表现形式是图形用户界面(graphic user interface,GUI),是指采用图形方式显示的与计算机操作相关的用户界面。它可以是在电子设备的显示屏中显示的文本、图标、按钮、菜单、选项卡、文本框、对话框、状态栏、导航栏、Widget等可视的界面元素。
本申请提供一种窗口尺寸调整方法。该方法可以应用于图1所示包括两个互相通信的电子设备的通信系统10中。这两个电子设备可以分别为电子设备100和电子设备200。其中,电子设备200可以在屏幕上显示呈现电子设备100的界面的窗口。为了区别显示电子设备100的界面的窗口和电子设备200运行其它应用显示的窗口,本申请将上述显示电子设备100的界面的窗口称为多屏协同窗口。本申请实施例对多屏协同窗口的名称不作限定。
上述多屏协同窗口中显示的内容可以是由电子设备100运行相应的应用,对该应用的用户界面进行图像合成、渲染等操作得到的。电子设备200可以接收电子设备100对应用的用户界面进行图像合成、渲染等操作得到的结果,从而根据该结果在多屏协同窗口中显示电子设备100的界面。多屏协同窗口中显示的电子设备100的界面既可以是在电子设备100的前台运行的应用的用户界面,也可以是在电子设备100的后台运行的应用的用户界面。其中,若多屏协同窗口中显示在电子设备100的前台运行的应用的用户界面,则多屏协同窗口中显示的内容可以与电子设备100的屏幕上显示的内容相同。若多屏协同窗口中显示在电子设备100的后台运行的应用的用户界面,则多屏协同窗口中显示的内容可以与电子设备100的屏幕上显示的内容不同。在一些实施例中,电子设备200可以在屏幕上显示多个多屏协同窗口。这多个多屏协同窗口可以分别显示电子设备100中不同应用的用户界面。
在本申请提供的窗口尺寸调整方法中,电子设备200可以检测到调整多屏协同窗口尺寸的操作。电子设备200可以将多屏协同窗口调整后的尺寸发送给电子设备100。电子设备100可以确定该多屏协同窗口中显示的内容所属的应用,并按照多屏协同窗口调整后的尺寸调整该应用界面的布局,使得该应用界面的布局与尺寸调整后的多屏协同窗口适配。上述应用界面的布局可以包括应用中的文本、图标、按钮、菜单、选项卡等可视的界面元素的显示样式(如大小、颜色、形状等)以及在用户界面上的显示位置、排布方式。电子设备100可以将布局调整后的应用界面的数据发送给电子设备200。然后,电子设备200可以根据上述布局调整后的应用界面的数据,在尺寸调整后的多屏协同窗口中显示上述布局调整后的应用界面。
也即是说,在电子设备100和电子设备200多屏协同的过程中,用户可以对电子设备200上显示的多屏协同窗口的尺寸进行调整。其中,用户可以将多屏协同窗口的尺寸调整为多种不同的尺寸。多屏协同窗口的长宽比可以改变。在上述多屏协同窗口的尺寸变化后,多屏协同窗口中显示的应用界面的布局也可以适应性调整,以适配尺寸变化后的多屏协同窗口。
这样,用户可以通过调整多屏协同窗口的尺寸,更好地为一个或多个多屏协同窗口以及一个或多个电子设备200运行其它应用显示的窗口分配合理的显示区域,提高电子设备200的屏幕空间使用率。用户可以将多屏协同窗口的尺寸调整至自己想要的尺寸,这可以提升用户在使用设备进行多屏协同的体验。
下面对图1所示的通信系统10进行具体介绍。
通信系统10中的电子设备100和电子设备200均可以是搭载或者其它操作系统的电子设备。例如,电子设备100可以是手机、可穿戴设备等电子设备。电子设备200可以是PC、平板电脑、手机、车载设备、增强现实(augmented reality,AR)/虚拟显示(virtual reality,VR)设备、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本、个人数字助理(personaldigital assistant,PDA)、显示器、电视等具有显示功能的电子设备。本申请实施例对电子设备100和电子设备200的具体类型不作限定。
在一些实施例中,电子设备100和电子设备200可以为相同类型的电子设备。或者,电子设备100和电子设备200可以为不同类型的电子设备。在本申请后续实施例中,具体以电子设备100为手机、电子设备200为PC,在PC上显示呈现手机界面的一个或多个窗口作为示例进行介绍。那么,上述多屏协同窗口也可以称为手机窗口。
电子设备100和电子设备200之间可建立有通信连接。上述通信连接可以包括有线连接或者无线连接等多种不同连接方式。
示例性地,电子设备100和电子设备200之间的有线连接可以是通过通用串行总线(universal serial bus,USB)数据线连接。或者,电子设备100和电子设备200之间的无线连接可以是通过无线保真(wireless fidelity,Wi-Fi)连接的方法连接。或者,电子设备100和电子设备200均可支持近距离无线通信技术(near field communication,NFC)。借助于NFC,电子设备100和电子设备200之间可以通过“碰一碰”功能进行靠近连接。或者,电子设备100和电子设备200可以通过蓝牙扫码连接的功能,建立蓝牙通信连接。或者,随着通信技术的发展,通信带宽和速率逐渐提高。第五代(5th generation,5G)移动通信技术、第六代(6th generation,6G)移动通信技术等高速率通信方式逐渐普及。电子设备100和电子设备200可以通过上述5G移动通信技术、6G移动通信技术等建立通信连接。本申请实施例对电子设备100和电子设备200之间的通信连接方式不作限定。
电子设备100和电子设备200之间建立通信连接之后,可以实现多屏协同的功能。其中,电子设备200可以在屏幕上显示呈现电子设备100的界面的窗口(即多屏协同窗口)。电子设备100和电子设备200可以通过上述通信连接进行数据传输,来支持电子设备200显示多屏协同窗口。
示例性地,在一些实施例中,电子设备100和电子设备200之间传输的数据可以包括用于在多屏协同窗口显示应用界面的相关数据。例如,电子设备200在屏幕上显示的一个多屏协同窗口中的内容为电子设备100的镜像。即这一个多屏协同窗口中显示的内容可以与电子设备100的屏幕上显示的内容保持一致。当电子设备100的屏幕上显示的内容变化,电子设备100可以对变化后的用户界面进行编码,并传输给电子设备200。然后,电子设备200可以在这一个多屏协同窗口中显示上述变化后的用户界面。这样,这一个多屏协同窗口中显示的内容可以与电子设备100的屏幕上显示的内容保持一致。
在一些实施例中,上述传输的数据还可以包括意图类指令。意图类指令可以包括触摸事件(touch event)对应的操作指令。例如,启动应用、关闭应用、移动控件、拖拽控件、点击控件、双击控件、右击控件、缩放多屏协同窗口等事件的操作指令。示例性地,电子设备200在屏幕上显示的一个多屏协同窗口中的内容为电子设备100的镜像。电子设备200检测到作用在多屏协同窗口中启动XX应用的操作。XX应用可以是电子设备100中的一个应用。电子设备200可以将启动XX应用的操作指令发送给电子设备100。电子设备100可以启动XX应用,在屏幕上显示XX应用的用户界面。其中,电子设备100可以对XX应用的用户界面进行编码,并传输给电子设备200。然后,电子设备200可以在这一个多屏协同窗口中显示上述XX应用的用户界面。这样,用户可以通过在多屏协同窗口中进行操作,实现对电子设备100的反向控制,使得多屏协同窗口中显示的内容与电子设备100的屏幕上显示的内容保持一致。再例如,电子设备200检测到作用在多屏协同窗口上缩放多屏协同窗口的操作,可以将该操作缩放的多屏协同窗口的标识,以及缩放后的尺寸发送给电子设备100。电子设备100可以根据该多屏协同窗口的标识确定该多屏协同窗口中显示的应用,并按照上述缩放后的尺寸对多屏协同窗口中显示的应用的用户界面进行布局调整。电子设备100可以对上述布局经过调整的应用的用户界面进行编码,并传输给电子设备200。然后,电子设备200可以在多屏协同窗口中显示与尺寸调整后的多屏协同窗口适配的应用界面。
在一些实施例中,上述传输的数据还可以包括电子设备100和电子设备200之间定义的可解析的数据格式等。例如,上述用于在多屏协同窗口显示应用界面的相关数据可以按照视频流的格式进行传输。电子设备100和电子设备200之间可定义有对视频流进行编码和解码的规则。电子设备100可以对视频流进行编码,并将编码后的视频流发送给电子设备200。上述编码后的视频流中可包括用于解码该视频流的数据格式。当接收到上述编码后的视频流,电子设备200可以根据与电子设备100之间定义的解码视频流的规则进行解码,得到上述视频流,从而在多屏协同窗口中显示电子设备100中应用的用户界面。
本申请实施例对电子设备100和电子设备200在多屏协同过程中传输的数据类型不作限定。
下面介绍本申请实施例提供的一种电子设备100的结构示意图。
图2A示例性示出了本申请实施例提供的电子设备100的结构示意图。
如图2A所示,电子设备100可以包括处理器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,以及用户标识模块(subscriber identification module,SIM)卡接口195等。
可以理解的是,本申请实施例示意的结构并不构成对电子设备100的具体限定。在本申请另一些实施例中,电子设备100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,存储器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
其中,控制器可以是电子设备100的神经中枢和指挥中心。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。
USB接口130是符合USB标准规范的接口,具体可以是Mini USB接口,Micro USB接口,USB Type C接口等。USB接口130可以用于连接充电器为电子设备100充电,也可以用于电子设备100与外围设备之间传输数据。也可以用于连接耳机,通过耳机播放音频。
充电管理模块140用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。充电管理模块140为电池142充电的同时,还可以通过电源管理模块141为电子设备供电。
电源管理模块141用于连接电池142,充电管理模块140与处理器110。电源管理模块141接收电池142和/或充电管理模块140的输入,为处理器110,内部存储器121,外部存储器,显示屏194,摄像头193,和无线通信模块160等供电。
电子设备100的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
天线1和天线2用于发射和接收电磁波信号。电子设备100中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
移动通信模块150可以提供应用在电子设备100上的包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块150可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,LNA)等。移动通信模块150可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块150还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。
无线通信模块160可以提供应用在电子设备100上的包括无线局域网(wirelesslocal area networks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络),蓝牙(bluetooth,BT),全球导航卫星系统(global navigation satellite system,GNSS),调频(frequency modulation,FM),近距离无线通信技术(near field communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。无线通信模块160可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块160经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器110。无线通信模块160还可以从处理器110接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
电子设备100通过GPU,显示屏194,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏194和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。
显示屏194用于显示图像,视频等。在一些实施例中,电子设备100可以包括1个或N个显示屏194,N为大于1的正整数。
电子设备100可以通过ISP,摄像头193,视频编解码器,GPU,显示屏194以及应用处理器等实现拍摄功能。
ISP用于处理摄像头193反馈的数据。例如,拍照时,打开快门,光线通过镜头被传递到摄像头感光元件上,光信号转换为电信号,摄像头感光元件将所述电信号传递给ISP处理,转化为肉眼可见的图像。
摄像头193用于捕获静态图像或视频。在一些实施例中,电子设备100可以包括1个或N个摄像头193,N为大于1的正整数。
数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。例如,当电子设备100在频点选择时,数字信号处理器用于对频点能量进行傅里叶变换等。
NPU为神经网络(neural-network,NN)计算处理器,通过借鉴生物神经网络结构,例如借鉴人脑神经元之间传递模式,对输入信息快速处理,还可以不断的自学习。通过NPU可以实现电子设备100的智能认知等应用,例如:图像识别,人脸识别,语音识别,文本理解等。
外部存储器接口120可以用于连接外部存储卡,例如Micro SD卡,实现扩展电子设备100的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
内部存储器121可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。处理器110通过运行存储在内部存储器121的指令,从而执行电子设备100的各种功能应用以及数据处理。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储电子设备100使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,UFS)等。
电子设备100可以通过音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,以及应用处理器等实现音频功能。例如音乐播放,录音等。
音频模块170用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。音频模块170还可以用于对音频信号编码和解码。在一些实施例中,音频模块170可以设置于处理器110中,或将音频模块170的部分功能模块设置于处理器110中。扬声器170A,也称“喇叭”,用于将音频电信号转换为声音信号。受话器170B,也称“听筒”,用于将音频电信号转换成声音信号。麦克风170C,也称“话筒”,“传声器”,用于将声音信号转换为电信号。耳机接口170D用于连接有线耳机。
传感器模块180可以包括压力传感器,陀螺仪传感器,气压传感器,磁传感器,加速度传感器,距离传感器,接近光传感器,指纹传感器,温度传感器,触摸传感器,环境光传感器,骨传导传感器等。
按键190包括开机键,音量键等。马达191可以产生振动提示。指示器192可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息,未接来电,通知等。
SIM卡接口195用于连接SIM卡。SIM卡可以通过插入SIM卡接口195,或从SIM卡接口195拔出,实现和电子设备100的接触和分离。电子设备100可以支持1个或N个SIM卡接口,N为大于1的正整数。电子设备100通过SIM卡和网络交互,实现通话以及数据通信等功能。在一些实施例中,电子设备100采用eSIM,即:嵌入式SIM卡。eSIM卡可以嵌在电子设备100中,不能和电子设备100分离。
图2A示出了电子设备100为手机时可能的硬件结构示意图。电子设备200为PC时,可以具有图2A示出的全部或部分硬件结构,或者包括比图2A中更多的硬件结构。本申请实施例对此不作限定。
下面介绍本申请实施例提供的一种电子设备200的结构示意图。
图2B示例性示出了本申请实施例提供的电子设备200的结构示意图。
如图2B所示,电子设备200至少可以包括处理器210、存储器220、通信装置230、显示屏240。在一些实施例中,电子设备200还可以包括外设设备250。上述外设设备250可包括但不限于以下一项或多项:鼠标、键盘、扬声器、麦克风。
可以理解的,图2B所示的电子设备200的结构并不构成对电子设备200的限定。在一些实施例中,电子设备200可以包括比图2B所示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图2B所示的部件可以以硬件,软件或者软件和硬件的组合实现。
其中,处理器210可以包括一个或多个处理单元,处理器210可以用于对电子设备200的动作进行控制管理。
存储器220可用于存储程序代码和数据。
通信装置230可用于电子设备200的各个内部模块之间的通信,或者电子设备200与其它设备(如电子设备100)之间的通信等。
示例性地,电子设备200可以通过有线连接的方式和其它设备通信。通信装置230可以包括接口。例如,USB接口。该USB接口可以参考前述图2A中对USB接口130的描述。在一些实施例中,通信装置230可以包括以下一项或多项:音频器件、射频电路、蓝牙芯片、Wi-Fi芯片、NFC模块,以实现电子设备200与其它设备之间的交互。
显示屏240可用于显示图像、视频等。例如,显示屏240可用于显示呈现电子设备100的界面的窗口。显示屏240也可称为“屏幕”。
在本申请实施例中,处理器210可执行存储器220存储的计算机执行指令,以使电子设备200和电子设备100组成相互通信的通信系统,进一步调整显示屏240上呈现电子设备100的界面的多屏协同窗口的尺寸。
电子设备100的软件系统可以采用系统的分层架构,鸿蒙系统(HarmonyOS)架构、事件驱动架构,微核架构,微服务架构,或云架构等软件系统。本申请实施例以分层架构的/>系统为例,示例性说明电子设备100的软件结构。
图3示例性示出了本申请实施例提供的电子设备100的软件结构框图。
分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将Android系统分为四层,从上至下分别为应用程序层,应用程序框架层,安卓运行时(Android runtime)和系统库,以及内核层。
应用程序层可以包括一系列应用程序包。
如图3所示,应用程序包可以包括相机,图库,日历,通话,地图,导航,WLAN,蓝牙,音乐,短信息,多屏协同助手、分布式移动感知平台(distributed mobile sensingdevelopment platform,DMSDP)等应用程序。
上述多屏协同助手可用于电子设备100与其它设备(如电子设备200)实现多屏协同的功能。通过上述多屏协同助手,电子设备100可以将自己运行的应用的用户界面显示在其他设备的屏幕上。上述多屏协同助手也可以称为PC助手等名称。
上述DMSDP可用于管理多屏协同窗口对应的画布(display)。多屏协同窗口对应的display可用于渲染、绘制呈现电子设备100的界面的内容。例如,DMSDP可以管理display的尺寸、在display上渲染、绘制的内容的布局等。在一些实施例中,上述DMSDP还可用于提供分布式器件虚拟化能力和调用CAST+接口进行投屏的能力。上述分布式器件虚拟化能力可以指构筑器件虚拟化平台,将其它设备的各类器件(如摄像头、显示屏、麦克风、扬声器等)虚拟化为本地设备的器件而延伸使用的能力,以及将自己器件共享给其它设备使用的能力。例如,分布式器件虚拟化能力可以包括音频虚拟化能力。该音频虚拟化能力可以将其它设备(如电子设备200)的扬声器虚拟化为本地设备的器件,进而将电子设备100侧的音频传输至电子设备200进行播放。上述CAST+接口可以指用于使用投屏引擎(cast engine)的接口。cast engine可以实现手机与大屏类设备(如平板电脑、PC等)的快速、稳定、低时延的协同,在安全性和稳定性方面,具有较强的抗干扰能力。cast engine可以为用户在多屏协同的场景提供优质体验。其中,cast engine可以提供传输视频流,反向控制等功能。
示例性地,电子设备100与电子设备200多屏协同。电子设备100可以通过DMSDP提供的视频虚拟化能力,将电子设备200的显示屏虚拟化为本地设备的器件,进而在电子设备200的显示屏上显示电子设备100运行应用的用户界面。电子设备100可以将应用界面的图像编码成视频流,并通过cast engine将视频流发送给电子设备200。电子设备200可以将在多屏协同窗口检测到的操作对应的指令通过cast engine发送给电子设备100。然后,电子设备100可以执行该操作对应的指令。这样用户可以在电子设备200显示的多屏协同窗口,实现对电子设备100的反向控制。
应用程序框架层为应用程序层的应用程序提供应用编程接口(applicationprogramming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。
如图3所示,应用程序框架层可以包括窗口管理器,内容提供器,视图系统,电话管理器,资源管理器,通知管理器,活动管理器,多屏框架服务模块,平行视界功能模块等。
窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。
内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。所述数据可以包括视频,图像,音频,拨打和接听的电话,浏览历史和书签,电话簿等。
视图系统包括可视控件,例如显示文字的控件,显示图片的控件等。视图系统可用于构建应用程序。显示界面可以由一个或多个视图组成的。例如,包括短信通知图标的显示界面,可以包括显示文字的视图以及显示图片的视图。
电话管理器用于提供电子设备100的通信功能。例如通话状态的管理(包括接通,挂断等)。
资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等等。
通知管理器使应用程序可以在状态栏中显示通知信息,可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。比如通知管理器被用于告知下载完成,消息提醒等。通知管理器还可以是以图表或者滚动条文本形式出现在系统顶部状态栏的通知,例如后台运行的应用程序的通知,还可以是以对话窗口形式出现在屏幕上的通知。例如在状态栏提示文本信息,发出提示音,电子设备振动,指示灯闪烁等。
活动管理器用于负责管理活动(activity),负责系统中各组件的启动、切换、调度以及应用程序的管理和调度等工作。活动管理器可供上层应用调用以打开对应的activity。
多屏框架服务模块可用于管理应用的任务栈(task stack),以及对图像进行合成、编码等。其中,一个应用通常是由多个activity组成的。任务栈可用于存放电子设备100开启的activity。任务栈是一个栈结构,具有后进先出的特性。一个应用可至少对应有一个任务栈。当电子设备100开启一个应用,电子设备100可以为这一个应用分配一个任务栈。每新开启一个应用的activity,电子设备100可以在这一个应用对应的任务栈中添加一个activity组件。每退出一个应用的activity,电子设备100可以在这一个应用对应的任务栈中减少一个activity组件。这样,电子设备100可以通过多屏框架服务模块确定一个应用中各个activity的生命周期,以及在多屏协同窗口中显示的是哪一个activity对应的界面。另外,电子设备100可以通过多屏框架服务模块对应用界面的图像进行合成、编码等操作,得到用于呈现应用界面的视频流。然后,电子设备100可以将上述视频流发送给其它电子设备,从而实现多屏协同的功能。
不限于被划分至上述应用程序框架层,上述多屏框架服务模块也可以是位于应用程序层和应用程序框架层之间的一个分层。多屏框架服务模块也可以称为“多屏框架服务层”。本申请实施例对此不作限定。
在一些实施例中,多屏框架服务模块还可以提供窗口管理的功能、窗口坐标同步的功能等。上述窗口管理的功能可以包括管理电子设备100上待显示窗口的尺寸,判断该待显示窗口中的内容等。上述待显示窗口可以指多屏协同场景中,显示在电子设备200上呈现电子设备100的界面的多屏协同窗口。可以理解的,上述待显示窗口中的内容可以包括电子设备100的屏幕上正在显示的界面,还可以包括电子设备100后台运行的一个或多个应用的界面。上述窗口坐标同步的功能可以指在多屏协同场景中,获取上述待显示窗口在被投屏设备(如电子设备200)显示屏上的坐标。上述被投屏设备可以指在多屏协同场景中,显示多屏协同窗口的设备。
平行视界功能模块可用于提供平行视界功能,将应用以平行视界的样式显示。上述平行视界的样式可以表示一个应用内的两个窗口在屏幕的左右同时显示的样式。上述一个应用内的两个窗口可用于分别显示这一个应用中两个独立的activity对应的界面。例如,一个购物类应用以平行视界的样式显示可以为:这一个购物类应用的两个窗口在屏幕的左右同时显示。其中,在屏幕左侧显示的一个窗口可用于显示这一个购物类应用中商品信息列表的用户界面。在屏幕右侧显示的一个窗口可用于显示这一个购物类应用中一款商品详细信息的用户界面。
在一些实施例中,应用程序框架层还可包括消息管理器。该消息管理器可用于电子设备100中的不同应用之间进行消息传递,电子设备100和其它设备(如电子设备200)之间进行消息传递等。
Android Runtime包括核心库和虚拟机。Android runtime负责安卓系统的调度和管理。
核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。
应用程序层和应用程序框架层运行在虚拟机中。虚拟机将应用程序层和应用程序框架层的java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理,堆栈管理,线程管理,安全和异常的管理,以及垃圾回收等功能。
系统库可以包括多个功能模块。例如:表面管理器(surface manager),媒体库(Media Libraries),三维图形处理库(例如:OpenGL ES),2D图形引擎(例如:SGL)等。
表面管理器用于对显示子系统进行管理,并且为多个应用程序提供了2D和3D图层的融合。
媒体库支持多种常用的音频,视频格式回放和录制,以及静态图像文件等。媒体库可以支持多种音视频编码格式,例如:MPEG4,H.264,MP3,AAC,AMR,JPG,PNG等。
三维图形处理库用于实现三维图形绘图,图像渲染,合成,和图层处理等。
2D图形引擎是2D绘图的绘图引擎。
内核层是硬件和软件之间的层。内核层至少包含显示驱动,摄像头驱动,音频驱动,传感器驱动。在一些实施例中,内核层还可以包括蓝牙驱动、Wi-Fi驱动、NFC驱动等,以便于电子设备100与其它设备进行通信。
图3示出了电子设备100的一种可能的软件结构示意图。电子设备200可以具有图3示出的全部或部分软件模块,或者包括比图3中更多的软件模块。本申请实施例对此不作限定。
图4示例性示出了本申请实施例提供的通信系统10的另一种架构示意图。
如图4所示,通信系统10可包括电子设备100和电子设备200。电子设备100可包含多屏协同助手410、多屏框架服务模块420、平行视界功能模块430、分布式移动感知平台(distributed mobile sensing development platform,DMSDP)440。电子设备200可包含多屏协同助手450和DMSDP460。
由图4可以看出,电子设备100和电子设备200中均可安装有多屏协同助手。电子设备100和电子设备200可以通过多屏协同助手实现多屏协同,以及调整多屏协同窗口尺寸的功能。在一些实施例中,电子设备100中安装的多屏协同助手410和电子设备200中安装的多屏协同助手450可以是相同的应用。在另一些实施例中,电子设备100中安装的多屏协同助手410和电子设备200中安装的多屏协同助手450可以是不同的应用。例如,多屏协同助手410可以是适配电子设备100(即多屏协同场景中界面被显示在其它设备屏幕上的设备)的应用。多屏协同助手410也可以称为PC助手。多屏协同助手450可以是适配电子设备200(即多屏协同场景中在屏幕上显示其它设备的界面的设备)的应用。多屏协同助手450也可以称为PC管家、EMUI桌面等名称。在一些实施例中,多屏协同助手410可以为电子设备100中预置的应用,可以没有对应的桌面应用图标。多屏协同助手450在电子设备200中可以有对应的桌面应用图标。本申请实施例对上述多屏协同助手410和多屏协同助手450的实现方法不作限定。
在电子设备100中,多屏协同助手410可以负责与电子设备200协商多屏协同窗口的尺寸,处理电子设备100和电子设备200之间的消息交互等功能。多屏协同助手410可包含窗口状态监听模块411、PC侧消息处理模块412、display尺寸协商模块413。
其中,窗口状态监听模块411可用于监听在电子设备200上显示的多屏协同窗口的状态。例如,窗口状态监听模块411可以监听多屏协同窗口是否处于最小化状态。多屏协同窗口处于最小化状态时,电子设备200可以在屏幕上显示用于标识多屏协同窗口的控件,以便用户通过该控件将多屏协同窗口再次显示在电子设备200的屏幕上。当检测到多屏协同窗口处于最小化状态,电子设备100可以暂停向电子设备200传输用于在该多屏协同窗口显示图像的视频流。再例如,窗口状态监听模块411还可以监听多屏协同窗口是否处于最大化状态、是否被关闭、多屏协同窗口中显示的应用是否改变等等。
PC侧消息处理模块412可用于处理来自电子设备200的消息。例如,作用在多屏协同窗口上的操作对应的操作指令、多屏协同窗口的标识、多屏协同窗口的尺寸、多屏协同窗口在电子设备200屏幕上的坐标等等。
display尺寸协商模块413可用于与电子设备200协商多屏协同窗口对应的display的尺寸。多屏协同窗口可包含用于显示电子设备100的界面的区域,以及用于显示控制多屏协同窗口的控件(如最小化控件、最大化控件、关闭控件等)的窗口控制区域。多屏协同窗口对应的display的尺寸可以为多屏协同窗口中用于显示电子设备100的界面的区域的尺寸。可以理解的,当用户调整多屏协同窗口的尺寸,该多屏协同窗口对应的display的尺寸也会随之改变。
多屏框架服务模块420可用于管理应用的任务栈(task stack),以及对图像进行合成、编码等。多屏框架服务模块420可包括图像合成管理模块421、任务栈状态监听模块422。其中,图像合成管理模块421可用于对应用界面的图像进行合成、编码等操作,得到用于呈现应用界面的视频流。上述应用界面可以包括在电子设备100的前台运行的应用的用户界面(即电子设备100的屏幕上显示的用户界面),还可以包括在电子设备100的后台运行的应用的用户界面。任务栈状态监听模块422可用于管理应用的任务栈。多屏框架服务模块420具体可以参考前述图3中多屏框架服务模块的介绍。这里不再赘述。
平行视界功能模块430可用于提供平行视界功能,将应用以平行视界的样式显示。平行视界功能模块430可包含多display支持模块431和应用布局适配模块432。
其中,多display支持模块431可用于提供在多个display上将应用以平行视界的样式进行显示的能力。也即是说,在多屏协同的场景中,电子设备200可以显示多个多屏协同窗口。这多个多屏协同窗口中的应用界面均可以呈现平行视界的样式。
示例性地,电子设备200的屏幕上显示有两个多屏协同窗口:多屏协同窗口1和多屏协同窗口2。多屏协同窗口1用于显示电子设备100中购物类应用的用户界面。其中,多屏协同窗口1的左侧可显示有上述购物类应用中商品信息列表的用户界面,右侧可显示有上述购物类应用中一款商品详细信息的用户界面。多屏协同窗口1中左侧和右侧显示的用户界面可以是独立的,用户可以分别对这两个用户界面上的相关控件进行操作。多屏协同窗口2用于显示电子设备100中视频类应用的用户界面。其中,多屏协同窗口2的左侧可显示有上述视频类应用中视频列表的用户界面,右侧可显示有上述视频类应用中一个视频播放的用户界面。多屏协同窗口2中左侧和右侧显示的用户界面可以是独立的,用户可以分别对这两个用户界面上的相关控件进行操作。
应用布局适配模块432可用于根据display的尺寸调整应用界面的布局,使得应用界面的布局能够适配以平行视界的样式进行显示的display。
DMSDP440可用于提供管理多屏协同窗口对应的display的能力、分布式器件虚拟化能力和调用CAST+接口进行投屏的能力等。DMSDP440可包括反控逻辑处理模块441、display尺寸管理模块442。其中,反控逻辑处理模块441可用于用户通过电子设备200上显示的多屏协同窗口实现对电子设备100的反向控制。display尺寸管理模块442可用于对各个多屏协同窗口对应的display的尺寸进行管理,例如更新display的尺寸,以便于电子设备100在尺寸更新之后的display上调整应用界面的布局。DMSDP440可以参考前述图3所示DMSDP的介绍。这里不再赘述。
不限于图4所示电子设备100包含的软件模块,电子设备100还可以包含更多的软件模块。具体可以参考前述图3所示电子设备100的软件结构框图。
在电子设备200中,多屏协同助手450可以负责与电子设备100协商多屏协同窗口的尺寸,处理电子设备100和电子设备200之间的消息交互、在多屏协同窗口中显示电子设备100的界面、对视频流进行解码等功能。多屏协同助手450可包括手机侧消息处理模块451、窗口状态同步模块452、display尺寸协商模块453、多窗口布局管理模块454和多display解码模块455。
其中,手机侧消息处理模块451可用于处理来自电子设备100的消息。例如,用于显示电子设备100的界面的视频流、多屏协同窗口中显示的应用的名称和/或图标、多屏协同窗口的控制信息(如多屏协同窗口中显示的电子设备100的界面是否可以旋转)等等。本申请实施例对上述消息的内容不作限定。
窗口状态同步模块452可用于将多屏协同窗口的状态(如尺寸、显示位置、显示内容、是否最小化或最大化等)同步给电子设备100。这样,电子设备100可以根据多屏协同窗口的状态确定多屏协同窗口中显示内容的布局,使得多屏协同窗口中显示内容的与多屏协同窗口适配。
display尺寸协商模块453可用于与电子设备100协商多屏协同窗口对应的display的尺寸。
多窗口布局管理模块454可用于在开启多个多屏协同窗口的情况下,管理这多个多屏协同窗口在电子设备200屏幕上的显示位置。示例性地,电子设备200的屏幕上显示有一个多屏协同窗口。响应于增加一个多屏协同窗口的操作,电子设备200可以在屏幕上显示两个多屏协同窗口。其中,新增加的多屏协同窗口在电子设备200屏幕上的显示位置可以由上述多窗口布局管理模块454确定。例如,多窗口布局管理模块454可以将新增加的多屏协同窗口显示在已有多屏协同窗口的右侧,且两个多屏协同窗口在屏幕上互不遮挡。
多display解码模块455可用于提供对多路视频流进行解码的能力。上述多路视频流可分别用于在不同的多屏协同窗口对应的display上渲染对应的图像。也即是说,电子设备200可以同时显示多个多屏协同窗口。每一个多屏协同窗口均可对应有一个display。其中,电子设备100可以将应用的用户界面对应的图像编码成视频流。那么,对于在上述多个多屏协同窗口展示的多个应用的用户界面,电子设备100可以生成多路视频流。电子设备100可以将这多路视频流发送给电子设备200。然后,电子设备200可以通过多display解码模块455对这多路视频流进行解码,从而在多个多屏协同窗口对应的display上显示电子设备100中不同应用的用户界面。
DMSDP460可用于提供管理多屏协同窗口对应的display的能力、分布式器件虚拟化能力和调用CAST+接口进行投屏的能力等。DMSDP460可包括反控逻辑处理模块461、display尺寸管理模块462。DMSDP460可以参考前述DMSDP440的介绍。
不限于图4所示电子设备200包含的软件模块,电子设备200还可以包含更多的软件模块。其中,电子设备200的软件结构可以采用系统、/>系统、/>系统等软件系统。本申请实施例对此不作限定。
可以理解的,图4所示电子设备100和电子设备200中各个软件模块的划分仅为本申请实施例的示例性说明,电子设备100和电子设备200中的软件模块还可以具有其它的划分方式,只要基于本申请提供的同一发明思想,都在本申请保护范围内。
这里对在实现调整多屏协同窗口尺寸的过程中,电子设备100和电子设备200的各个软件模块之间的交互进行介绍。
示例性地,电子设备200的多屏协同助手450可以检测到调整多屏协同窗口尺寸的操作。多屏协同助手450可以将尺寸被调整的多屏协同窗口的标识以及调整之后的尺寸发送给电子设备100的多屏协同助手410。其中,多屏协同助手450和多屏协同助手410之间的数据传输可以是借助电子设备100和电子设备200的通信装置完成的。本申请实施例对上述数据传输的实现方式不作限定。多屏协同助手410接收到多屏协同窗口的标识以及调整之后的尺寸后,可以确定该标识指示的多屏协同窗口中显示的应用,以及多屏协同窗口对应的display的尺寸。多屏协同助手410可以指示DMSDP440调整该多屏协同窗口对应的display的尺寸。然后,DMSDP440可以调用多屏框架服务模块420调整多屏协同窗口对应的display的尺寸。多屏框架服务模块420可以根据调整后的尺寸调整该多屏协同窗口中显示的应用界面的布局,使得应用界面的布局适配尺寸调整后的display。多屏框架服务模块420可以对布局调整后的应用界面编码,得到视频流,并将该视频流发送给DMSDP440。DMSDP440可以将视频流发送给电子设备200的DSMDP460。DMSDP460可以将视频流发送给多屏协同助手450。电子设备200的多屏协同助手450可以显示尺寸调整后的多屏协同窗口,并根据接收到的视频流在该多屏协同窗口的display上显示相应的应用界面。
另外,除了display,多屏协同窗口中还可包括窗口控制区域。窗口控制区域可用于显示用于控制多屏协同窗口的控件。在一些实施例中,在多屏协同的场景中,电子设备100除了向电子设备200发送视频流,电子设备100中的多屏协同助手410还可以向电子设备200中的多屏协同助手450发送多屏协同窗口的控制信息。例如,多屏协同窗口中显示的电子设备100的界面可以旋转,即支持竖屏的显示状态与横屏的显示状态之间的切换。多屏协同助手410可以向多屏协同助手450发送指示多屏协同窗口可旋转的消息。根据该消息,多屏协同助手450可以在多屏协同窗口的窗口控制区域显示旋转控件,以便于用户对多屏协同窗口进行旋转操作。
在一些实施例中,当接收到多屏协同助手450发送的指示多屏协同窗口的尺寸改变的消息,多屏协同助手410可以判断该多屏协同窗口中显示的应用是否支持平行视界功能,以及调整之后的尺寸是否适合应用以平行视界的样式显示。当判断出多屏协同窗口中显示的应用支持平行视界功能,且调整之后的尺寸适合应用以平行视界的样式显示,多屏协同助手410可以指示平行视界功能模块430调整多屏协同窗口中显示应用的布局。平行视界功能模块430可以根据调整后的display的尺寸,调整应用界面的布局,使得应用以平行视界的样式显示且应用界面的布局适配尺寸调整后的display。然后,平行视界功能模块430可以将布局调整后的应用界面发送给多屏框架服务模块420。多屏框架服务模块420可以对上述以平行视界的样式显示的应用界面编码,得到视频流,并将该视频流通过DMSDP440发送给电子设备200的DMSDP460。进一步的,DMSDP460可以将视频流发送给多屏协同助手450。这样,电子设备200可以在尺寸调整后的多屏协同窗口中显示上述具有平行视界的样式的应用界面。
需要进行说明的是,应用界面的布局适配尺寸调整后的多屏协同窗口,即可以表示应用界面的布局适配尺寸调整后的多屏协同窗口对应的display。
由图4所示的通信系统可知,在电子设备100和电子设备200多屏协同的过程中,用户可以对电子设备200上显示的多屏协同窗口的尺寸进行调整。其中,用户可以将多屏协同窗口的尺寸调整为多种不同的尺寸。多屏协同窗口的长宽比可以改变。在上述多屏协同窗口的尺寸变化后,多屏协同窗口中显示的应用界面的布局也可以适应性调整,以适配尺寸变化后的多屏协同窗口。这样,用户可以通过调整多屏协同窗口的尺寸,更好地为一个或多个多屏协同窗口以及一个或多个电子设备200运行其它应用显示的窗口分配合理的显示区域,提高电子设备200的屏幕空间使用率。用户可以将多屏协同窗口的尺寸调整至自己想要的尺寸,这可以提升用户在使用设备进行多屏协同的体验。
以下实施例将基于上述电子设备100和电子设备200组成的通信系统,介绍本申请实施例提供的窗口尺寸调整方法。下面结合附图和应用场景,进行具体阐述。
图5A~图5E示例性示出了电子设备100和电子设备200多屏协同的场景。
如图5A所示,电子设备100和电子设备200之间建立有通信连接,可以进行数据传输,实现多屏协同的功能。可以理解的,电子设备100和电子设备100之间建立通信连接的实现方式可以参考前述图1中的实施例。这里不再赘述。
电子设备100可以显示用户界面510。用户界面510可以是电子设备100的主界面。用户界面510上可包括状态栏、应用程序图标。其中,上述状态栏可包括移动通信信号强度指示符、Wi-Fi信号强度指示符、当前剩余电量、时间等。上述应用程序图标可以包括视频图标、备忘录图标、音乐图标、信息图标等等。上述应用程序图标可用于触发电子设备100开启对应的应用。在一些实施例中,电子设备100还可以在用户界面510显示其它应用的用户界面。电子设备200可以显示多屏协同窗口520。多屏协同窗口520可用于显示电子设备100的界面。
在一些实施例中,多屏协同窗口520中的内容为电子设备100的镜像。即多屏协同窗口520中显示的内容可以与电子设备100的屏幕上显示的内容保持一致。当电子设备100的屏幕上显示的内容发生变化,多屏协同窗口520中显示的内容可以随之变化。多屏协同窗口520也可以称为主窗口520。
这里对主窗口520进行具体介绍。
如图5B所示,主窗口520可以包括用于显示电子设备100界面的区域522,以及窗口控制区域。其中,窗口控制区域可以包括顶端功能区域521和底部区域523。用于显示电子设备100界面的区域522可以位于顶端功能区域521和底部区域523的中间。
用于显示电子设备100界面的区域522上可以显示电子设备100的屏幕上显示的内容,例如主界面。这里对电子设备100的主界面不再赘述。可以理解的,用于显示电子设备100界面的区域522即为主窗口520对应的display所在的区域。用于显示电子设备100界面的区域522的尺寸即为主窗口520对应的display的尺寸。当主窗口520的尺寸改变,主窗口520对应的display的尺寸也随之改变。电子设备200可以在主窗口520对应的display上进行渲染、绘制等操作,使得用于显示电子设备100界面的区域522与电子设备100的屏幕上显示的内容保持一致。
其中,电子设备100可以实时获取屏幕上显示的内容,并编码生成视频流。电子设备100可以将上述视频流发送给电子设备200。这样,电子设备200根据来自电子设备100的视频流,可以实现在主窗口520中镜像显示电子设备100屏幕上的内容。
在一些实施例中,主窗口520的默认尺寸可以是由电子设备100屏幕的尺寸来确定的。上述主窗口520的默认尺寸可以指多屏协同后,电子设备200自主确定的尺寸。即上述默认尺寸可以是未经过用户进行尺寸调整的尺寸。上述默认尺寸也可称为初始尺寸。例如,主窗口520对应的display的尺寸可以与电子设备100屏幕的尺寸呈预设的比例关系。然后,电子设备200可以在display的尺寸确定的基础上,确定顶端功能区域521和底部区域523的尺寸,从而确定主窗口520的尺寸。再例如,主窗口520的尺寸可以与电子设备100屏幕的尺寸呈预设的比例关系。然后,电子设备200再分别确定主窗口520中不同区域的尺寸。这样可以实现区域522中界面的布局与电子设备100屏幕上界面的布局相同。
顶端功能区域521可包括窗口标题521A、置顶控件521B、最小化控件521C、最大化控件521D和关闭控件521E。
窗口标题521A可用于指示主窗口520中显示的内容。例如,窗口标题521A可以为“多屏协同”,指示主窗口520为多屏协同窗口。本申请实施例对窗口标题521A的具体内容不作限定。在一些实施例中,在主窗口520中显示电子设备100的主界面的情况下,窗口标题521A为“多屏协同”。在主窗口520中显示电子设备100中XX应用(如视频应用、信息应用、备忘录应用等)的用户界面的情况下,窗口标题521A可以为“XX应用”。
置顶控件521B可用于将主窗口520置顶显示。即无论电子设备200的屏幕上显示多少个窗口,主窗口520始终显示在最上层。
最小化控件521C可用于将主窗口520最小化显示。当主窗口520最小化显示,电子设备200可以在屏幕上显示用于标识主窗口520的控件,以便于用户再次将主窗口520显示在电子设备200的屏幕上。
最大化控件521D可用于将主窗口520最大化显示。上述最大化显示可以指主窗口520以最大尺寸显示在电子设备200的屏幕上。上述主窗口520的最大尺寸可以适配于电子设备200屏幕的尺寸。例如,主窗口520默认尺寸的长宽比可以为固定值,可以与电子设备100屏幕的长宽比成预设的比例关系。当主窗口520以最大尺寸显示,主窗口520纵向的高度可以与电子设备200屏幕纵向的高度相同。主窗口520横向的宽度可以基于主窗口默认尺寸的长宽比进行适配。这样可以保证主窗口520在电子设备200上最大化显示的尺寸与电子设备100屏幕的长宽比的比例关系不变。主窗口520最大化显示时区域522中界面的布局仍可与电子设备100屏幕上界面的布局相同。本申请实施例对上述主窗口520最大化显示的实现方法不作限定。
关闭控件521E可用于关闭主窗口520。主窗口520关闭可以表示,电子设备100和电子设备200之间的该次多屏协同结束。
底部区域523可包括返回控件523A、主页控件523B和多任务控件523C。
返回控件523A可用于触发将区域522中当前显示的界面返回上一级界面。
主页控件523B可用于触发在区域522中显示电子设备100的主界面(主界面可参考图5A所示的用户界面510)。
多任务控件523C可用于触发在区域522中显示多任务切换界面。
上述顶端功能区域521和底部区域523包含的控件仅为本申请实施例的示例性说明。可以理解的,顶端功能区域521和底部区域523还可以包含更多或更少的用于控制主窗口520的控件。本申请实施例对此不作限定。
由上述实施例可知,主窗口520的区域522中显示的内容与电子设备100屏幕上显示的内容保持一致。当用户对电子设备100进行操作,电子设备100屏幕上显示的内容变化,区域522中显示的内容也随之变化。即用户可以对电子设备100进行操作来控制主窗口520中显示的内容。相反的,用户也可以对主窗口520进行操作,实现对电子设备100的反向控制。
示例性地,如图5B所示,用户在主窗口520的区域522中,点击信息应用图标。响应于上述点击信息应用图标的用户操作,电子设备100可以显示图5C所示的用户界面530。电子设备200可以在主窗口520中显示图5C所示的内容。
其中,当检测到点击信息应用图标的用户操作,电子设备200可以将该用户操作对应的操作指令(即开启信息应用)发送给电子设备100。电子设备100可以开启信息应用,从而显示用户界面530。可以看出,用户界面530可以为信息应用的主界面。电子设备100可以对当前屏幕上显示的信息应用的主界面编码,得到视频流,并将该视频流发送给电子设备200。电子设备200可以根据该视频流在主窗口520的区域522中显示上述信息应用的主界面。
在一些实施例中,当主窗口520中显示信息应用的用户界面(如主界面),电子设备200可以将顶端功能区域521中的窗口标题521A替换为图5C所示的窗口标题521F。窗口标题521F可以为“信息”,可以表示主窗口520中显示的内容为信息应用的用户界面。电子设备200还可以在顶端功能区域521显示图5C所示的窗口分身控件521G。该窗口分身控件521G可用于在电子设备200的屏幕上增加多屏协同窗口。该增加的多屏协同窗口可用于显示主窗口520当前显示的应用的用户界面。
示例性地,如图5C所示,用户在主窗口520的顶端功能区域521中,点击窗口分身控件521G。响应于点击窗口分身控件521G的用户操作,电子设备200可以在屏幕上增加多屏协同窗口540。即电子设备100可以同时显示主窗口520和多屏协同窗口540。
如图5D所示,当对主窗口520进行窗口分身的操作,主窗口520的区域522和电子设备100可以从图5C所示的信息应用的用户界面,返回电子设备100的主界面。多屏协同窗口540中可以显示主窗口520中的窗口分身控件521G被点击时,区域522中显示的内容(即信息应用的主界面)。
由图5D可以看出,多屏协同窗口540中显示的内容可以与电子设备100屏幕上显示的内容相互独立。用户可以单独对多屏协同窗口540进行操作,使用电子设备100中信息应用提供的功能,而不影响电子设备100屏幕上或者主窗口520中显示的内容。多屏协同窗口540也可称为子窗口540。
也即是说,在多屏协同的场景中,多屏协同窗口的类型可包括主窗口和子窗口。电子设备200可以在屏幕上显示一个主窗口+一个或多个子窗口。主窗口中显示的内容可以与电子设备100屏幕上显示的内容保持一致。子窗口中显示的内容可以包括在电子设备100后台运行的应用的用户界面。一个子窗口可用于显示一个应用的用户界面。通过“一个主窗口+一个或多个子窗口”的显示方法,用户可以在电子设备200中开启多个多屏协同窗口,从而便捷地操作电子设备100中不同的应用。用户可以不同在不同应用的用户界面之间来回切换,这可以提高用户的使用体验。
这里对子窗口540进行具体介绍。
如图5E所示,子窗口540可以包括用于显示电子设备100界面的区域542,以及窗口控制区域。其中,窗口控制区域可以包括顶端功能区域541和底部区域543。用于显示电子设备100界面的区域542可以位于顶端功能区域541和底部区域543的中间。
用于显示电子设备100界面的区域542上可以显示电子设备100中一个应用的用户界面。这一个应用可以包括电子设备100在后台运行的应用。例如,图5E所示的信息应用。可以理解的,用于显示电子设备100界面的区域542即为子窗口540对应的display所在的区域。电子设备100可以对自己运行的应用的用户界面进行编码,得到视频流,并将该视频流发送给给电子设备200。电子设备200可以根据该视频流在子窗口540对应的display上进行渲染、绘制等操作,从而在区域542上显示该视频流对应的应用的用户界面。
在一些实施例中,子窗口540的默认尺寸可以是由电子设备100屏幕的尺寸来确定的。本申请实施例对子窗口540的默认尺寸,以及处于默认尺寸下子窗口540对应display的尺寸的确定方法不作限定。具体可以参考前述实施例对主窗口520的默认尺寸以及主窗口520对应的display的尺寸的确定方法。
顶端功能区域541可以包括窗口标题541A、旋转控件541B、置顶控件541C、最小化控件541D、最大化控件541E和关闭控件541F。
窗口标题541A可用于指示子窗口540中显示的内容。例如,窗口标题541A可以为“信息”,可以表示子窗口540用于显示信息应用的用户界面。
旋转控件541B可用于将处于竖屏显示状态的子窗口540旋转为横屏显示状态,或者将处于横屏显示状态的子窗口540旋转为竖屏显示状态。其中,若子窗口540中显示的应用支持竖屏显示状态和横屏显示状态,电子设备200可以在顶端功能区域541显示该旋转控件541B。上述应用支持竖屏显示状态和横屏显示状态可以表示,该应用具有在竖屏显示状态下的界面布局,以及在横屏显示状态下的界面布局。上述在竖屏显示状态下的界面布局和在横屏显示状态下的界面布局可以是由应用的开发者设计的。
置顶控件541C、最小化控件541D、最大化控件541E和关闭控件541F可以分别参考前述实施例对主窗口520中置顶控件521B、最小化控件521C、最大化控件521D和关闭控件521E的介绍。这里不再赘述。
底部区域543可包括返回控件543A。返回控件543A可用于触发将区域542中当前显示的界面返回上一级界面。
上述顶端功能区域541和底部区域543包含的控件仅为本申请实施例的示例性说明。可以理解的,顶端功能区域541和底部区域543还可以包含更多或更少的用于控制子窗口540的控件。本申请实施例对此不作限定。
上述通过窗口分身控件521G增加子窗口540的用户操作仅为本申请实施例的示例性说明,用户还可以通过其它的用户操作增加子窗口。
需要进行说明的是,本申请实施例中的用户操作可以是用户通过鼠标、键盘等电子设备200的外设输入设备执行的操作。例如,用户通过鼠标的点击、双击、右击等操作。或者,对于具有触摸显示屏的电子设备200。用户操作还可以是在显示屏上的触摸操作、点击操作、滑动操作、双指在显示屏上张开或者捏合的操作等等。本申请实施例对用户操作的类型和方式不作限定。
下面基于图5A~图5E所示的多屏协同场景,介绍本申请实施例提供的调整窗口尺寸的场景。
在一些实施例中,多屏协同窗口的类型可以包括主窗口和子窗口。其中,主窗口中用于显示电子设备100界面的区域上界面元素的排布方式与电子设备100屏幕上界面元素的排布方式可以相同。这样可以在主窗口中呈现出与电子设备100屏幕显示效果接近的视觉效果,便于用户通过主窗口对电子设备100进行控制。那么,主窗口的尺寸可以是固定值,不能被用户随意改变。上述主窗口的尺寸是固定值固定可以表示,主窗口的长度和宽度都是固定的数值,或者,主窗口的长宽比是固定的数值。例如,用户可以等比例缩放主窗口的尺寸。在主窗口在被等比例缩放的情况下,主窗口的长宽比可以保持不变。主窗口中显示的内容的尺寸也可以按照相同的比例缩放。这样,主窗口中用于显示电子设备100界面的区域上界面元素的排布方式可以保持不变,仍与电子设备100屏幕上界面元素的排布方式相同。
子窗口中用于显示电子设备100界面的区域上显示的内容可以与电子设备100屏幕上显示的内容不同。例如,子窗口中用于显示电子设备100界面的区域上可显示有在电子设备100后台运行的应用的用户界面。用户可以对子窗口的尺寸进行调整,例如改变子窗口的长宽比,使得子窗口以自己希望的大小显示在电子设备200的屏幕上。当子窗口的尺寸被调整,子窗口中显示的内容的布局也可以随之调整,以适配尺寸调整之后的子窗口。
本申请具体对调整多屏协同窗口中的子窗口的尺寸进行介绍。
图6A~图6C示例性示出了本申请实施例提供的一种调整窗口尺寸的场景。
如图6A所示,电子设备100和电子设备200之间可以建立通信连接,进行多屏协同。其中,电子设备200可以显示主窗口520和子窗口540。主窗口520中可显示有电子设备100屏幕上显示的内容。例如,主窗口520和电子设备100的屏幕上均可显示电子设备100的主界面。本申请实施例对主窗口520和电子设备100的屏幕上显示的内容不作限定。子窗口540中可显示有电子设备100的信息应用的用户界面。子窗口540可以参考前述图5E所示实施例的介绍。这里不再赘述。
用户可以对子窗口540的区域542中的新建控件进行点击操作,来触发信息应用显示新建信息界面。响应于图6A所示点击新建控件的用户操作,电子设备200可以在子窗口540的区域542中显示图6B所示新建信息界面。可以理解的,图6A所示子窗口540的区域542中显示的内容可以是信息应用的主界面(或者称为信息应用的一级界面)。图6B所示子窗口540的区域542中显示的内容是信息应用中新建信息的用户界面(或者称为信息应用的二级界面)。
在一种可能的实现方式中,当检测到图6A所示点击新建控件的用户操作,电子设备200可以将该用户操作对应的操作指令(即显示新建信息界面)发送给电子设备100。电子设备100可以在后台渲染、绘制新建信息界面,并对新建信息界面进行编码,得到视频流。电子设备100可以将该视频流发送给电子设备200。电子设备200可以根据该视频流在子窗口520的区域542中显示新建信息界面。
如图6B所示,用户可以调整子窗口540的尺寸。例如,子窗口540为矩形。用户可以触摸子窗口540的左边缘并向左或向右滑动,改变子窗口540的宽度,而不改变子窗口540的高度。或者,用户可以触摸子窗口540的右边缘并向左或向右滑动,改变子窗口540的宽度,而不改变子窗口540的高度。或者,用户可以触摸子窗口540的上边缘并向上或向下滑动,改变子窗口540的高度,而不改变子窗口540的宽度。或者,用户可以触摸子窗口540的下边缘并向上或向下滑动,改变子窗口540的高度,而不改变子窗口540的宽度。或者,用户可以触摸子窗口540四个顶点中的任意一个顶点,并在子窗口540的对角线所在的方向上滑动,实现同时改变子窗口540的高度和宽度。或者,用户可以通过双指(如拇指和食指)作用在子窗口540的显示区域,且双指向相互远离的方向张开或双指向相互靠近的方向捏合的用户操作,实现同时改变子窗口540的高度和宽度。本申请实施例对上述调整子窗口540的尺寸的用户操作不作限定。
在一些实施例中,当检测到图6B所示触摸子窗口540左边缘的用户操作,电子设备200可以显示尺寸调整标识611。该尺寸调整标识611可用于指示用户可对子窗口540进行尺寸调整。
示例性地,响应于触摸子窗口540左边缘并向左滑动的用户操作,电子设备200可以将子窗口540的左边缘向左移动,从而增加子窗口540的宽度。当上述调整子窗口540尺寸的用户操作释放(例如用户触摸子窗口540左边缘的手指离开电子设备200的屏幕),电子设备200可以确定子窗口540被调整后的尺寸。
例如,用户在图6B所示的子窗口540的基础上调整子窗口540的尺寸。那么,图6B所示的子窗口540的尺寸为调整前的尺寸。电子设备200响应于图6B所示调整子窗口540尺寸的操作,随用户手指的移动将子窗口540的左边缘向左移动。用户触摸子窗口540左边缘的手指在移动至图6C所示的位置时离开电子设备200的屏幕。当检测到上述用户操作释放,电子设备200可以停止移动子窗口540的左边缘。那么,图6C所示子窗口540的尺寸为调整后的尺寸。
如图6C所示,经过上述尺寸调整,子窗口540的区域542中应用界面的布局可以调整至与尺寸调整后的子窗口540适配。可以看出,子窗口540的区域542中信息应用界面的布局在上述尺寸调整前和尺寸调整后可以不同。其中,在上述尺寸调整前,子窗口540的区域542中信息应用界面为新建信息界面(参考图6B所示的区域542)。在上述尺寸调整后,子窗口540的区域542中信息应用界面左侧为包含信息应用主界面上的界面元素的区域,右侧为包含信息应用新建信息界面上的界面元素的区域。这样,用户调整子窗口540的尺寸后,可以在图6C所示的子窗口540左侧的区域查看信息应用中接收和发送信息的信息列表,以及点击一条信息的标识以查看这一条信息具体内容。用户可以在图6C所示的子窗口540右侧的区域新建信息(如输入信息的收件人、输入新建信息的内容等)。其中,图6C所示子窗口540中信息应用界面的布局可以称为分栏显示样式的布局(即分栏布局)。本申请实施例对信息应用界面的分栏布局不作具体限定。
下面介绍本申请实施例提供的一种在多屏协同窗口的尺寸发生改变时调整多屏协同窗口中应用界面的布局的实现方法。
在一些实施例中,应用的界面元素可以具有适配不同尺寸屏幕的排布方式。随着电子设备的种类越来越多,不同类型的电子设备的尺寸可以不同。例如,手机屏幕的尺寸、平板电脑屏幕的尺寸、PC屏幕的尺寸各不相同。同一个应用可以在不同类型的电子设备上运行。应用的开发者可以开发出适配不同尺寸屏幕的界面元素排布方式,以便于应用能够结合不同类型电子设备的屏幕特性,将应用界面中的界面元素以合适的排布方式显示在不同尺寸的屏幕上,提高用户在不同类型电子设备上使用应用的体验。那么,上述适配不同尺寸屏幕的界面元素排布方式,也可以适配尺寸不同的多屏协同窗口。
这里以信息应用的用户界面(即信息应用界面)为例进行说明。
图7A和图7B示例性示出了信息应用界面中界面元素具有的两种排布方式。
图7A所示的界面元素排布方式可以适配长宽比为L1:L2的屏幕。其中,x1≤(L1:L2)≤x2。x1为正数。也即是说,屏幕的长宽比在[x1,x2]这一范围内的电子设备运行信息应用,均可以按照图7A所示的界面元素排布方式显示信息应用界面。其中,屏幕的长宽比在[x1,x2]这一范围内,但长宽比不同的多个电子设备按照图7A所示的布局显示信息应用界面时,信息应用界面中界面元素的显示样式(如大小等)在这多个电子设备的屏幕上可能略有不同。例如,图7A所示的收件人输入控件711在L1:L2越大的屏幕上长度可以越短。
由前述实施例可知,在多屏协同的场景中,电子设备200可以在多屏协同窗口对应的display(即用于显示电子设备100界面的区域)上渲染、绘制电子设备100的应用界面。那么,当display的长宽比在上述[x1,x2]的范围内,该display上可以呈现图7A所示的界面元素排布方式。也即是说,当多屏协同窗口的尺寸被调整,且调整后该多屏协同窗口对应的display的长宽比在[x1,x2]的范围内,电子设备100可以按照图7A所示的界面元素排布方式生成信息应用界面,并对信息应用界面进行编码,得到视频流。电子设备100可以将该视频流发送给电子设备200。然后,电子设备200可以在上述尺寸被调整的多屏协同窗口中显示图7A所示界面布局的信息应用界面。
图7B所示的界面元素排布方式可以适配长宽比为L3:L4的屏幕。其中,x3≤(L3:L4)≤x4。x3为正数。也即是说,屏幕的长宽比在[x3,x4]这一范围内的电子设备运行信息应用,均可以按照图7B所示的界面元素排布方式显示信息应用界面。其中,屏幕的长宽比在[x3,x4]这一范围内,但长宽比不同的多个电子设备按照图7B所示的界面元素排布方式显示信息应用界面时,信息应用界面中界面元素的大小在这多个电子设备的屏幕上可能略有不同。例如,图7B所示的收件人输入控件712在L3:L4越大的屏幕上长度可以越短。图7B所示的界面布局可以参考前述图6C所示实施例的介绍。这里不再赘述。
由前述实施例可知,当多屏协同窗口对应display的长宽比在上述[x3,x4]的范围内,该display上可以呈现图7B所示的界面元素排布方式。也即是说,当多屏协同窗口的尺寸被调整,且调整后该多屏协同窗口对应的display的长宽比在[x3,x4]的范围内,电子设备100可以按照图7B所示的界面元素排布方式生成信息应用界面,并对信息应用界面进行编码,得到视频流。电子设备100可以将该视频流发送给电子设备200。然后,电子设备200可以在上述尺寸被调整的多屏协同窗口中显示图7B所示界面布局的信息应用界面。
不限于图7A和图7B所示的两种界面元素排布方式,信息应用还可以包含更多适配其它尺寸屏幕的界面元素排布方式。本申请实施例对上述应用适配不同尺寸屏幕的界面元素排布方式不作限定。其中,电子设备100可以判断尺寸调整后的display的长宽比属于哪一个尺寸范围。然后,电子设备100可以根据display的长宽比所属的尺寸范围确定应用界面在该display上的布局。
示例性地,信息应用还可以具有适配电子设备100处于横屏状态的界面元素排布方式。其中,信息应用中同一界面上的界面元素在电子设备100处于横屏状态和处于竖屏状态的界面元素排布方式不同。当上述尺寸调整后的display的长宽比属于横屏尺寸范围,电子设备100可以按照上述横屏状态的界面元素排布方式来确定信息应用界面的显示数据,从而在上述尺寸调整后的display上按照横屏状态的界面元素排布方式呈现信息应用界面。
其中,长宽比属于横屏尺寸范围,但display的大小不同的多个display上呈现的界面元素排布方式可以相同,界面元素显示样式可以不同。
可以理解的,对上述多屏协同窗口的尺寸进行调整(如分别调整多屏协同窗口的高度和宽度),使得多屏协同窗口对应的display的长宽比包含在上述横屏尺寸范围内,多屏协同窗口中显示的界面元素按照横屏状态的界面元素排布方式进行布局,可以相当于对该多屏协同窗口进行的旋转操作。即,将该多屏协同窗口从竖屏状态旋转为横屏状态。
在一些实施例中,上述适配不同尺寸屏幕的界面元素排布方式可以存储在应用的安装包中,或者存储在云服务器中。本申请实施例对此不作限定。电子设备100在运行应用的过程中,可以根据屏幕的尺寸获取对应的界面元素排布方式,从而生成具有该界面元素排布方式的应用界面。
图8A和图8B示例性示出了本申请实施例提供的另一种调整窗口尺寸的场景。
如图8A所示,电子设备100和电子设备200之间可以建立通信连接,进行多屏协同。其中,电子设备200可以显示主窗口520和子窗口540。主窗口520和子窗口540中的显示内容可以参考前述实施例的介绍。这里不再赘述。
用户可以调整子窗口540的尺寸。调整子窗口540尺寸的用户操作可以参考前述图6B所示实施例的介绍。
在一些实施例中,响应于触摸子窗口540左边缘并向左滑动的用户操作,电子设备200可以将子窗口540的左边缘向左移动,从而增加子窗口540的宽度。当上述调整子窗口540尺寸的用户操作释放(例如用户触摸子窗口540左边缘的手指离开电子设备200的屏幕),电子设备200可以确定子窗口540被调整后的尺寸。例如,用户在图8B所示的位置释放上述调整子窗口540尺寸的用户操作,电子设备200可以确定图8B所示子窗口540的尺寸为调整后的尺寸。
如图8B所示,经过上述尺寸调整,子窗口540的区域542中界面元素的显示样式可以调整至与尺寸调整后的子窗口540适配。可以看出,子窗口540的区域542中信息应用界面的布局在上述尺寸调整前和尺寸调整后可以不同。上述信息应用界面的布局不同具体可以表现为信息应用界面中界面元素的显示样式不同。其中,信息应用界面中界面元素的排布方式在上述尺寸调整前和尺寸调整后可以是相同的。
对比图8A和图8B中的子窗口540可知,经过尺寸调整,子窗口540的宽度增加。在图8B所示尺寸调整后的子窗口540中,收件人输入控件811和信息内容输入控件812的横向的长度可以增加,以适配宽度增加的子窗口540。子窗口540的区域542中信息应用界面上的其他界面元素的显示样式也可以改变,以适配宽度增加的子窗口540。本申请实施例对此不作限定。
下面介绍本申请实施例提供的另一种在多屏协同窗口的尺寸发生改变时调整多屏协同窗口中应用界面的布局的实现方法。
在一些实施例中,应用的界面元素可能仅有一种排布方式。即应用的开发者可能没有开发适配不同尺寸屏幕的界面元素的排布方式。那么,当多屏协同窗口的尺寸改变,电子设备100可以在保持界面元素排布方式不变的情况下,调整界面元素的显示样式(如大小),使得应用界面的布局适配尺寸调整之后的多屏协同窗口。
这里仍以信息应用界面为例进行说明。
图8C和图8D示例性示出了在界面元素排布方式相同的情况下,信息应用界面的两种界面布局。
在一些实施例中,应用的界面元素排布方式可以包括但不限于:边距(如外边距、内边距)、界面元素之间的间距、对齐方式。在生成应用界面的过程中,基于display的尺寸,电子设备100可以利用界面元素的排布方式对界面元素的显示样式(如大小),进行调整,使得界面元素的显示样式与display适配。这样可以使得仅有一种界面元素排布方式的应用界面也可按照不同的界面布局适配不同尺寸的display(即适配不同尺寸的多屏协同窗口)。
如图8C所示,信息应用界面的界面元素排布方式可包含对收件人输入控件811的边距信息。例如,收件人输入控件811的左边距为a1,右边距为a2。上述a1和a2均为正数。收件人输入控件811的左边距可以表示收件人输入控件811的左边缘与显示区域(如display所在的区域)的左边缘之间的距离。收件人输入控件811的左边距可以表示收件人输入控件811的右边缘与显示区域(如display所在的区域)的右边缘之间的距离。
当子窗口540经过上述图8A和图8B所示的尺寸调整,电子设备100可以根据信息应用界面的界面元素排布方式,调整界面元素的显示样式,使得界面元素满足界面元素排布方式的显示条件。例如,当子窗口540的宽度增加(也即子窗口540对应的display的宽度增加),电子设备100可以生成图8D所示的信息应用界面。在图8D中,收件人输入控件811的左边距为a1,右边距为a2。对比图8C和图8D所示的收件人输入控件811可知,当display的尺寸变化(如宽度增加),收件人输入控件811的左边距和右边距可以不变,收件人输入控件811的显示样式可以改变(如横向的长度增加)。可以理解的,在display的尺寸改变的过程中,图8C所示信息应用界面中收件人输入控件811之外的其他界面元素的显示样式可以改变,但界面元素的排布方式可以保持不变。这可以使得信息应用界面的界面布局与尺寸调整之后的display适配。
由前述实施例可知,在电子设备100和电子设备200多屏协同的过程中,用户可以对电子设备200上显示的多屏协同窗口的尺寸进行调整。其中,用户可以将多屏协同窗口的尺寸调整为多种不同的尺寸。多屏协同窗口的长宽比可以改变。在上述多屏协同窗口的尺寸变化后,多屏协同窗口中显示的应用界面的布局也可以适应性调整,以适配尺寸变化后的多屏协同窗口。这样,用户可以通过调整多屏协同窗口的尺寸,更好地为一个或多个多屏协同窗口以及一个或多个电子设备200运行其它应用显示的窗口分配合理的显示区域,提高电子设备200的屏幕空间使用率。用户可以将多屏协同窗口的尺寸调整至自己想要的尺寸,这可以提升用户在使用设备进行多屏协同的体验。
下面介绍本申请实施例提供的一种窗口尺寸调整的方法。
图9示例性示出了一种窗口尺寸调整的方法流程图。该方法可包括步骤S911~步骤S923。
其中:
S911、电子设备200中的多屏协同助手450检测到操作1,操作1用于将子窗口w1对应的display1的尺寸调整为尺寸1。
操作1可以是作用在子窗口w1上,调整子窗口w1的尺寸的用户操作。操作1可以参考前述图6B和图6C所示的用户操作。由前述实施例可知,子窗口w1可以包含用于显示电子设备100界面的区域和窗口控制区域。其中,用于显示电子设备100界面的区域即为子窗口w1对应的display1所在的区域。当子窗口w1的尺寸被调整,子窗口w1对应的display1的尺寸也随之改变。这里具体以子窗口w1对应的display1的尺寸随子窗口w1的尺寸变化而变化为尺寸1为例进行说明。
其中,display1的尺寸为尺寸1时所具有的长宽比与display1在尺寸调整之前具有的长宽比可以不同。也即是说,在本申请的窗口尺寸调整方法中,用户既可以等比例缩放子窗口w1的尺寸,也可以不受子窗口默认尺寸的限制(即不受电子设备100屏幕尺寸的限制),将子窗口w1的长宽比缩放为多种不同的长宽比。
S912、多屏协同助手450可以向电子设备100中的多屏协同助手410发送尺寸变化请求,尺寸变化请求包含子窗口w1的标识和尺寸1。
在一些实施例中,电子设备200中可开启了多个多屏协同窗口。当上述子窗口w1的尺寸改变,电子设备200可以将子窗口w1的标识发送给电子设备100,以便于电子设备100确定是哪一个子窗口的尺寸改变,从而调整尺寸发生改变的子窗口中显示的应用界面布局。
可以理解的,多屏协同助手450和多屏协同助手410之间的信息交互,具体可以是通过电子设备200和电子设备100的通信装置实现的。本申请实施例对电子设备100中的应用与电子设备200中的应用进行信息交互的方法不作限定。
S913、多屏协同助手410可以确定子窗口w1用于显示应用1的用户界面。
在一些实施例中,多屏协同助手450可以确定子窗口w1调整之后的尺寸。多屏协同助手450可以将子窗口w1的标识和子窗口w1调整之后的尺寸封装至尺寸变化请求中,发送给多屏协同助手410。多屏协同助手410可以根据子窗口w1的标识确定子窗口w1对应display1,并根据子窗口w1调整之后的尺寸确定出display1的尺寸被用户调整为尺寸1。也即是说,上述display1的尺寸1既可以是由多屏协同助手450发送的,也可以是由多屏协同助手410自己计算得到的。本申请实施例对此不作限定。
另外,多屏协同助手410还可以根据上述子窗口w1的标识,确定子窗口w1用于显示应用1的用户界面。子窗口w1中显示的应用1的用户界面可以是电子设备100在后台运行应用1得到后,发送给电子设备200的。
S914、多屏协同助手410向电子设备100中的DMSDP440发送指示将display1的尺寸调整为尺寸1的消息1。
S915、DMSDP440调用多屏框架服务模块420将display1的尺寸调整为尺寸1。
S916、多屏框架服务模块420按照display1的尺寸1调整应用1的用户界面布局,得到视频流1。
在一些实施例中,当接收到DMSDP440的调用请求,多屏框架服务模块420可以将display1的尺寸调整为尺寸1。多屏框架服务模块420可以按照尺寸1调整应用1的用户界面布局,使得应用1的用户界面布局适配尺寸为尺寸1的display1。多屏框架服务模块420调整应用1的用户界面布局的方法可以参考前述图7A、图7B、图8C和图8D所示的实施例。这里不再赘述。
多屏框架服务模块420可以对上述适配尺寸为尺寸1的display1的应用1的用户界面进行编码,得到视频流1。
可以理解的,多屏协同助手410通知DMSDP440display1的尺寸需要调整为尺寸1。DMSDP440调用多屏框架服务模块420调整display1的尺寸。其中,DMSDP440可以实时感知display1的尺寸,以便于通过DMSDP440和DMSDP460实现上述视频流1在电子设备100和电子设备200之间的传输,以及在电子设备200的多屏协同窗口上对电子设备100进行反向控制。
S917、多屏框架服务模块420向DMSDP440发送视频流1。
S918、DMSDP440向电子设备200中的DMSDP460发送视频流1。
S919、DMSDP460向多屏协同助手450发送视频流1。
S920、多屏协同助手450对视频流1进行解码,得到适配display1的应用的用户界面。
S921、多屏框架服务模块420可以向多屏协同助手410发送指示调整应用1的用户界面布局完成的消息2。
S922、多屏协同助手410根据消息2,向多屏协同助手450发送更新窗口控制区域的消息3,窗口控制区域用于显示用于控制子窗口w1的控件,消息3包含应用1的标识、用于控制子窗口w1的控件信息。
在一些实施例中,子窗口w1可包含窗口控制区域。窗口控制区域可用于显示用于控制子窗口w1的控件,例如,旋转控件、最小化控件、最大化控件、关闭控件等。上述用于控制子窗口w1的控件可以包括由电子设备200直接确定的控件,以及由电子设备100根据子窗口w1中显示的应用确定的控件。例如,用户可以点击关闭控件关闭子窗口w1。上述关闭控件可以是电子设备200直接确定的控件。再例如,用户可以点击旋转控件使得子窗口w1从当前的竖屏显示状态变化为横屏显示状态。上述旋转控件可以是电子设备100根据子窗口w1中显示的应用确定的控件。其中,电子设备100可以判断子窗口w1中显示的应用是否支持竖屏显示状态和横屏显示状态。若子窗口w1中显示的应用支持竖屏显示状态和横屏显示状态,电子设备100可以将旋转控件的信息发送给电子设备200。这样,电子设备200可以在窗口控制区域显示旋转控件。若子窗口w1中显示的应用不支持横屏显示状态,则子窗口w1中显示的应用仅能以竖屏显示状态显示。子窗口w1的窗口控制区域不包含上述旋转控件。
窗口控制区域还可用于显示窗口标题。该窗口标题可以是根据子窗口w1中显示的内容确定的。例如,窗口标题可以是子窗口w1中显示的应用的名称。电子设备100可以将子窗口w1中显示的应用的标识发送给电子设备200。电子设备200可以根据上述应用的标识确定子窗口w1的窗口标题。
消息3可包含应用1的标识、用于控制子窗口w1的控件信息。其中,多屏协同助手450可以根据应用1的标识确定子窗口w1的窗口标题,根据用于控制子窗口w1的控件信息确定在窗口控制区域呈现的控件(如旋转控件等)。本申请实施例对消息3包含的内容不作限定。除了上述应用1的标识、用户控制子窗口w1的控件信息,消息3中还可包含其它的内容,例如,应用1的应用图标。
可以理解的,子窗口w1的窗口控制区域中显示的内容与子窗口w1中显示的应用相关。例如,子窗口w1中显示的应用不同,子窗口w1的窗口标题可能不同。再例如,子窗口w1中显示的应用不同,子窗口w1中显示的用于控制子窗口w1的控件可能不同。在上述多屏框架服务模块420得到上述视频流1的情况下,多屏框架服务模块420还可以通知多屏协同助手410应用1的用户界面布局已调整完成,能够适配尺寸调整之后的display1(即发送上述消息2)。然后,多屏协同助手410可以根据子窗口w1中显示的应用确定能够在窗口控制区域显示的控件,并向多屏协同助手450发送上述消息3,以便于多屏协同助手450在子窗口w1的尺寸调整后更新窗口控制区域中显示的内容。
S923、多屏协同助手450更新子窗口w1的窗口控制区域,并在子窗口w1中显示应用1的用户界面,应用1的用户界面的布局适配尺寸为尺寸1的display1。
多屏协同助手450可以根据上述消息3更新子窗口w1的窗口控制区域,并根据视频流1在子窗口w1中用于显示电子设备100界面的区域显示应用1的用户界面。具体可以参考前述图6B和图6C所示的场景。
由图9所示的方法可知,在电子设备100和电子设备200多屏协同的过程中,用户可以对电子设备200上显示的多屏协同窗口的尺寸进行调整。其中,用户可以将多屏协同窗口的尺寸调整为多种不同的尺寸。多屏协同窗口的长宽比可以改变。在上述多屏协同窗口的尺寸变化后,多屏协同窗口中显示的应用界面的布局也可以适应性调整,以适配尺寸变化后的多屏协同窗口。这样,用户可以通过调整多屏协同窗口的尺寸,更好地为一个或多个多屏协同窗口以及一个或多个电子设备200运行其它应用显示的窗口分配合理的显示区域,提高电子设备200的屏幕空间使用率。用户可以将多屏协同窗口的尺寸调整至自己想要的尺寸,这可以提升用户在使用设备进行多屏协同的体验。
在一些实施例中,多屏协同窗口中显示的应用支持平行视界功能。若多屏协同窗口的尺寸调整为能够使应用以平行视界的样式进行显示的尺寸,电子设备200可以在多屏协同窗口中显示具有平行视界的样式的用户界面。
图10A~图10C示例性示出了本申请实施例提供的另一种调整窗口尺寸的场景。
如图10A所示,电子设备100和电子设备200之间可以建立通信连接,进行多屏协同。其中,电子设备200可以显示主窗口520和子窗口550。主窗口520可以参考前述图5B所示实施例的介绍。子窗口550可用于显示视频应用的用户界面(即视频应用界面)。
示例性地,子窗口550可包含窗口控制区域和用于显示电子设备100界面的区域。子窗口550的窗口控制区域可以参考前述图5E所示子窗口540的控制区域的介绍。这里不再赘述。子窗口550中用于显示电子设备100界面的区域即为子窗口550对应的display的区域。子窗口550中用于显示电子设备100界面的区域可显示有视频应用界面,例如图10A所示视频应用的主界面。
如图10A所示,用户可以点击子窗口550中视频应用主界面上的视频A选项,来观看视频A。响应于图10A所示点击视频A选项的用户操作,电子设备200可以在子窗口550中显示图10B所示的视频A播放界面。
在一些实施例中,响应于将主窗口520最小化的用户操作(如点击主窗口520的窗口控制区域中最小化控件的用户操作),电子设备200可以最小化显示主窗口520。其中,当主窗口520最小化显示,电子设备200可以在屏幕上显示图10B所示的主窗口标识1011。主窗口标识1011可用于标识主窗口520,提示用户主窗口520的存在。用户可以通过点击主窗口标识1011触发电子设备200再次在屏幕上显示图10A所示的主窗口520。
如图10B所示,用户可以调整子窗口550的尺寸。调整子窗口550的尺寸的用户操作可以参考前述图6B所示实施例的介绍。这里不再赘述。
示例性地,响应于触摸子窗口550右边缘并向右滑动的用户操作,电子设备200可以将子窗口550的右边缘向右移动,从而增加子窗口550的宽度。当上述调整子窗口550的用户操作释放(例如用户触摸子窗口550右边缘的手指离开电子设备200的屏幕),电子设备200可以确定子窗口550被调整后的尺寸。例如,用户在图10C所示的位置释放上述调整子窗口550尺寸的用户操作,电子设备200可以确定图10C所示子窗口550的尺寸为调整后的尺寸。
如图10C所示,经过上述尺寸调整,子窗口550对应的display的尺寸适合用户界面以平行视界的样式布局。子窗口550的用于显示电子设备100界面的区域551中视频应用界面可以被调整为平行视界的样式,从而使得视频应用界面的布局与尺寸调整之后的display适配(即与尺寸调整之后的子窗口550适配)。其中,当视频应用界面按照平行视界的样式显示,区域551的左侧区域可以显示视频应用的主界面,区域551的右侧区域可以显示视频应用的视频播放界面(如视频A的视频播放界面)。这样,用户可以一边浏览视频应用中的视频选项,一边观看播放的视频。本申请实施例对上述平行视界的样式不作限定。
可以理解的,图10C所示以平行视界的样式显示的视频应用界面可以是电子设备100运行视频应用生成后,发送给电子设备200的。
下面介绍本申请实施例提供的另一种窗口尺寸调整的方法。
图11示例性示出了另一种窗口尺寸调整的方法流程图。该方法可包括步骤S1111~步骤S1127。其中:
S1111、电子设备200中的多屏协同助手450检测到操作2,操作2用于将子窗口w2对应的display2的尺寸调整为尺寸2。
操作2可以参考前述图9所示实施例中对操作1的介绍。这里不再赘述。
display2的尺寸为尺寸2时所具有的长宽比与display2在尺寸调整之前具有的长宽比可以不同。这里具体以display2的尺寸随子窗口w2的尺寸变化为尺寸2为例进行说明。
S1112、多屏协同助手450可以向电子设备100中的多屏协同助手410发送尺寸变化请求,尺寸变化请求包含子窗口w2的标识和尺寸2。
S1113、多屏协同助手410可以确定子窗口w2用于显示应用2的用户界面。
S1114、多屏协同助手410向电子设备100中的DMSDP440发送指示将display2的尺寸调整为尺寸2的消息m1。
S1115、DMSDP440调用多屏框架服务模块420两display2的尺寸调整为尺寸2。
上述步骤S1112~步骤S1115可以参考前述图9所示的步骤S912~步骤S915中。这里不再赘述。
S1116、多屏协同助手410可以确定应用2支持平行视界功能,并且尺寸2适合用户界面以平行视界的样式布局。
在一些实施例中,当接收到上述步骤S1112中的尺寸变化请求,多屏协同助手410可以判断子窗口2中显示的应用2是否支持平行视界,以及尺寸2是否适合用户界面以平行视界的样式布局。
其中,电子设备100可以获取平行视界支持应用列表。该平行视界支持应用列表可以存储在云服务器中。或者,电子设备100存储平行视界支持应用列表,并从本地存储器中获取平行视界支持应用列表。该平行视界支持应用列表可包含支持平行视界功能的应用的标识(如应用名称)。电子设备100可以通过查询平行视界支持应用列表中是否包含应用2,来判断应用2是否支持平行视界功能。
电子设备100可以通过判断尺寸2是否属于平行视界窗口尺寸范围,来判断尺寸2是否适合用户界面以平行视界的样式布局。在一些实施例中,平行视界窗口尺寸范围可包括窗口的长宽比范围。在一些实施例中,平行视界窗口尺寸范围还可包括窗口的长度范围,窗口的宽度范围。本申请实施例对上述平行视界窗口尺寸范围包括的内容不作限定。尺寸属于平行视界窗口尺寸范围的窗口,可以适合用户界面以平行视界的样式布局。
当判断出应用2在平行视界支持应用列表中,且尺寸2属于平行视界窗口尺寸范围,电子设备100可以确定应用2支持平行视界功能,且尺寸2适合用户界面以平行视界的样式布局。
本申请实施例对上述判断应用2是否支持平行视界功能的方法,以及判断display2的尺寸是否适合用户界面以平行视界的样式布局的方法不作限定。
在一些实施例中,若应用2不支持平行视界功能,且/或,若尺寸2不适合用户界面以平行视界的样式布局,电子设备100和电子设备200可以按照前述图9所示的方法调整子窗口w2的尺寸以及子窗口w2中应用界面的布局。
S1117、多屏协同助手410发送对应用2进行布局适配的消息m2,消息m2包含尺寸2。
S1118、平行视界功能模块430合成应用2具有平行视界的样式的用户界面。
例如,若应用2为视频应用,应用2具有平行视界的样式的用户界面可以参考前述图10C所示子窗口550中显示的视频应用界面。
S1119、平行视界功能模块430向多屏框架服务模块420发送图像数据1,图像数据1用于显示应用2具有平行视界的样式的用户界面。
S1120、多屏框架服务模块420对图像数据1进行编码,得到视频流2。
S1121、多屏框架服务模块420向DMSDP440发送视频流2。
S1122、DMSDP440向电子设备200的DMSDP460发送视频流2。
S1123、DMSDP460向多屏协同助手450发送视频流2。
S1124、多屏协同助手450对视频流2进行解码,得到图像数据1。
S1125、多屏框架服务模块420向多屏协同助手410发送指示调整应用2的用户界面布局完成的消息m3。
S1126、多屏协同助手410根据消息m3,向多屏协同助手450发送更新窗口控制区域的消息m4,窗口控制区域用于显示用于控制子窗口w2的控件。
上述消息m4可包含应用2的标识、用于控制子窗口w2的控件信息。
步骤S1125和步骤S1126可以参考前述图9所示步骤S921和步骤S922的介绍。这里不再赘述。
S1127、多屏协同助手450更新子窗口w2的窗口控制区域,并根据图像数据1在子窗口w2中显示应用2中适配尺寸2,且具有平行视界的样式的用户界面。
多屏协同助手450可以根据上述消息m4更新子窗口w2的窗口控制区域,并根据图像数据1在子窗口w2中用于显示电子设备100界面的区域显示应用2的用户界面。该用户界面具有平行视界的样式,且布局与尺寸为尺寸2的display2适配。步骤S1127可以参考前述图10C所示的场景。
可以理解的,图11所示方法中对步骤进行编号以及描述的先后顺序并不构成对执行各个步骤的先后顺序的限定。例如,上述步骤S1114和步骤S1116可以是多屏协同助手410同时执行的。或者,多屏协同助手410可以先执行步骤S1114和步骤S1116之间的任意一个,之后再执行另一个。再例如,上述步骤S1121和步骤S1125可以是多屏框架服务模块420同时执行的。或者,多屏框架服务模块420可以先执行步骤S1121和步骤S1125之间的任意一个,之后再执行另一个。
由上述图11所示的方法可知,在电子设备100和电子设备200多屏协同的过程中,用户可以对电子设备200上显示的多屏协同窗口的尺寸进行调整。其中,用户可以将多屏协同窗口的尺寸调整为多种不同的尺寸。多屏协同窗口的长宽比可以改变。在上述多屏协同窗口的尺寸变化后,多屏协同窗口中显示的应用界面的布局也可以适应性调整,以适配尺寸变化后的多屏协同窗口。这样,用户可以通过调整多屏协同窗口的尺寸,更好地为一个或多个多屏协同窗口以及一个或多个电子设备200运行其它应用显示的窗口分配合理的显示区域,提高电子设备200的屏幕空间使用率。用户可以将多屏协同窗口的尺寸调整至自己想要的尺寸,这可以提升用户在使用设备进行多屏协同的体验。
上述应用界面的布局可以包括以平行视界的样式显示的布局。也即是说,用户可以通过调整多屏协同窗口的尺寸,使得多屏协同窗口中显示的应用界面的布局变化为平行视界的样式。上述方法可以方便用户在多屏协同的场景中使用平行视界功能,从而提高利用应用进行工作学习的效率。
图12A~图12C示例性示出了本申请实施例提供的另一种调整窗口尺寸的场景。
这里以调整前述图10B所示子窗口550的尺寸为例进行说明。
如图12A所示,电子设备200可以显示子窗口550。用户可以调整子窗口550的尺寸。响应于触摸子窗口550的右边缘并向右滑动的用户操作,电子设备200可以将子窗口550的右边缘向右移动,从而增加子窗口550的宽度。当上述调整子窗口550的用户操作释放(例如用户触摸子窗口550右边缘的手指离开电子设备200的屏幕),电子设备200可以确定子窗口550被调整后的尺寸。例如,经过图12A所示的尺寸调整,子窗口550的横向的宽度从q1变化为q2,纵向的高度(也即长度)不变。
在一些实施例中,电子设备200可以将子窗口550调整后的尺寸(或子窗口550对应的display调整后的尺寸)发送给电子设备100。电子设备100可以根据子窗口550调整后的尺寸,判断子窗口550中显示的应用界面是否具有适配尺寸调整后的子窗口550的布局。若判断出子窗口550中显示的应用界面既具有适配尺寸调整后的子窗口550的布局,而且子窗口550中显示的应用支持平行视界功能,调整后的尺寸适合用户界面以平行视界的样式布局,电子设备100可以通过电子设备200询问用户将应用界面以单窗口的样式呈现,还是以平行视界的样式呈现。
上述单窗口的样式可以表示在子窗口550中显示一个应用任务(如一个activity)对应的用户界面。在单窗口样式下,当切换子窗口550中显示的用户界面,用户界面对应的应用任务可能发生改变。电子设备200在子窗口550中以单窗口的样式显示应用界面的场景可以参考前述图10B所示的子窗口550。
上述平行视界的样式可以表示在子窗口550中显示两个应用任务(如两个activity)对应的用户界面。例如,子窗口550中的左侧区域显示这两个应用任务中一个应用任务对应的用户界面,右侧区域显示另一个应用任务对应的用户界面。这两个应用任务对应的用户界面在子窗口550中可以是相互独立的。用户可以分别对这两个应用任务对应的用户界面进行操作。电子设备200在子窗口550中以平行视界的样式显示应用界面的场景可以参考前述图10C所示的子窗口550。
示例性地,子窗口550的尺寸调整为图12A所示横向的宽度为q2的尺寸。电子设备100可以判断出在该调整后的尺寸下,子窗口550中显示的视频应用界面既具有以单窗口的样式显示,且适配当前子窗口550的布局。并且,子窗口550中显示的视频应用支持平行视界功能,该子窗口550调整后的尺寸适合应用界面以平行视界的样式布局。电子设备100可以向电子设备200发送询问消息。根据该询问消息,电子设备200可以显示图12B所示的提示框1210。
如图12B所示,提示框1210可用于询问用户是否开启平行视界功能。提示框1210中可包含文字提示“当前窗口尺寸可支持平行视界,是否开启平行视界功能”。提示框1210中还可包含确认控件1211和取消控件1212。其中,确认控件1211可用于开启平行视界功能。取消控件1212可用于取消开启平行视界功能。也即是说,用户可以通过确认控件1211来使得子窗口550中的视频应用界面按照平行视界的样式显示,通过取消控件1212来使得子窗口550中的视频应用界面按照单窗口的样式显示。
响应于图12B所示对取消控件1212的用户操作,电子设备200可以显示图12C所示的子窗口550。
如图12C所示,子窗口550中视频应用界面(即视频A的视频播放界面)可以按照单窗口的样式显示。其中,图12C所示子窗口550中视频应用界面的布局可以称为分栏显示样式的布局(即分栏布局)。例如,该视频应用界面上可以显示有两栏:左边栏和右边栏。左边栏所在的区域上可显示有视频A的播放内容。右边栏所在的区域上可显示有相关视频的推荐选项。本申请实施例对视频应用界面的分栏布局不作具体限定。
对比图10B中的子窗口550和图12C中的子窗口550可知,经过图12A所示的尺寸调整,子窗口550中视频应用界面的布局改变。上述布局改变具体可以表现为视频应用界面中界面元素的排布方式改变、界面元素的显示样式改变。
其中,当检测到图12B所示对取消控件1212的用户操作,电子设备200可以将取消开启平行视界功能的消息发送给电子设备100。电子设备100可以生成图12C所示子窗口550中的视频应用界面,并编码得到视频流。电子设备100可以将视频流发送给电子设备200。然后,电子设备200可以根据视频流在显示图12C所示的子窗口550。
在一些实施例中,当检测到对图12B所示确定控件1211的用户操作,电子设备200可以将开启平行视界功能的消息发送给电子设备100。电子设备100可以生成视频应用中具有平行视界的样式的用户界面,并编码得到视频流。电子设备100可以将视频流发送给电子设备200。然后,电子设备200可以根据视频流在子窗口550中显示具有平行视界的样式的视频应用界面。子窗口550中具有平行视界的样式的视频应用界面可以参考前述图10C所示子窗口550中显示的界面。这里不再赘述。
在一些实施例中,应用可以支持平行视界功能。在上述多屏协同的场景中,应用中平行视界的样式和非平行视界的样式可以具有预设的优先级顺序。例如,平行视界的样式的优先级高于非平行视界的样式的优先级。上述非平行视界的样式可以包括前述图10B所示子窗口550中的竖屏显示样式、前述图12C所示子窗口550中的分栏显示样式。本申请实施例对上述非平行视界的样式不作限定。上述非平行视界的样式也可称为单窗口的样式。本申请实施例对该名称不作限定。当尺寸调整后的多屏协同窗口既适合应用界面以非平行视界的样式显示,又适合应用界面以平行视界的样式显示,电子设备100可以根据应用中平行视界的样式和非平行视界的样式的优先级排序来确定如何在多屏协同窗口中显示应用界面。例如,平行视界的样式的优先级高于非平行视界的样式的优先级。那么,电子设备100可以按照平行视界的样式来绘制、渲染应用界面,得到该应用界面的显示数据。然后,电子设备100可以将上述显示数据(即视频流)发送给电子设备200。电子设备200可以在多屏协同窗口中以平行视界的样式来显示应用界面。
其中,不同的应用中行视界的样式和非平行视界的样式具有的优先级顺序可以不同。本申请实施例对此不作限定。
图13A和图13B示例性示出了本申请实施例提供的另一种调整窗口尺寸的场景。
如图13A所示,电子设备200可以显示多屏协同窗口1311。用户可以调整多屏协同窗口1311的尺寸。
在一些实施例中,响应于触摸多屏协同窗口1311的右边缘并向左滑动的用户操作,电子设备200可以将子窗口的右边缘向右滑动,从而减小多屏协同窗口1311的宽度。当上述调整多屏协同窗口1311的操作释放(例如用户触摸多屏协同窗口1311右边缘的手指离开电子设备200的屏幕),电子设备200可以判断多屏协同窗口1311被调整后的尺寸是否在预设尺寸范围内。
上述预设尺寸范围可以包括窗口的长宽比所属的范围。可选的,上述预设尺寸范围还可以包括窗口纵向的高度(也即长度)所属的范围,窗口横向的宽度所属的范围。若尺寸调整后多屏协同窗口1311的尺寸不属于上述预设尺寸范围,则电子设备200可以提示用户该尺寸无效,多屏协同窗口1311的尺寸无法被调整至该尺寸。
示例性地,经过图13A所示的尺寸调整,多屏协同窗口1311的横向的宽度从q3变化为q4,纵向的高度不变。电子设备200可以判断出图13A所示多屏协同窗口1311在宽度为q4时对应的尺寸不属于上述预设尺寸范围,电子设备200可以显示图13B所示的提示框1312。该提示框1312可用于提示用户多屏协同窗口1311的尺寸不支持调整至该尺寸。本申请实施例对提示框1312中的具体内容不作限定。
另外,在显示图13B所示的提示框后,电子设备200仍可以按照图13A所示宽度为q3对应的多屏协同窗口1311的尺寸显示应用界面。即多屏协同窗口1311的尺寸并未改变。
可以理解的,上述实施例可以减少用户将多屏协同窗口的尺寸调整为极端尺寸(如长宽比极大,或者长宽比极小的尺寸)的情况。在上述极端尺寸下,多屏协同窗口中的应用界面可能无法显示出来。上述实施例可以帮助用户更加合理地调整多屏协同窗口的尺寸。
不限于上述图13A和图13B所示提示用户尺寸调整无效的方法。在一些实施例中,在用户调节多屏协同窗口的过程中,若多屏协同窗口的尺寸达到上述预设尺寸范围的边界值,用户可能无法继续将多屏协同窗口的尺寸朝着超出预设尺寸范围的方向进行调整。这也可以减少用户将多屏协同窗口的尺寸调整为极端尺寸的情况。
可以理解的,在本申请实施例中描述的各个用户界面仅为示例界面,并不对本申请方案构成限定。在其它实施例中,用户界面可以采用不同的界面布局,可以包括更多或更少的控件,可以增加或减少其它功能选项,只要基于本申请提供的同一发明思想,都在本申请保护范围内。
需要说明的是,在不产生矛盾或冲突的情况下,本申请任意实施例中的任意特征,或任意特征中的任意部分都可以组合,组合后的技术方案也在本申请实施例的范围内。
以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。
Claims (28)
1.一种窗口尺寸调整方法,其特征在于,所述方法包括:
第一设备显示第一窗口,所述第一窗口用于显示第二设备的界面;所述第一窗口具有第一尺寸,所述第一窗口中显示的第一内容按照第一界面布局呈现,所述第一界面布局适配具有所述第一尺寸的所述第一窗口;
所述第一设备接收到第一操作,所述第一操作用于将所述第一窗口的尺寸调整为第二尺寸,所述第一窗口在所述第一尺寸下的第一长宽比与在所述第二尺寸下的第二长宽比不同;
响应于所述第一操作,所述第一设备以所述第二尺寸显示所述第一窗口,并在所述第一窗口中按照第二界面布局呈现第二内容,所述第二内容与所述第一内容均包含第三内容,所述第二界面布局适配具有所述第二尺寸的所述第一窗口,所述第二界面布局不同于所述第一界面布局。
2.根据权利要求1所述的方法,其特征在于,所述第三内容为所述第一内容;
其中,所述第二内容包含所述第一内容和第四内容,所述第一内容和所述第四内容均为第一应用的界面内容。
3.根据权利要求2所述的方法,其特征在于,所述第二界面布局为分栏布局,所述分栏布局表示在一个窗口中划分多行和/或多列显示一个应用界面上的界面内容,所述第二内容为所述第一应用中一个应用界面上的界面内容,所述第一内容和所述第四内容分别显示在所述第一窗口的两行或两列显示区域中。
4.根据权利要求2所述的方法,其特征在于,所述第一应用支持第一功能,所述第一功能用于在一个窗口中显示同一个应用的两个应用界面;其中,所述第一内容为所述第一应用的第一应用界面上的界面内容,所述第四内容为所述第一应用的第二应用界面上的界面内容,
所述在所述第一窗口中按照第二界面布局呈现第二内容,具体包括:
确定所述第一窗口中的第一显示区域和第二显示区域,在所述第一显示区域中显示所述第一内容,并在所述第二显示区域中显示所述第四内容。
5.根据权利要求1所述的方法,其特征在于,所述第二内容为所述第一内容;或者,
所述第二内容包含所述第一内容中的一部分界面元素。
6.根据权利要求1-3以及5中任一项所述的方法,其特征在于,所述第一尺寸在第一尺寸范围内,所述第二尺寸在第二尺寸范围内,所述第一尺寸范围和所述第二尺寸范围不同;
其中,所述第三内容在所述第一界面布局和所述第二界面布局中的界面元素排布方式不同。
7.根据权利要求1-3以及5中任一项所述的方法,其特征在于,所述第三内容在所述第一界面布局和所述第二界面布局中的界面元素排布方式相同,所述第三内容在所述第一界面布局和所述第二界面布局中的界面元素显示样式不同。
8.根据权利要求7所述的方法,其特征在于,所述第一尺寸和所述第二尺寸均在第一尺寸范围内。
9.根据权利要求1-8中任一项所述的方法,其特征在于,所述第一设备以所述第二尺寸显示所述第一窗口之后,所述方法还包括:
所述第一设备接收到第二操作,所述第二操作用于将所述第一窗口的尺寸调整为第三尺寸,所述第一窗口在所述第三尺寸下的长宽比与所述第二长宽比相同;
响应于所述第二操作,所述第一设备以所述第三尺寸显示所述第一窗口,并在所述第一窗口中按照第三界面布局呈现所述第二内容,所述第三界面布局适配具有所述第三尺寸的所述第一窗口;
其中,所述第二内容在所述三界面布局和所述第二界面布局中的界面元素排布方式相同,所述第二内容在所述第三界面布局和所述第二界面布局中的界面元素显示样式不同。
10.根据权利要求1-9中任一项所述的方法,其特征在于,所述方法还包括:
所述第一设备显示第二窗口,所述第二窗口中显示的内容与所述第二设备屏幕上显示的内容保持同步;所述第二窗口的长宽比根据所述第二设备的屏幕尺寸确定,所述第二窗口的长宽比保持不变。
11.一种窗口尺寸调整方法,其特征在于,所述方法应用于包含第一设备和第二设备的通信系统,所述方法包括:
第一设备显示第一窗口,所述第一窗口用于显示第二设备的界面;所述第一窗口具有第一尺寸,所述第一窗口中显示的第一内容按照第一界面布局呈现,所述第一界面布局适配具有所述第一尺寸的所述第一窗口;
所述第一设备接收到第一操作,所述第一操作用于将所述第一窗口的尺寸调整为第二尺寸,所述第一窗口在所述第一尺寸下的第一长宽比与在所述第二尺寸下的第二长宽比不同;
响应于所述第一操作,所述第一设备向所述第二设备发送第一消息,所述第一消息包含所述第一窗口的第一标识和所述第二尺寸;
所述第二设备根据所述第一消息,确定按照第二界面布局呈现的第二内容,并得到第一显示数据,所述第二内容与所述第一内容均包含第三内容,所述第二界面布局适配具有所述第二尺寸的所述第一窗口,所述第二界面布局不同于所述第一界面布局;
所述第二设备将所述第一显示数据发送给所述第一设备;
所述第一设备以所述第二尺寸显示所述第一窗口,并根据所述第一显示数据在所述第一窗口中按照所述第二界面布局呈现所述第二内容。
12.根据权利要求11所述的方法,其特征在于,所述第三内容为所述第一内容;
其中,所述第二内容包含所述第一内容和第四内容,所述第一内容和所述第四内容均为第一应用的界面内容。
13.根据权利要求12所述的方法,其特征在于,所述第二界面布局为分栏布局,所述分栏布局表示在一个窗口中划分多行和/或多列显示一个应用界面上的界面内容,所述第二内容为所述第一应用中一个应用界面上的界面内容,所述第一内容和所述第四内容分别显示在所述第一窗口的两行或两列显示区域中。
14.根据权利要求12所述的方法,其特征在于,所述第一应用支持第一功能,所述第一功能用于在一个窗口中显示同一个应用的两个应用界面;其中,所述第一内容为所述第一应用的第一应用界面上的界面内容,所述第四内容为所述第一应用的第二应用界面上的界面内容;
所述在所述第一窗口中按照第二界面布局呈现第二内容,具体包括:
确定所述第一窗口中的第一显示区域和第二显示区域,在所述第一显示区域中显示所述第一内容,并在所述第二显示区域中显示所述第四内容。
15.根据权利要求11所述的方法,其特征在于,所述第二内容为所述第一内容;或者,
所述第二内容包含所述第一内容中的一部分界面元素。
16.根据权利要求11-13以及15中任一项所述的方法,其特征在于,所述第一尺寸在第一尺寸范围内,所述第二尺寸在第二尺寸范围内,所述第一尺寸范围和所述第二尺寸范围不同;
其中,所述第三内容在所述第一界面布局和所述第二界面布局中的界面元素排布方式不同。
17.根据权利要求11-13以及15中任一项所述的方法,其特征在于,所述第三内容在所述第一界面布局和所述第二界面布局中的界面元素排布方式相同,所述第三内容在所述第一界面布局和所述第二界面布局中的界面元素显示样式不同。
18.根据权利要求17所述的方法,其特征在于,所述第一尺寸和所述第二尺寸均在第一尺寸范围内。
19.根据权利要求11-18中任一项所述的方法,其特征在于,所述第一设备以所述第二尺寸显示所述第一窗口之后,所述方法还包括:
所述第一设备接收到第二操作,所述第二操作用于将所述第一窗口的尺寸调整为第三尺寸,所述第一窗口在所述第三尺寸下的长宽比与所述第二长宽比相同;
响应于所述第二操作,所述第一设备向所述第二设备发送第二消息,所述第二消息包含所述第一标识和所述第三尺寸;
所述第二设备根据所述第二消息,将所述第二内容的界面布局调整为第三界面布局,并得到第二显示数据,所述第三界面布局适配具有所述第三尺寸的所述第一窗口;
所述第二设备将所述第二显示数据发送给所述第一设备;
所述第一设备以所述第三尺寸显示所述第一窗口,并根据所述第二显示数据在所述第一窗口中按照上述第三界面布局呈现所述第二内容;
其中,所述第二内容在所述三界面布局和所述第二界面布局中的界面元素排布方式相同,所述第二内容在所述第三界面布局和所述第二界面布局中的界面元素显示样式不同。
20.根据权利要求11-19中任一项所述的方法,其特征在于,所述方法还包括:
所述第二设备根据屏幕上显示的界面内容,得到第三显示数据,并将所述第三显示数据发送给所述第一设备;
所述第一设备显示第二窗口,并根据所述第三显示数据在所述第二窗口中显示第五内容,所述第五内容与所述第二设备屏幕上显示的内容保持同步;所述第二窗口的长宽比根据所述第二设备的屏幕尺寸确定,所述第二窗口的长宽比保持不变。
21.一种窗口尺寸调整方法,其特征在于,所述方法包括:
第二设备确定在第一窗口中显示第一内容,且所述第一内容按照第一界面布局呈现,所述第一窗口是显示在第一设备中用于显示所述第二设备的界面的窗口,所述第一界面布局适配具有第一尺寸的所述第一窗口;
所述第二设备根据所述第一内容和所述第一界面布局,得到第一视频流,并向所述第一设备发送所述第一视频流,所述第一视频流用于在所述第一窗口中按照所述第一界面布局呈现所述第一内容;
所述第二设备接收到第一消息,所述第一消息包含所述第一窗口的第一标识和第二尺寸,所述第一窗口在所述第一尺寸下的第一长宽比与在所述第二尺寸下的第二长宽比不同;
根据所述第一消息,所述第二设备确定在所述第一窗口中显示第二内容,且所述第二内容按照第二界面布局呈现,所述第二内容与所述第一内容均包含第三内容,所述第二界面布局适配具有所述第二尺寸的所述第一窗口,所述第二界面布局不同于所述第一界面布局;
所述第二设备根据所述第二内容和所述第一界面布局,得到第二视频流,并向所述第一设备发送所述第二视频流,所述第二视频流用于在所述第一窗口中按照所述第二界面布局呈现所述第一内容。
22.根据权利要求21所述的方法,其特征在于,所述第三内容为所述第一内容;
其中,所述第二内容包含所述第一内容和第四内容,所述第一内容和所述第四内容均为第一应用的界面内容。
23.根据权利要求22所述的方法,其特征在于,所述第二界面布局为分栏布局,所述分栏布局表示在一个窗口中划分多行和/或多列显示一个应用界面上的界面内容,所述第二内容为所述第一应用中一个应用界面上的界面内容。
24.根据权利要求22所述的方法,其特征在于,所述第一应用支持第一功能,所述第一功能用于在一个窗口中显示同一个应用的两个应用界面;其中,所述第一内容为所述第一应用的第一应用界面上的界面内容,所述第四内容为所述第一应用的第二应用界面上的界面内容。
25.根据权利要求21-24中任一项所述的方法,其特征在于,所述向所述第一设备发送所述第二视频流之后,所述方法还包括:
所述第二设备接收到第二消息,所述第二消息包含所述第一标识和第三尺寸,所述第一窗口在所述第三尺寸下的长宽比与所述第二长宽比相同;
根据所述第二消息,所述第二设备将所述第二内容的界面布局调整为第三界面布局,并得到第三视频流,所述第三界面布局适配具有所述第三尺寸的所述第一窗口,所述第三视频流用于在所述第一窗口中按照所述第三界面布局呈现所述第一内容;
其中,所述第二内容在所述三界面布局和所述第二界面布局中的界面元素排布方式相同,所述第二内容在所述第三界面布局和所述第二界面布局中的界面元素显示样式不同;
所述第二设备向所述第一设备发送所述第三视频流。
26.一种电子设备,其特征在于,所述电子设备包括存储器和处理器,其中,所述存储器用于存储计算机程序,所述处理器用于调用所述计算机程序,使得所述电子设备执行权利要求1-10或21-25中任一项所述的方法。
27.一种计算机可读存储介质,包括指令,其特征在于,当所述指令在电子设备上运行,使得所述电子设备执行权利要求1-10或21-25中任一项所述的方法。
28.一种计算机程序产品,其特征在于,所述计算机程序产品包含计算机指令,当所述计算机指令在电子设备上运行,使得所述电子设备执行权利要求1-10或21-25中任一项所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210521904.3A CN117093290A (zh) | 2022-05-13 | 2022-05-13 | 窗口尺寸调整方法、相关装置及通信系统 |
PCT/CN2023/093011 WO2023217142A1 (zh) | 2022-05-13 | 2023-05-09 | 窗口尺寸调整方法、相关装置及通信系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210521904.3A CN117093290A (zh) | 2022-05-13 | 2022-05-13 | 窗口尺寸调整方法、相关装置及通信系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117093290A true CN117093290A (zh) | 2023-11-21 |
Family
ID=88729720
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210521904.3A Pending CN117093290A (zh) | 2022-05-13 | 2022-05-13 | 窗口尺寸调整方法、相关装置及通信系统 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN117093290A (zh) |
WO (1) | WO2023217142A1 (zh) |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9584583B2 (en) * | 2013-09-11 | 2017-02-28 | Oracle International Corporation | Desktop and mobile device integration |
CN115623257A (zh) * | 2020-04-20 | 2023-01-17 | 华为技术有限公司 | 投屏显示方法、系统、终端设备和存储介质 |
CN114115870A (zh) * | 2020-08-25 | 2022-03-01 | 华为技术有限公司 | 用户接口界面实现方法及装置 |
CN113553014B (zh) * | 2020-09-10 | 2023-01-06 | 华为技术有限公司 | 多窗口投屏场景下的应用界面显示方法及电子设备 |
-
2022
- 2022-05-13 CN CN202210521904.3A patent/CN117093290A/zh active Pending
-
2023
- 2023-05-09 WO PCT/CN2023/093011 patent/WO2023217142A1/zh unknown
Also Published As
Publication number | Publication date |
---|---|
WO2023217142A1 (zh) | 2023-11-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11797145B2 (en) | Split-screen display method, electronic device, and computer-readable storage medium | |
CN113553014B (zh) | 多窗口投屏场景下的应用界面显示方法及电子设备 | |
US11921987B2 (en) | System navigation bar display method, system navigation bar control method, graphical user interface, and electronic device | |
CN112558825A (zh) | 一种信息处理方法及电子设备 | |
JP7480931B2 (ja) | アプリケーションアイコンを表示する方法および電子デバイス | |
CN111147660B (zh) | 一种控件的操作方法及电子设备 | |
CN112527174B (zh) | 一种信息处理方法及电子设备 | |
JP2023503679A (ja) | マルチウィンドウ表示方法、電子デバイス及びシステム | |
US20220214891A1 (en) | Interface display method and electronic device | |
CN112527222A (zh) | 一种信息处理方法及电子设备 | |
CN114115619A (zh) | 一种应用程序界面显示的方法及电子设备 | |
CN116095881A (zh) | 一种多设备协同方法、电子设备及相关产品 | |
US20230119849A1 (en) | Three-dimensional interface control method and terminal | |
WO2022166713A1 (zh) | 电子设备及其应用的显示方法和介质 | |
WO2022161119A1 (zh) | 一种显示方法及电子设备 | |
CN117093290A (zh) | 窗口尺寸调整方法、相关装置及通信系统 | |
US20240086035A1 (en) | Display Method and Electronic Device | |
WO2024022137A1 (zh) | 一种投屏方法及设备 | |
US20240045559A1 (en) | Display Method, Electronic Device, Storage Medium, and Program Product | |
CN115904164A (zh) | 一种分屏显示方法及电子设备 | |
CN114356186A (zh) | 一种拖动阴影动画效果的实现方法及相关设备 | |
CN117130516A (zh) | 一种显示方法及电子设备 | |
CN116680019A (zh) | 一种屏幕图标移动方法、电子设备、存储介质及程序产品 | |
CN115185440A (zh) | 一种控件显示方法及相关设备 | |
CN115686401A (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 |