CN113553014B - 多窗口投屏场景下的应用界面显示方法及电子设备 - Google Patents
多窗口投屏场景下的应用界面显示方法及电子设备 Download PDFInfo
- Publication number
- CN113553014B CN113553014B CN202010949157.4A CN202010949157A CN113553014B CN 113553014 B CN113553014 B CN 113553014B CN 202010949157 A CN202010949157 A CN 202010949157A CN 113553014 B CN113553014 B CN 113553014B
- Authority
- CN
- China
- Prior art keywords
- application
- screen
- interface
- size
- window
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 113
- 238000012545 processing Methods 0.000 claims description 45
- 238000011161 development Methods 0.000 claims description 26
- 238000003860 storage Methods 0.000 claims description 20
- 238000004590 computer program Methods 0.000 claims description 15
- 239000003086 colorant Substances 0.000 claims description 4
- 230000008569 process Effects 0.000 abstract description 54
- 230000003044 adaptive effect Effects 0.000 abstract description 42
- 230000000977 initiatory effect Effects 0.000 abstract description 19
- 238000004891 communication Methods 0.000 description 52
- 230000000694 effects Effects 0.000 description 46
- 238000007726 management method Methods 0.000 description 45
- 230000006870 function Effects 0.000 description 33
- 238000010586 diagram Methods 0.000 description 15
- 238000007667 floating Methods 0.000 description 15
- 230000005540 biological transmission Effects 0.000 description 14
- 238000009877 rendering Methods 0.000 description 13
- 238000010295 mobile communication Methods 0.000 description 12
- 230000004044 response Effects 0.000 description 11
- 238000005516 engineering process Methods 0.000 description 10
- 230000007704 transition Effects 0.000 description 10
- 238000005266 casting Methods 0.000 description 9
- 238000012544 monitoring process Methods 0.000 description 8
- 230000003993 interaction Effects 0.000 description 6
- 230000001960 triggered effect Effects 0.000 description 6
- 230000008859 change Effects 0.000 description 5
- 238000013500 data storage Methods 0.000 description 5
- 238000012546 transfer Methods 0.000 description 5
- 229920001621 AMOLED Polymers 0.000 description 3
- 230000001133 acceleration Effects 0.000 description 3
- 238000006073 displacement reaction Methods 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- 230000000007 visual effect Effects 0.000 description 3
- 230000002159 abnormal effect Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000007796 conventional method Methods 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 238000003825 pressing Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 239000008186 active pharmaceutical agent Substances 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000003416 augmentation Effects 0.000 description 1
- 210000000988 bone and bone Anatomy 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 239000002096 quantum dot Substances 0.000 description 1
- 230000005855 radiation Effects 0.000 description 1
- 239000000523 sample Substances 0.000 description 1
- 230000005236 sound signal Effects 0.000 description 1
- 238000013519 translation Methods 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
- 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
-
- 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
- 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/04845—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range for image manipulation, e.g. dragging, rotation, expansion or change of colour
-
- 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
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/14—Display of multiple viewports
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2340/00—Aspects of display data processing
- G09G2340/04—Changes in size, position or resolution of an image
- G09G2340/0492—Change of orientation of the displayed image, e.g. upside-down, mirrored
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2354/00—Aspects of interface with display user
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本申请公开了多窗口投屏场景下的应用界面显示方法及电子设备,涉及电子技术领域,能够在多窗口投屏时,实现投屏界面以适配状态、适配尺寸进行投屏,提升用户的投屏体验度。本申请中,第一设备在向第二设备投屏的过程中,通过根据接收到的,用于发起投屏窗口(如第一应用的窗口)的横竖屏切换的转屏请求,重新更新第一应用的界面配置参数并重新向第二设备发送更新后的第一应用的界面配置参数,以实现第一应用的界面以适配状态(如横屏显示或竖屏显示)、适配尺寸投屏至第二设备。
Description
技术领域
本申请实施例涉及电子技术领域,尤其涉及多窗口投屏场景下的应用界面显示方法及电 子设备。
背景技术
随着应用显示技术的发展,越来越多的电子设备支持多窗口投屏技术。多窗口投屏技术 是通过将一个电子设备(如第一设备)上运行的多个应用界面投屏至另一个电子设备(如第 二设备)。
在第一设备向第二设备多窗口投屏前,响应于用户对第一设备上应用的启动操作(可选 地该启动操作在第一设备或第二设备上发生),第一设备可选地以自由悬浮窗的形式启动应用 界面。以及,第一设备通过向第二设备传输视频流,以完成应用界面在第二设备上的投屏。
在一些场景中,应用会提供横竖屏切换,从而铺满整个显示区域,给用户更好的使用体 验,应用例如视频播放应用等。但是,由于自由悬浮窗的显示范围无法铺满设备的整个显示 区域,因此通常电子设备无法对用户的自由悬浮窗的转屏请求做出响应。因此,会影响自由 悬浮窗应用投屏后的界面呈现效果,例如自由悬浮窗视频应用无法以最佳的横屏效果显示。 另外,即使电子设备可以对用户的自由悬浮窗的转屏请求做出响应,但是由于电子设备屏幕 的转向只有一种,因此多个自由悬浮窗无法独立地根据各自的需求旋转,而是只能朝同一方 向旋转。而有的应用(如视频应用)在竖屏显示时呈现效果不佳,有的应用(如应用) 在横屏显示时呈现效果不佳。因此,基于常规的多窗口投屏技术,投屏后的应用界面可能会 显示异常(如界面偏移、界面内容显示不完整等),呈现效果不佳。
发明内容
本申请实施例提供多窗口投屏场景下的应用界面显示方法及电子设备,能够在多窗口投 屏时,实现投屏界面以适配状态(如横屏显示或竖屏显示)、适配尺寸进行投屏,提升用户的 投屏体验度。
为达到上述目的,本申请实施例采用如下技术方案:
第一方面,提供一种多窗口投屏场景下的应用界面显示方法,该方法应用于第一设备向 第二设备投屏场景,该方法包括:第一设备接收用于发起第一应用的窗口的横竖屏切换的转 屏请求,其中,第一应用由第一设备投屏在第二设备上;第一设备在确定第一应用支持窗口 调整时,根据接收到的转屏请求更新第一应用的界面配置参数;第一设备向第二设备发送包 括第一应用的界面配置参数的第一信息,该第一信息用于第二设备的第一应用的窗口进行横 竖屏切换。
上述第一方面提供的技术方案,第一设备通过根据接收到的,用于发起第一应用的窗口 的横竖屏切换的转屏请求,重新更新第一应用的界面配置参数并重新向第二设备发送更新后 的第一应用的界面配置参数,以实现第一设备向第二设备投屏的第一应用的界面能够以适配 状态(如横屏显示或竖屏显示)、适配尺寸显示在第二设备上,提升用户的投屏体验度。
在一种可能的实现方式中,上述第一设备接收用户的转屏请求,包括:第一设备从第二 设备接收用户的转屏请求,该转屏请求由第二设备根据用户在第二设备上的第一操作确定。 本申请中,转屏请求可以是第一设备向第二设备投屏第一应用的过程中,用户通过对第二设 备上显示的第一应用界面的操作触发的。
在一种可能的实现方式中,上述第一设备接收用户的转屏请求,包括:响应于接收到用 户对第一设备的第二操作,第一设备确定接收到用户的转屏请求。本申请中,转屏请求可以 是第一设备向第二设备投屏第一应用的过程中,用户通过对第一设备上显示的第一应用界面 的操作触发的。
在一种可能的实现方式中,上述第一设备根据接收到的转屏请求更新第一应用的界面配 置参数,包括:第一设备根据转屏请求重新确定第一应用的窗口尺寸;第一设备根据重新 确定的第一应用的窗口尺寸,更新第一应用的界面配置参数。本申请中,第一设备可以根据 转屏请求重新确定第一应用的窗口尺寸,进而实现根据重新确定的第一应用的窗口尺寸更新 第一应用的界面配置参数。通过该方案,可以根据用户的操控,将第一应用的界面以适配状 态(如横屏显示或竖屏显示)、适配尺寸显示在第二设备上。
在一种可能的实现方式中,上述第一设备根据重新确定的第一应用的窗口尺寸,更新第 一应用的界面配置参数,包括:若转屏请求用于将第一应用的窗口由竖屏显示切换为横屏显 示,第一设备根据所述转屏请求调整第一应用的窗口尺寸,使得第一应用的窗口的宽度大于 高度;若转屏请求用于将第一应用的窗口由横屏显示切换为竖屏显示,第一设备根据转屏请 求调整第一应用的窗口尺寸,使得第一应用的窗口的宽度小于高度。通过该方案,可以根据 用户的操控,将第一应用的界面以适配状态(如横屏显示或竖屏显示)、适配尺寸显示在第二 设备上。
在一种可能的实现方式中,上述第一设备根据重新确定的第一应用的窗口尺寸,更新第 一应用的界面配置参数,包括:第一设备根据重新确定的第一应用的窗口尺寸,获取第一配 置信息;该第一配置信息是第一应用的界面边界信息;第一设备根据第一应用的界面边界信 息,获取第二配置信息;第二配置信息包括以下一种或多种:第一应用的转向、第一应用界 面上显示的图标、第一应用界面上显示的文字、第一应用界面上显示的每一个图标的显示位 置、大小和颜色、第一应用界面上显示的每一个文字的显示位置、大小和颜色;第一设备将 第一应用进程从屏幕配置监听中移除;第一设备将第一配置信息和第二配置信息更新为第一 应用的界面配置参数。本申请中,第一设备可以根据转屏请求重新确定第一应用的窗口尺寸, 进而实现根据重新确定的第一应用的窗口尺寸更新第一应用的界面配置参数。具体的,重新 确定的第一应用的窗口尺寸用于确定界面配置参数中第一应用的界面边界信息(即第一配置 信息),第一配置信息用于确定界面配置参数中第一应用的转向、第一应用界面上显示的图标、 第一应用界面上显示的文字、第一应用界面上显示的每一个图标的显示位置、大小和颜色、 第一应用界面上显示的每一个文字的显示位置、大小和颜色等。第一应用进程从屏幕配置监 听中移除用于避免第二设备上的第一应用窗口随着第一设备屏幕的旋转发生横竖屏切换。
在一种可能的实现方式中,上述第一设备根据所述转屏请求重新确定第一应用的窗口尺 寸,包括:第一设备根据所述转屏请求,基于第一应用的应用开发属性和/或应用数据配置 重新确定第一应用的窗口尺寸;或者,第一设备根据所述转屏请求,基于第一应用的应用开 发属性和/或应用数据,以及第一设备显示屏的尺寸重新确定第一应用的窗口尺寸;或者,第 一设备根据转屏请求,基于第一应用的应用开发属性和/或应用数据,以及第二设备显示屏的 尺寸重新确定第一应用的窗口尺寸。本申请中,第一设备支持根据应用开发属性和/或应用 数据配置,或者结合第一设备显示屏的尺寸或第二设备显示屏的尺寸重新确定第一应用的窗 口尺寸。以实现第一应用的界面以适配状态(如横屏显示或竖屏显示)、适配尺寸显示在第二 设备上,提升用户的投屏体验度。
在一种可能的实现方式中,上述方法还包括:第一设备确定第一应用的应用类别;若第 一应用的应用类别为第一类应用,第一设备根据转屏请求,基于第二设备的显示屏尺寸重新 确定第一应用的窗口尺寸;若第一应用的应用类别为第二类应用,第一设备根据转屏请求, 基于第一设备的显示屏尺寸重新确定第一应用的窗口尺寸。通过根据应用类别选择参考第一 设备显示屏尺寸还是第二设备显示屏尺寸确定第一应用的窗口尺寸,可以实现第一应用的界 面以适配状态(如横屏显示或竖屏显示)、适配尺寸显示在第二设备上,提升用户的投屏体验 度。
在一种可能的实现方式中,上述第一类应用为视频类应用。
在一种可能的实现方式中,上述第一操作包括以下中的任一种:旋转屏幕、点击虚拟按钮、预设触摸手势、对实际硬件的预设操作或语音指令。
第二方面,提供一种电子设备,该电子设备包括:处理单元,用于接收用于发起 第一应用的窗口的横竖屏切换的转屏请求,第一应用由第一设备投屏在第二设备上;以及,在确定第一应用支持窗口调整时,根据转屏请求更新第一应用的界面配置参数;收发单元,用于向第二设备发送包括第一应用的界面配置参数的第一信息,该第一信息用于第二设备的 第一应用的窗口进行横竖屏切换。
上述第二方面提供的技术方案,第一设备通过根据接收到的,用于发起第一应用的窗口 的横竖屏切换的转屏请求,重新更新第一应用的界面配置参数并重新向第二设备发送更新后 的第一应用的界面配置参数,以实现第一设备向第二设备投屏的第一应用的界面能够以适配 状态(如横屏显示或竖屏显示)、适配尺寸显示在第二设备上,提升用户的投屏体验度。
在一种可能的实现方式中,上述处理单元具体用于,接收来自第二设备的,由第二设备 根据用户在第二设备上的第一操作确定的转屏请求。本申请中,转屏请求可以是第一设备向 第二设备投屏第一应用的过程中,用户通过对第二设备上显示的第一应用界面的操作触发的。
在一种可能的实现方式中,上述处理单元具体用于,接收来自第一设备根据用户对第一 设备的第二操作确定的转屏请求。本申请中,转屏请求可以是第一设备向第二设备投屏第一 应用的过程中,用户通过对第一设备上显示的第一应用界面的操作触发的。
在一种可能的实现方式中,上述处理单元根据接收到的转屏请求更新第一应用的界面配 置参数,包括:处理单元根据转屏请求重新确定第一应用的窗口尺寸;以及根据重新确定的 第一应用的窗口尺寸,更新第一应用的界面配置参数。本申请中,第一设备可以根据转屏请 求重新确定第一应用的窗口尺寸,进而实现根据重新确定的第一应用的窗口尺寸更新第一应 用的界面配置参数。通过该方案,可以根据用户的操控,将第一应用的界面以适配状态(如 横屏显示或竖屏显示)、适配尺寸显示在第二设备上。
在一种可能的实现方式中,上述处理单元根据重新确定的第一应用的窗口尺寸,更新第 一应用的界面配置参数,包括:若转屏请求用于将第一应用的窗口由竖屏显示切换为横屏显 示,处理单元根据所述转屏请求调整第一应用的窗口尺寸,使得第一应用的窗口的宽度大于 高度;若转屏请求用于将第一应用的窗口由横屏显示切换为竖屏显示,处理单元根据转屏请 求调整第一应用的窗口尺寸,使得第一应用的窗口的宽度小于高度。通过该方案,可以根据 用户的操控,将第一应用的界面以适配状态(如横屏显示或竖屏显示)、适配尺寸显示在第二 设备上。
在一种可能的实现方式中,上述处理单元根据重新确定的第一应用的窗口尺寸,更新第 一应用的界面配置参数,包括:处理单元根据重新确定的第一应用的窗口尺寸,获取第一配 置信息;该第一配置信息是第一应用的界面边界信息;处理单元根据第一应用的界面边界信 息,获取第二配置信息;第二配置信息包括以下一种或多种:第一应用的转向、第一应用界 面上显示的图标、第一应用界面上显示的文字、第一应用界面上显示的每一个图标的显示位 置、大小和颜色、第一应用界面上显示的每一个文字的显示位置、大小和颜色;处理单元将 第一应用进程从屏幕配置监听中移除;以及将第一配置信息和第二配置信息更新为第一应用 的界面配置参数。本申请中,第一设备可以根据转屏请求重新确定第一应用的窗口尺寸,进 而实现根据重新确定的第一应用的窗口尺寸更新第一应用的界面配置参数。具体的,重新确 定的第一应用的窗口尺寸用于确定界面配置参数中第一应用的界面边界信息(即第一配置信 息),第一配置信息用于确定界面配置参数中第一应用的转向、第一应用界面上显示的图标、 第一应用界面上显示的文字、第一应用界面上显示的每一个图标的显示位置、大小和颜色、 第一应用界面上显示的每一个文字的显示位置、大小和颜色等。第一应用进程从屏幕配置监 听中移除用于避免第二设备上的第一应用窗口随着第一设备屏幕的旋转发生横竖屏切换。
在一种可能的实现方式中,上述处理单元根据所述转屏请求重新确定第一应用的窗口尺 寸,包括:处理单元根据所述转屏请求,基于第一应用的应用开发属性和/或应用数据配置 重新确定第一应用的窗口尺寸;或者,根据所述转屏请求,基于第一应用的应用开发属性和/ 或应用数据,以及第一设备显示屏的尺寸重新确定第一应用的窗口尺寸;或者,根据转屏请 求,基于第一应用的应用开发属性和/或应用数据,以及第二设备显示屏的尺寸重新确定第一 应用的窗口尺寸。本申请中,第一设备支持根据应用开发属性和/或应用数据配置,或者结 合第一设备显示屏的尺寸或第二设备显示屏的尺寸重新确定第一应用的窗口尺寸。以实现第 一应用的界面以适配状态(如横屏显示或竖屏显示)、适配尺寸显示在第二设备上,提升用户 的投屏体验度。
在一种可能的实现方式中,上述处理单元还用于,确定第一应用的应用类别;若第一应 用的应用类别为第一类应用,则处理单元根据转屏请求,基于第二设备的显示屏尺寸重新确 定第一应用的窗口尺寸;若第一应用的应用类别为第二类应用,则处理单元根据转屏请求, 基于第一设备的显示屏尺寸重新确定第一应用的窗口尺寸。通过根据应用类别选择参考第一 设备显示屏尺寸还是第二设备显示屏尺寸确定第一应用的窗口尺寸,可以实现第一应用的界 面以适配状态(如横屏显示或竖屏显示)、适配尺寸显示在第二设备上,提升用户的投屏体验 度。
在一种可能的实现方式中,上述第一类应用为视频类应用。
在一种可能的实现方式中,上述第一操作包括以下中的任一种:旋转屏幕、点击虚拟按钮、预设触摸手势、对实际硬件的预设操作或语音指令。
第三方面,提供一种电子设备,该电子设备包括:存储器,用于存储计算机程序;收发 器,用于接收或发送无线电信号;处理器,用于执行所述计算机程序,使得电子设备接收用 于发起第一应用的窗口的横竖屏切换的转屏请求,其中,第一应用由第一设备投屏在第二设 备上;在确定第一应用支持窗口调整时,根据接收到的转屏请求更新第一应用的界面配置参 数;以及,向第二设备发送包括第一应用的界面配置参数的第一信息,该第一信息用于第二 设备的第一应用的窗口进行横竖屏切换。
上述第三方面提供的技术方案,第一设备通过根据接收到的,用于发起第一应用的窗口 的横竖屏切换的转屏请求,重新更新第一应用的界面配置参数并重新向第二设备发送更新后 的第一应用的界面配置参数,以实现第一设备向第二设备投屏的第一应用的界面能够以适配 状态(如横屏显示或竖屏显示)、适配尺寸显示在第二设备上,提升用户的投屏体验度。
在一种可能的实现方式中,上述处理器具体用于,接收来自第二设备的,由第二设备根 据用户在第二设备上的第一操作确定的转屏请求。本申请中,转屏请求可以是第一设备向第 二设备投屏第一应用的过程中,用户通过对第二设备上显示的第一应用界面的操作触发的。
在一种可能的实现方式中,上述处理器具体用于,接收来自第一设备根据用户对第一设 备的第二操作确定的转屏请求。本申请中,转屏请求可以是第一设备向第二设备投屏第一应 用的过程中,用户通过对第一设备上显示的第一应用界面的操作触发的。
在一种可能的实现方式中,上述处理器根据接收到的转屏请求更新第一应用的界面配置 参数,包括:处理器根据转屏请求重新确定第一应用的窗口尺寸;以及根据重新确定的第一 应用的窗口尺寸,更新第一应用的界面配置参数。本申请中,第一设备可以根据转屏请求重 新确定第一应用的窗口尺寸,进而实现根据重新确定的第一应用的窗口尺寸更新第一应用的 界面配置参数。通过该方案,可以根据用户的操控,将第一应用的界面以适配状态(如横屏 显示或竖屏显示)、适配尺寸显示在第二设备上。
在一种可能的实现方式中,上述处理器根据重新确定的第一应用的窗口尺寸,更新第一 应用的界面配置参数,包括:若转屏请求用于将第一应用的窗口由竖屏显示切换为横屏显示, 处理器根据所述转屏请求调整第一应用的窗口尺寸,使得第一应用的窗口的宽度大于高度; 若转屏请求用于将第一应用的窗口由横屏显示切换为竖屏显示,处理器根据转屏请求调整第 一应用的窗口尺寸,使得第一应用的窗口的宽度小于高度。通过该方案,可以根据用户的操 控,将第一应用的界面以适配状态(如横屏显示或竖屏显示)、适配尺寸显示在第二设备上。
在一种可能的实现方式中,上述处理器根据重新确定的第一应用的窗口尺寸,更新第一 应用的界面配置参数,包括:处理器根据重新确定的第一应用的窗口尺寸,获取第一配置信 息;该第一配置信息是第一应用的界面边界信息;处理器根据第一应用的界面边界信息,获 取第二配置信息;第二配置信息包括以下一种或多种:第一应用的转向、第一应用界面上显 示的图标、第一应用界面上显示的文字、第一应用界面上显示的每一个图标的显示位置、大 小和颜色、第一应用界面上显示的每一个文字的显示位置、大小和颜色;处理器将第一应用 进程从屏幕配置监听中移除;以及将第一配置信息和第二配置信息更新为第一应用的界面配 置参数。本申请中,第一设备可以根据转屏请求重新确定第一应用的窗口尺寸,进而实现根 据重新确定的第一应用的窗口尺寸更新第一应用的界面配置参数。具体的,重新确定的第一 应用的窗口尺寸用于确定界面配置参数中第一应用的界面边界信息(即第一配置信息),第一 配置信息用于确定界面配置参数中第一应用的转向、第一应用界面上显示的图标、第一应用 界面上显示的文字、第一应用界面上显示的每一个图标的显示位置、大小和颜色、第一应用 界面上显示的每一个文字的显示位置、大小和颜色等。第一应用进程从屏幕配置监听中移除 用于避免第二设备上的第一应用窗口随着第一设备屏幕的旋转发生横竖屏切换。
在一种可能的实现方式中,上述处理器根据所述转屏请求重新确定第一应用的窗口尺寸, 包括:处理器根据所述转屏请求,基于第一应用的应用开发属性和/或应用数据配置重新确定 第一应用的窗口尺寸;或者,根据所述转屏请求,基于第一应用的应用开发属性和/或应用数 据,以及第一设备显示屏的尺寸重新确定第一应用的窗口尺寸;或者,根据转屏请求,基于 第一应用的应用开发属性和/或应用数据,以及第二设备显示屏的尺寸重新确定第一应用的窗 口尺寸。本申请中,第一设备支持根据应用开发属性和/或应用数据配置,或者结合第一设 备显示屏的尺寸或第二设备显示屏的尺寸重新确定第一应用的窗口尺寸。以实现第一应用的 界面以适配状态(如横屏显示或竖屏显示)、适配尺寸显示在第二设备上,提升用户的投屏体 验度。
在一种可能的实现方式中,上述处理器还用于,执行所述计算机程序,使得电子设备确 定第一应用的应用类别;若第一应用的应用类别为第一类应用,则处理器根据转屏请求,基 于第二设备的显示屏尺寸重新确定第一应用的窗口尺寸;若第一应用的应用类别为第二类应 用,则处理器根据转屏请求,基于第一设备的显示屏尺寸重新确定第一应用的窗口尺寸。通 过根据应用类别选择参考第一设备显示屏尺寸还是第二设备显示屏尺寸确定第一应用的窗口 尺寸,可以实现第一应用的界面以适配状态(如横屏显示或竖屏显示)、适配尺寸显示在第二 设备上,提升用户的投屏体验度。
在一种可能的实现方式中,上述第一类应用为视频类应用。
在一种可能的实现方式中,上述第一操作包括以下中的任一种:旋转屏幕、点击虚拟按钮、预设触摸手势、对实际硬件的预设操作或语音指令。
第四方面,提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序 代码,该计算机程序代码被处理器执行时实现如第一方面任一种可能的实现方式中的方法。
第五方面,提供一种芯片系统,该芯片系统包括处理器、存储器,存储器中存储有计算 机程序代码;所述计算机程序代码被所述处理器执行时,实现如第一方面任一种可能的实现 方式中的方法。该芯片系统可以由芯片构成,也可以包含芯片和其他分立器件。
第六方面,提供一种计算机程序产品,当其在计算机上运行时,使得实现如第一方面任 一种可能的实现方式中的方法。
附图说明
图1为本申请实施例提供的一种多屏幕协作的场景示例图;
图2为本申请实施例提供的一种第一设备的硬件结构示意图;
图3为本申请实施例提供的一种第二设备的硬件结构示意图;
图4为本申请实施例提供的一种多窗口投屏场景下的应用界面显示过程示意图;
图5为本申请实施例提供的一种同源投屏示意图;
图6为本申请实施例提供的一种异源投屏示意图;
图7为本申请实施例提供的一种多窗口投屏场景下的应用界面显示方法流程图;
图8为本申请实施例提供的三种用户的第一操作示例图;
图9为本申请实施例提供的手机更新第一应用的界面配置参数的具体流程图;
图10为本申请实施例提供的一种投屏场景下的应用界面显示效果示例图一;
图11为本申请实施例提供的另一种多窗口投屏场景下的应用界面显示方法流程图;
图12为本申请实施例提供的一种投屏场景下的应用界面显示效果示例图二;
图13为本申请实施例提供的一种投屏场景下的应用界面显示效果示例图三;
图14为本申请实施例提供的一种投屏场景下的应用界面显示效果示例图四;
图15为本申请实施例提供的一种第一设备在虚拟屏幕上共同渲染投屏界面的示意图;
图16为本申请实施例提供的一种电子设备的结构框图;
图17为本申请实施例提供的另一种电子设备的结构框图;
图18为本申请实施例提供的一种电子设备的示意性结构图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。其中,在 本申请实施例的描述中,除非另有说明,“/”表示或的意思,例如,A/B可以表示A或B;本 文中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/ 或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,在本申请 实施例的描述中,“多个”是指两个或多于两个。
以下,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者 隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含 地包括一个或者更多个该特征。在本实施例的描述中,除非另有说明,“多个”的含义是两个 或两个以上。
本申请实施例提供一种多窗口投屏场景下的应用界面显示方法,该方法应用于多屏幕协 作(multi-Screen collaboration)的过程中。其中,多屏幕协作是指设备与设备(如第一设备 与第二设备)之间通过建立的通信连接,实现跨设备、跨系统的多屏协同交互的功能。
例如,在第一设备与第二设备建立了用于多屏幕协作的通信连接之后,第二设备上可以 同步显示有第一设备上启动的一个或多个应用界面。用户可以通过第二设备的硬件(如键盘、 鼠标、麦克风、扬声器等)等在上述一个或多个应用界面上操作。同时,用户可以通过第一 设备打开新的应用界面,以进一步同步至第二设备。另外,用户还可以在第二设备上完成与 第一设备的快速数据共享等功能。
请参考图1,图1示出了一种多屏幕协作的场景示例图。如图1所示,假设智能手机110 (即第一设备)与笔记本电脑120(即第二设备)之间建立了用于多屏幕协作的通信连接。 其中,在智能手机110与笔记本电脑120之间建立了上述通信连接之后,如图1所示,笔记 本电脑120上同步显示有智能手机110上显示的聊天界面。用户可以通过智能手机110 和笔记本电脑120中的任意一台设备在聊天界面上操作。
通过多屏幕协作,可以为用户提供便捷的使用体验。例如,由于笔记本电脑120的显示 屏尺寸往往大于智能手机110的显示屏尺寸,因此可以提升用户的观看感受。又如,笔记本 电脑120的鼠标可以充当用户的手指,实现在聊天界面上更精准的触控操作。又如, 笔记本电脑120的大尺寸物理键盘可以代替智能手机110显示屏上的小尺寸虚拟输入法窗口, 实现更好的文字录入体验。又如,笔记本电脑120的多声道立体声扬声器可以代替智能手机 110的扬声器,输出来自智能手机110的音频(如来自聊天界面的语音消息、智能手机 110正在播放的音乐文件等),实现音量和音质的提升。
其中,在本申请实施例中,第一设备与第二设备之间可以通过“碰一碰”、“扫一扫”(如 扫描二维码或条形码)、“靠近自动发现”(如借助蓝牙或无线保真(wirelessfidelity,WiFi)) 等方式建立无线通信连接。其中,第一设备与第二设备之间可以遵循无线传输协议,通过无 线连接收发器传输信息。其中,该无线传输协议可以包含但不限于蓝牙(bluetooth,BT)传 输协议或无线保真(wireless fidelity,WiFi)传输协议等。例如,WiFi传输协议可以是WiFi P2P 传输协议。该无线连接收发器包含但不限于蓝牙,WiFi等收发器。通过无线配对,实现第一 设备与第二设备之间的信息传输。其中,第一设备与第二设备之间传输的信息包括但不限于 需要显示的内容数据(如标准视频流)和控制指令等。
或者,第一设备与第二设备之间可以建立有线通信连接。例如,第一设备与第二设备之 间通过视频图像配接器(video graphics array,VGA)、数字视频接口(digitalvisual interface, DVI)、高清多媒体接口(high definition multimedia interface,HDMI)或数据传输线等建立有线 通信连接。第一设备与第二设备之间通过建立的有线通信连接实现信息传输。本申请不限定 第一设备与第二设备之间的具体连接方式。
本申请实施例提供的一种多窗口投屏场景下的应用界面显示方法中,示例性的,在第一 设备与第二设备之间建立了用于多屏幕协作的通信连接之后,假设响应于用户对第一设备上 一个或多个应用的启动操作,第一设备会以自由悬浮窗的形式在第一设备上启动投屏至第二 设备的一个或多个应用界面。在一些实施例中,第一设备在启动自由悬浮窗应用时,会将该 自由悬浮窗应用界面渲染到虚拟屏幕(virtual display)上。然后,将虚拟屏幕对应的Surface 编码成标准视频流传输到第二设备上,从而完成多窗口在第一设备和第二设备上的多屏幕协 作。基于多窗口在第一设备和第二设备上的多屏幕协作,用户可以通过第一设备和第二设备 协同操控第一设备向启动的一个或多个应用界面。
在本申请实施例中,第一设备和第二设备均包括显示屏。第一设备和第二设备可以包括 但不限于智能手机、上网本、平板电脑、智能手表、智能手环、电话手表、智能相机、掌上 电脑、个人计算机(personal computer,PC)、个人数字助理(personal digitalassistant,PDA)、 便携式多媒体播放器(portable multimedia player,PMP)、(augmentedreality,AR)/虚拟现 实(virtual reality,VR)设备、电视机、投影设备或人机交互场景中的体感游戏机等。或者, 第一设备和第二设备还可以是其他类型或结构的电子设备,本申请不限定。
通常,为了发挥多窗口投屏技术的最大优势,多窗口投屏可以应用于便携设备(即第一 设备)与大屏设备(即第二设备)之间。例如,便携设备是智能手机,大屏设备是笔记本电 脑。又如,便携设备是平板电脑,大屏设备是电视机。当然,本申请不限定多屏幕协作场景 中的具体设备,如上文所述,第一设备和第二设备可以为智能手机、上网本、平板电脑、智 能手表、智能手环、电话手表、智能相机、掌上电脑、PDA、PMP、AR/VR设备或电视机等 任意支持多屏幕协作的电子设备。
请参考图2,图2以智能手机为例,示出了本申请实施例提供的一种第一设备的硬件结 构示意图。如图2所示,第一设备可以包括处理器210,存储器(包括外部存储器接口220 和内部存储器221),通用串行总线(universal serialbus,USB)接口230,充电管理模块240, 电源管理模块241,电池242,天线1,天线2,移动通信模块250,无线通信模块260,音频 模块270,扬声器270A,受话器270B,麦克风270C,耳机接口270D,传感器模块280,按 键290,马达291,指示器292,摄像头293,显示屏294,以及用户标识模块(subscriberidentificationmodule,SIM)卡接口295等。其中传感器模块280可以包括压力传感器,陀螺仪传感器,气压传感器,磁传感器,加速度传感器,距离传感器,接近光传感器,指纹传感器,温度传感器,触摸传感器,环境光传感器,骨传导传感器等。
可以理解的是,本发明实施例示意的结构并不构成对第一设备的具体限定。在本申请另 一些实施例中,第一设备可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分 某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器210可以包括一个或多个处理单元。例如:处理器210可以包括应用处理器(applicationprocessor,AP),调制解调处理器,图形处理器(graphics processing unit,GPU), 图像信号处理器(image signal processor,ISP),飞行控制器,视频编解码器,数字信号处理器 (digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-networkprocessing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器 中。
处理器210中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器210 中的存储器为高速缓冲存储器。该存储器可以保存处理器210刚用过或循环使用的指令或数 据。如果处理器210需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复 存取,减少了处理器210的等待时间,因而提高了系统的效率。
在一些实施例中,处理器210可以包括一个或多个接口。接口可以包括集成电路(inter-integrated circuit,I2C)接口,集成电路内置音频(inter-integrated circuitsound,I2S) 接口,脉冲编码调制(pulse code modulation,PCM)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,UART)接口,移动产业处理器接口(mobile industryprocessor interface,MIPI),通用输入输出(general-purpose input/output,GPIO)接口,用户标识模块 (subscriber identitymodule,SIM)接口,和/或通用串行总线(universal serial bus,USB)接 口等。
充电管理模块240用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可 以是有线充电器。在一些有线充电的实施例中,充电管理模块240可以通过USB接口230接 收有线充电器的充电输入。在一些无线充电的实施例中,充电管理模块240可以通过第一设 备的无线充电线圈接收无线充电输入。充电管理模块240为电池242充电的同时,还可以通 过电源管理模块241为第一设备供电。
电源管理模块241用于连接电池242,充电管理模块240与处理器210。电源管理模块 241接收电池242和/或充电管理模块240的输入,为处理器210,内部存储器221,显示屏294,摄像组件293,和无线通信模块260等供电。电源管理模块241还可以用于监测电池容量,电池循环次数,电池健康状态(漏电,阻抗)等参数。在其他一些实施例中,电源管理 模块241也可以设置于处理器210中。在另一些实施例中,电源管理模块241和充电管理模 块240也可以设置于同一个器件中。
第一设备的无线通信功能可以通过天线1,天线2,移动通信模块250,无线通信模块260, 调制解调处理器以及基带处理器等实现。
天线1和天线2用于发射和接收电磁波信号。第一设备中的每个天线可用于覆盖单个或 多个通信频段。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为 无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
移动通信模块250可以提供应用在第一设备上的包括2G/3G/4G/5G等无线通信的解决方 案。移动通信模块250可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(lownoise amplifier,LNA)等。移动通信模块250可以由天线1接收电磁波,并对接收的电磁波进行 滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块250还可以对经调制解 调处理器调制后的信号放大,经天线1转为电磁波辐射出去。在一些实施例中,移动通信模 块250的至少部分功能模块可以被设置于处理器210中。在一些实施例中,移动通信模块250 的至少部分功能模块可以与处理器210的至少部分模块被设置在同一个器件中。
调制解调处理器可以包括调制器和解调器。其中,调制器用于将待发送的低频基带信号 调制成中高频信号。解调器用于将接收的电磁波信号解调为低频基带信号。随后解调器将解 调得到的低频基带信号传送至基带处理器处理。低频基带信号经基带处理器处理后,被传递 给应用处理器。应用处理器通过音频设备(不限于扬声器270A、受话器270B等)输出声音 信号,或通过显示屏294显示图像或视频。在一些实施例中,调制解调处理器可以是独立的 器件。在另一些实施例中,调制解调处理器可以独立于处理器210,与移动通信模块250或 其他功能模块设置在同一个器件中。
无线通信模块260可以提供应用在第一设备上的包括无线局域网(wirelesslocal area networks,WLAN)(如WiFi网络),蓝牙BT,全球导航卫星系统(globalnavigation satellite system,GNSS),调频(frequency modulation,FM),近距离无线通信技术(near field communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。无线通信模块260 可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块260经由天线2接收电 磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器210。无线通信模块 260还可以从处理器210接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐 射出去。
在一些实施例中,第一设备的天线1和移动通信模块250耦合,天线2和无线通信模块 260耦合,使得第一设备可以通过无线通信技术与网络以及其他设备通信。所述无线通信技 术可以包括全球移动通讯系统(global system formobile communications,GSM),通用分组无 线服务(general packet radio service,GPRS),码分多址接入(codedivision multiple access, CDMA),宽带码分多址(wideband code division multipleaccess,WCDMA),时分码分多址 (time-division code division multiple access,TD-SCDMA),长期演进(long term evolution, LTE),BT,GNSS,WLAN,NFC,FM,和/或IR技术等。所述GNSS可以包括全球卫星定 位系统(global positioning system,GPS),全球导航卫星系统(global navigation satellite system, GLONASS),北斗卫星导航系统(beidounavigation satellite system,BDS),准天顶卫星系统 (quasi-zenithsatellite system,QZSS)和/或星基增强系统(satellite based augmentation systems,SBAS)。
第一设备通过GPU,显示屏294,以及应用处理器等实现显示功能。GPU为图像处理的 微处理器,连接显示屏294和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器210可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
显示屏294用于显示图像,视频等。显示屏294包括显示面板。显示面板可以采用液晶 显示屏(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个显示屏294,N为大于1的正整数。
第一设备可以通过ISP,摄像组件293,视频编解码器,GPU,显示屏294以及应用处理 器等实现拍摄功能。
外部存储器接口220可以用于连接外部存储卡,例如Micro SD卡,实现扩展第一设备的 存储能力。外部存储卡通过外部存储器接口220与处理器210通信,实现数据存储功能。例 如将音乐,视频等文件保存在外部存储卡中。
内部存储器221可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。 内部存储器221可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至 少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储 第一设备使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器221 可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件, 闪存器件,通用闪存存储器(universal flash storage,UFS)等。处理器210通过运行存储在 内部存储器221的指令,和/或存储在设置于处理器中的存储器的指令,执行第一设备的各种 功能应用以及数据处理。
第一设备可以通过音频模块270,扬声器270A,受话器270B,麦克风270C以及应用处 理器等实现音频功能。例如音乐播放,录音等。关于音频模块270,扬声器270A,受话器270B 和麦克风270C的具体工作原理和作用,可以参考常规技术中的介绍。
按键290包括开机键,音量键等。按键290可以是机械按键。也可以是触摸式按键。第 一设备可以接收按键输入,产生与第一设备的用户设置以及功能控制有关的键信号输入。
马达291可以产生振动提示。马达291可以用于来电振动提示,也可以用于触摸振动反 馈。例如,作用于不同应用(例如拍照,音频播放等)的触摸操作,可以对应不同的振动反 馈效果。作用于显示屏294不同区域的触摸操作,马达291也可对应不同的振动反馈效果。 不同的应用场景(例如:时间提醒,接收信息,闹钟,游戏等)也可以对应不同的振动反馈 效果。触摸振动反馈效果还可以支持自定义。
指示器292可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息, 未接来电,通知等。
SIM卡接口295用于连接SIM卡。SIM卡可以通过插入SIM卡接口295,或从SIM卡接口295拔出,实现和第一设备的接触和分离。第一设备可以支持1个或N个SIM卡接口,N 为大于1的正整数。SIM卡接口295可以支持Nano SIM卡,Micro SIM卡,SIM卡等。同一 个SIM卡接口295可以同时插入多张卡。所述多张卡的类型可以相同,也可以不同。SIM卡 接口295也可以兼容不同类型的SIM卡。SIM卡接口295也可以兼容外部存储卡。第一设备 通过SIM卡和网络交互,实现通话以及数据通信等功能。在一些实施例中,第一设备采用eSIM, 即:嵌入式SIM卡。eSIM卡可以嵌在第一设备中,不能和第一设备分离。
需要说明的是,图2所示第一设备包括的硬件模块只是示例性地描述,并不对第一设备 的具体结构做出限定。例如,第一设备还可以包括其他功能模块。
作为一种示例,图3以第二设备是笔记本电脑为例,示出一种第二设备的硬件结构示意 图。如图3所示,笔记本电脑可以包括:处理器310,外部存储器接口320,内部存储器321, USB接口330,电源管理模块340,天线,无线通信模块360,音频模块370,扬声器370A,麦克风370C,音箱接口370B,鼠标380,键盘390,指示器391,摄像头393,以及显示屏 392等。
可以理解的是,本实施例示意的结构并不构成对笔记本电脑的具体限定。在另一些实施 例中,笔记本电脑可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部 件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器310可以包括一个或多个处理单元,例如:处理器310可以包括应用处理器AP, 调制解调处理器,图形处理器GPU,ISP,控制器,存储器,视频编解码器,DSP,基带处理器,和/或NPU等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处 理器中。
控制器可以是笔记本电脑的神经中枢和指挥中心。控制器可以根据指令完成取指令,产 生操作控制信号,进而执行指令的控制。
处理器310中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器310 中的存储器为高速缓冲存储器。该存储器可以保存处理器310刚用过或循环使用的指令或数 据。如果处理器310需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复 存取,减少了处理器310的等待时间,因而提高了系统的效率。在一些实施例中,处理器310 可以包括一个或多个接口。接口可以包括集成电路I2C接口,集成电路内置音频I2S接口, PCM接口,UART接口,MIPI,GPIO接口,和/或USB接口等。
可以理解的是,本实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成 对笔记本电脑的结构限定。在另一些实施例中,笔记本电脑也可以采用上述实施例中不同的 接口连接方式,或多种接口连接方式的组合。
电源管理模块340用于连接电源。充电管理模块340还可以与处理器310、内部存储器 321、显示屏394、摄像头393和无线通信模块360等连接。电源管理模块341接收电源的输入,为处理器310、内部存储器321、显示屏394、摄像头393和无线通信模块360等供电。 在一些实施例中,电源管理模块341也可以设置于处理器310中。
笔记本电脑的无线通信功能可以通过天线和无线通信模块360等实现。其中,无线通信 模块360可以提供应用在笔记本电脑上的包括无线局域网WLAN(如WiFi网络),蓝牙BT, 全球导航卫星系统GNSS,调频FM,近距离无线通信技术NFC,红外技术IR等无线通信的解决方案。
无线通信模块360可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块 360经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理 器310。无线通信模块360还可以从处理器310接收待发送的信号,对其进行调频,放大, 经天线2转为电磁波辐射出去。在一些实施例中,笔记本电脑的天线和无线通信模块360耦 合,使得笔记本电脑可以通过无线通信技术与网络以及其他设备通信。
笔记本电脑通过GPU,显示屏392,以及应用处理器等实现显示功能。GPU为图像处理 的微处理器,连接显示屏392和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。 处理器310可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。显示屏392用 于显示图像,视频等。该显示屏392包括显示面板。
笔记本电脑可以通过ISP,摄像头393,视频编解码器,GPU,显示屏392以及应用处理 器等实现拍摄功能。ISP用于处理摄像头393反馈的数据。在一些实施例中,ISP可以设置在 摄像头393中。
数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字 信号。例如,当笔记本电脑在频点选择时,数字信号处理器用于对频点能量进行傅里叶变换 等。视频编解码器用于对数字视频压缩或解压缩。笔记本电脑可以支持一种或多种视频编解 码器。这样,笔记本电脑可以播放或录制多种编码格式的视频,例如:动态图像专家组(moving picture experts group,MPEG)1,MPEG2,MPEG3,MPEG4等。
外部存储器接口320可以用于连接外部存储卡,例如Micro SD卡,实现扩展笔记本电脑 的存储能力。外部存储卡通过外部存储器接口320与处理器310通信,实现数据存储功能。 例如将音乐,视频等文件保存在外部存储卡中。
内部存储器321可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。 处理器310通过运行存储在内部存储器321的指令,从而执行笔记本电脑的各种功能应用以 及数据处理。例如,在本申请实施例中,处理器310可以通过执行存储在内部存储器321中 的指令,内部存储器321可以包括存储程序区和存储数据区。
其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能, 图像播放功能等)等。存储数据区可存储笔记本电脑使用过程中所创建的数据(比如音频数 据,电话本等)等。此外,内部存储器321可以包括高速随机存取存储器,还可以包括非易 失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universalflash storage, UFS)等。
笔记本电脑可以通过音频模块370,扬声器370A,麦克风370C,音箱接口370B,以及应用处理器等实现音频功能。例如,音乐播放,录音等。
指示器391可以是指示灯,可以用于指示笔记本电脑处于开机状态或者关机状态等。例 如,指示灯灭灯,可指示笔记本电脑处于关机状态;指示灯亮灯,可指示笔记本电脑处于开 机状态。
可以理解的是,本申请实施例示意的结构并不构成对笔记本电脑的具体限定。其可以具 有比图3中所示出的更多的或者更少的部件,可以组合两个或更多的部件,或者可以具有不 同的部件配置。例如,该笔记本电脑还可以包括音箱等部件。图3中所示出的各种部件可以 在包括一个或多个信号处理或专用集成电路在内的硬件、软件、或硬件和软件的组合中实现。
本申请以下实施例仅以第一设备和第二设备之间遵循无线传输协议实现信息传输作为示 例。
本申请实施例提供一种多窗口投屏场景下的应用界面显示方法,该方法用于提供一种将 从第一设备上运行的一个或多个应用的界面以适配状态(如横屏显示或竖屏显示)、适配尺寸 投屏至第二设备的显示屏上的技术方案,以提升用户投屏体验度。
其中,横屏显示是指应用窗口的宽高比(即宽和高的比)大于1,例如16:9、18:9、20:9 或16:10等。其中,应用窗口的高也可以理解为应用窗口的纵向长度,应用窗口的宽也可以 理解为应用窗口的横向长度,应用窗口的宽高比也可以理解为应用窗口的横纵比(即横向长 度与纵向长度的比)。竖屏显示是指应用窗口的宽高比小于1,例如9:16、9:18、9:20或10:16 等。
需要说明的是,本申请不限定在第一设备上以自由悬浮窗形式启动的应用数量以及具体 的应用。
示例性的,第一设备的软件系统可以采用分层架构,事件驱动架构,微核架构,微服务 架构,或云架构等。例如,在本申请中,电子设备(包括第一设备和第二设备)的操作系统 可以包括但不限于(Symbian)、(Android)、(iOS)、 (Blackberry)、鸿蒙(Harmony)等操作系统,本申请不限定。
请参考图4,图4以包括分层架构的Android系统为例,示出了本申请实施例提供的一种 多窗口投屏场景下的应用显示过程示意图。如图4所示,分层架构的Android系统可以包括 应用程序层,应用程序框架层,系统库,安卓运行时和内核层。
应用程序层可以包括一系列应用程序包,例如相机,图库,日历,通话,地图,导航,蓝牙,音乐,视频,短信息等应用程序。为方便描述,以下将应用程序简称为应用。第一设 备上的应用可以是原生的应用(如在第一设备出厂前,安装操作系统时安装在第一设备中的应用),也可以是第三方应用(如用户通过应用商店下载安装的应用),本申请实施例不予限定。
应用程序框架层为应用程序层的应用程序提供应用编程接口(applicationprogramming interface,API)和编程框架。如图4所示,应用程序框架层可以包括窗口管理服务(window manager service,WMS),活动管理服务(activity manager service,AMS),输入事件管理服 务(input manager service,IMS)和投屏管理模块。在一些实施例中,应用程序框架层还可以 包括内容提供器,视图系统,电话管理器,资源管理器,通知管理器等(图4中未示出)。
其中,WMS承载着和“界面”有关的数据和属性,用于管理和“界面”有关的状态,例如用于管理窗口程序和事件派发。其中,管理窗口程序是指根据应用程序的显示请求在应用 服务端和WMS的协助下有序地输出给物理屏幕或其他显示设备。事件派发是指将来自键盘、 物理按键、触摸屏、鼠标、轨迹球(TraceBoll)等的用户事件派发给相应的控件或窗口。窗 口管理服务还可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。
AMS用于负责管理Activity,负责系统中各组件的启动、切换、调度及应用程序的管理 和调度等工作。具体的,AMS中定义了分别用来保存进程(Process)、活动(Activity)和任务(Task) 的数据类。其中,进程(Process)对应的数据类可以包括进程文件信息、进程的内存状态信息 和进程中包含的Activity、Service等。Activity信息可以保存在ActivityStack中。其中, ActivityStack用于同统一调度应用程序Activity。ActivityStack具体可以保存所有正在运行的 Activity(即finalArrayList mHistory)信息,如界面配置信息。例如正在运行的Activity可以 保存在newArrayList中。ActivityStack还可以保存历史运行过的Activity的信息,如界面配 置信息。需要注意,Activity并不对应一个应用程序,ActivityThread才对应一个应用程序。 因此Android允许同时运行多个应用程序,实际是允许同时运行多个ActivityThread。
在Android中,Activity调度的基本思路是这样的:各应用进程在要启动新的Activity或 者停止当前的Activity时,向AMS报告。AMS在内部为所有应用进程都做了记录,当AMS 接到启动或停止的报告时,首先更新内部记录,然后再通知相应客户进程运行或者停止指定 的Activity。由于AMS内部有所有Activity的记录,因此能够调度这些Activity,并根据Activity 和系统内存的状态自动关闭后台的Activity。
IMS可以用于对原始输入事件进行翻译、封装等处理,得到包含更多信息的输入事件, 并发送到WMS,WMS中存储有每个应用程序的可点击区域(比如控件)、焦点窗口的位置信息等。因此,WMS可以正确的将输入事件分发到指定的控件或者焦点窗口。
内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。数据可以包括视 频,图像,音频,拨打和接听的电话,浏览历史和书签,电话簿等。
视图系统包括可视控件,例如显示文字的控件,显示图片的控件等。视图系统可用于构 建应用程序。显示界面可以由一个或多个视图组成的。例如,包括短信通知图标的显示界面, 可以包括显示文字的视图以及显示图片的视图。
电话管理器用于提供第一设备的通信功能。例如通话状态的管理(包括接通,挂断等)。
资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视 频文件等等。
通知管理器使应用程序可以在状态栏中显示通知信息,可以用于传达告知类型的消息, 可以短暂停留后自动消失,无需用户交互。比如通知管理器被用于告知下载完成,消息提醒 等。通知管理器还可以是以图表或者滚动条文本形式出现在系统顶部状态栏的通知,例如后 台运行的应用程序的通知,还可以是以对话窗口形式出现在屏幕上的通知。例如在状态栏提 示文本信息,发出提示音,电子设备振动,指示灯闪烁等。
投屏管理模块用于负责管理投屏相关事务。例如,传输应用界面对应的视频流,界面配 置参数等。又如,接收并分发来自投屏设备(如第二设备)的转屏请求等。示例性的,投屏 管理模块可以是华为的Assistant或者Manager等。例如,Assistant可以是用于与其他电子设 备(如第二设备)交互投屏相关信息的模块,例如Assistant可以提供第一设备与其他电子设 备(如第二设备)通信的API和编程框架。示例性的,当投屏设备是电脑时,Manager可以 是电脑管家、电脑助手等。在一些可能的实施例中,投屏管理模块既能够将本机运行的程序 投屏至其他设备,也能够接收并解析其他设备发送的视频流和相关信息,从而在本机显示其 他设备上运行的应用。在一些可能的实施例中,投屏管理模块进行了切割,只能够实现上述 实施例中的一个功能,从而满足不同设备形态对投屏功能的需求。
系统库和安卓运行时包含应用程序框架层所需要调用的功能函数,Android的核心库,以 及Android虚拟机。系统库可以包括多个功能模块。例如:浏览器内核,三维(3dimensional, 3D)图形,字体库等。
系统库可以包括多个功能模块。例如:表面管理器(surface manager),媒体库(Media Libraries),三维图形处理库(例如:OpenGLES),2D图形引擎(例如:SGL)等。
表面管理器用于对显示子系统进行管理,并且为多个应用程序提供了2D和3D图层的融 合。
媒体库支持多种常用的音频,视频格式回放和录制,以及静态图像文件等。媒体库可以 支持多种音视频编码格式,例如:MPEG4,H.264,MP3,AAC,AMR,JPG,PNG等。
三维图形处理库用于实现三维图形绘图,图像渲染,合成和图层处理等。
2D图形引擎是2D绘图的绘图引擎。
内核层是硬件和软件之间的层。内核层可以包含显示驱动,输入/输出设备驱动(例如, 键盘、触摸屏、耳机、扬声器、麦克风等),设备节点,摄像头驱动,音频驱动以及传感器驱 动等。用户通过输入设备进行输入操作,内核层可以根据输入操作产生相应的原始输入事件, 并存储在设备节点中。
在本申请中,IMS可以对接收到的输入事件做出响应。如图4所示,输入/输出设备驱动 可以检测到用户的输入事件。例如,用户启动应用的操作,输入/输出设备驱动将用户的输入 事件上报给IMS,IMS将输入事件转发给WMS,WMS分发给相应的应用,应用向AMS发送注册请求,应用启动。
在本申请实施例中,在第一设备向第二设备投屏的过程中,若第二设备接收到用户对应 用的转屏请求,例如用户点击用于发起横屏显示或竖屏显示的按钮,用户语音指示发起横屏 显示或竖屏显示的指令,或者用户在第一设备硬件设备上的用于指示发起横屏显示或竖屏显 示的预设按压操作等,第二设备通过第一设备与第一设备之间的通信连接向对应应用指示该 转屏请求。然后,该应用向WMS发送转屏请求。
AMS在截取(例如hook)到应用的转屏请求后,可以判断该应用是否可以支持resize。 如果该应用可以支持resize,则AMS根据应用的转屏请求重新确定应用界面的显示尺寸。其 中,截取是指在事件传送到终点前截获并监控事件的传输。例如,通过如hook技术可以在事 件传送到终点前,像个钩子钩上事件,及时处理该事件,以及时响应该事件。在本申请实施 例中,AMS可以在截取到应用的转屏请求之后,第一时间对该转屏请求做出响应。
然后,AMS根据重新确定的应用界面的显示尺寸,重新计算应用界面的配置参数。其中, 应用界面的配置参数可以包括但不限于应用界面上显示的控件(图标、文字等,以及每一个 图标、文字等的具体显示位置和/或大小等),关于应用界面的配置参数,具体可以参考常规 技术,本申请不限定。最后,AMS根据重新计算的应用界面的配置参数更新活动线程 (ActivityThread)中的应用界面配置参数。以及,AMS通过第一设备的投屏管理模块(如Assistant或Manager)将重新确定的应用界面的显示尺寸同步至第二设备的投屏管理模块(如 Assistant或Manager),用于第二设备根据该应用界面的显示尺寸在显示屏上显示应用界面。 在一些实施例中,第一设备还可以通过投屏管理模块将应用界面的坐标、应用界面的边界大 小、应用界面之间的相对位置、应用的属性等信息发送给第二设备。
在一些实施例中,如图4所示,在AMS重新计算得到应用界面的配置参数之后,AMS还可以根据确定的应用界面的显示尺寸和应用界面的配置参数调用WMS接口,使得WMS 根据该显示尺寸的配置参数绘制Activity对应的窗口。可以理解的是,Activity对应的窗口(应 用程序)可能包括多个Activity,AMS和WMS也会对上述Activity外的其他Activity依照上 述方法进行调整。
例如,在WMS获取到应用界面的显示尺寸和应用界面的配置参数后,可以确定后台是 否有与上述显示尺寸和配置参数匹配的Activity窗口。如果有,则WMS将与上述显示尺寸 和配置参数匹配的Activity窗口设置为可见。如果没有,则WMS根据上述显示尺寸和配置 参数创建新的Activity窗口并绘制窗口内容,调用显示驱动显示所绘制的窗口内容,从而将 界面展现给用户。
需要说明的是,图4仅以分层架构的Android系统为例,介绍一种多窗口投屏场景下的 应用界面显示过程。本申请不限定第一设备软件系统的具体架构,关于其他架构的软件系统 的具体介绍,可以参考常规技术。
通常,根据不同的投屏需求,投屏方式可以包括同源投屏和异源投屏两种。
其中,同源投屏是指采取扩展屏幕的方式,将第一设备上启动的一个或多个投屏应用的 界面投屏至第二设备。在同源投屏方式下,第一设备采用一路编码向第二设备发送在虚拟屏 幕上渲染的投屏应用界面以及默认界面对应的视频流,以在第二设备显示屏上显示默认界面 和第一设备上以自由悬浮窗形式启动的一个或多个投屏应用的界面。其中,默认界面可以理 解为第一设备送显的界面。
假设第一设备在显示有应用界面A时,响应于用户的操作,以自由悬浮窗的形式启动了 应用B和应用C,则第一设备会将应用界面A、应用界面B和应用界面C共同渲染在第一设 备的主屏幕(main display)和虚拟屏幕上。其中,应用界面A渲染在主屏幕上,应用界面B 和应用界面C渲染在虚拟屏幕上。请参考图5,图5示出了一种同源投屏示意图。如图5所示,以默认界面为应用界面A为例,当第一设备以同源投屏方式投屏至第二设备时,第一设备通过一路编码将上述虚拟屏幕上的投屏应用界面以及默认界面(即应用界面A)对应的标准视频流发送至第二设备,以及将默认界面(即应用界面A)送显。其中,第一设备的显示 屏上显示有图5所示的应用界面A(即默认界面),第二设备的显示屏上显示有图5所示的应 用界面A(即默认界面),应用界面B和应用界面C。
在异源投屏方式下,第一设备采用两路编码,其中一路编码将默认界面送显(即在第一 设备显示屏上显示)。另一路编码将虚拟屏幕上渲染的投屏应用界面对应的标准视频流发送至 第二设备。
假设第一设备在显示有应用界面A时,响应于用户的操作,以自由悬浮窗的形式启动了 应用B和应用C,则第一设备会将应用界面A、应用界面B和应用界面C共同渲染在第一设 备的主屏幕和虚拟屏幕上。其中,应用界面A渲染在主屏幕上,应用界面B和应用界面C渲染在虚拟屏幕上。请参考图6,图6示出了一种异源投屏示意图。如图6所示,以默认界面 为应用界面A为例,当第一设备以异源投屏方式投屏至第二设备时,第一设备将默认界面(即应用界面A)对应的视频流通过一路编码送显至第一设备的显示屏,将应用界面B和应用界面C对应的视频流通过另一路编码发送至第二设备。其中,第一设备的显示屏上显示有图6所示的应用界面A(即默认界面),第一设备的显示屏上显示有图6所示的应用界面B和应用界面C。
可以理解,同源投屏方式与异源投屏方式各有优缺点。例如,同源投屏方式可以保证应 用的连续性;而异源投屏方式,在不同屏幕间切换时,需要重新启动应用。例如,对于图6 所示的示例,若需要在第一设备上处理应用界面B或者应用界面C,则需要将应用B或应用 C的界面切换回第一设备。具体的,需要完成Display的切换,在Display切换的过程中,应 用将不可避免的发生重启。但异源投屏方式具有更好的隔离性。例如,异源投屏方式可以为 用户提供独立的操控屏(即第一设备的显示屏和第二设备的显示屏)处理不同的界面。
需要说明的是,本申请提供的一种多窗口投屏场景下的应用界面显示方法对于同源投屏 方式与异源投屏方式均适用。即,无论是同源投屏方式还是异源投屏方式,第一设备均可以 通过本申请实施例提供的方法,将第一设备上以自由悬浮窗形式启动的一个或多个应用的界 面以适配状态(如横屏显示或竖屏显示)、适配尺寸投屏至第二设备。
如图7所示,本申请实施例提供的一种多窗口投屏场景下的应用界面显示方法,可以包 括以下步骤S701-S705:
S701、第一设备接收用户的转屏请求。该转屏请求用于发起第一应用的窗口的横竖屏切 换。
其中,第一设备从投屏设备(即第二设备)接收该转屏请求。
在一些实施例中,该转屏请求由第二设备根据用户对第二设备的第一操作确定并发送给 第一设备。第一操作是用户在第二设备上,针对第一设备投屏至第二设备的一个或多个应用 界面中的第一应用的窗口的转屏操作。
其中,第一应用是第一设备投屏至第二设备的任一个应用。需要说明的是,若第一设备 采用同源投屏方式投屏至第二设备,则用户对默认界面的转屏请求用于发起第一应用的窗口 在第一设备端与第二设备端显示的同步横竖屏切换。而用户对非默认界面的转屏请求,在仅 能用于发起第一应用的窗口在第二设备端显示的横竖屏切换。
在另一些实施例中,该转屏请求由第一设备根据用户对第一设备的第二操作确定。第二 操作是用户对第一设备上显示的默认界面窗口的转屏操作。需要说明的是,若第一设备采用 同源投屏方式投屏至笔记本电脑,则用户的转屏请求用于发起第一应用的窗口在第一设备端 与第二设备端显示的同步横竖屏切换。若第一设备采用异源投屏方式投屏至第二设备,由于 异源投屏时第二设备端不显示默认界面窗口,则用户的转屏请求仅能用于发起第一应用的窗 口在第一设备端显示的横竖屏切换。
其中,窗口的横竖屏切换可以包括但不限于将窗口由竖屏显示切换为横屏显示,或者由 横屏显示切换为竖屏显示。其中,如上文所示,横屏显示是指应用窗口的宽高比(即宽和高 的比)大于1,竖屏显示是指应用窗口的宽高比小于1。
在本申请中,第一操作和第二操作可以包括但不限于旋转屏幕、点击虚拟按钮、预设触 摸手势、对实际硬件的预设操作(如同时按压手机电源键和“+”音量键的操作)或语音指令 等,具体视第二设备支持的输入设备驱动而定,本申请实施例不限定。
例如,假设手机(即第一设备)采用同源投屏方式将默认界面,第一应用界面和第二应 用界面投屏至笔记本电脑(即第二设备)。其中,默认界面是手机桌面,第一应用界面是视频 应用界面,第二应用界面是短消息应用界面。假设第一应用是视频应用,如图8中的(a)所 示,用户的第一操作是用户点击投屏在笔记本电脑上的视频应用界面上显示的用于发起转屏 的虚拟按钮的操作801。或者,如图8中的(b)所示,用户的第一操作是用户语音指示发起 转屏的指令的操作802。其中,当前活动界面是指用户最近一次操控的界面。
又如,假设手机(即第一设备)采用同源投屏方式将手机桌面,短消息应用界面和视频 应用界面投屏至平板电脑(即第二设备),第一应用是视频应用,如图8中的(c)所示,用 户的第一操作是用户将平板电脑屏幕从竖屏状态旋转至横屏状态的操作(如图8中的(c)所 示的逆时针旋转90°)。
其中,对于图8中的(b)所示的第一操作是用户语音指示发起转屏的指令的操作,或者 图8中的(c)所示的第一操作是用户旋转屏幕的操作,则该第一操作针对的是当前活动窗口 (即焦点窗口)。例如,在当前活动窗口(即焦点窗口)为视频应用窗口时,第一操作用户发 起视频应用的转屏请求。
需要说明的是,图8是以第二设备上被投屏有三个界面(手机桌面,视频应用界面和短 消息应用界面),第一应用为视频应用为例示例三种第一操作可能的形式。本申请并不限定第 二设备上被投屏的应用界面的数量以及各个界面在第二设备显示屏上的相对位置关系等。另 外,本申请也不限定第一操作的具体形式,例如第一操作还可以是其他单击、双击、长按、 重按、悬浮手势操作等。
同样,第二操作也可以是用户对第一设备的类似图8中的(a)所示的点击用于发起转屏 的虚拟按钮的操作,类似图8中的(b)所示的语音指示发起转屏的指令的操作或者类似图8 中的(c)所示的用户旋转屏幕的操作。或者,第二操作还可以是其他单击、双击、长按、重 按、悬浮手势操作等,本申请不限定。
若转屏请求由第二设备根据用户对第二设备的第一操作确定并发送给第一设备,则具体 的,第二设备的输入/输出设备驱动或传感器驱动在接收到用户的用于发起第一应用转屏请求 的第一操作之后,会通过与第一设备之间的通信连接向第一设备发送该转屏请求。以第一设 备是手机,第二设备是笔记本电脑,手机和笔记本电脑的操作系统为分层架构的Android系 统为例,笔记本电脑可以通过投屏管理模块(如Assistant或Manager)将转屏请求发送给手 机的投屏管理模块(如Assistant或Manager),手机的投屏管理模块将该转屏请求分发给相应 应用(即第一应用)。AMS在截取(如hook)到来自第一应用的转屏请求之后,对该转屏请 求做出响应。即,手机继续执行以下步骤S702-S705。
若转屏请求由第一设备根据用户对第一设备的第二操作确定,则具体的,第一设备输入/ 输出设备驱动或传感器驱动在接收到用户的用于发起第一应用转屏请求的第二操作之后,将 用户的输入事件上报给IMS。IMS通过WMS将输入事件分发给相应的应用(即第一应用)。 AMS在截取(如hook)到来自第一应用的转屏请求之后,对该转屏请求做出响应。即,第 一设备继续执行以下步骤S702-S705。
S702、第一设备判断第一应用是否支持窗口调整(resize)。
具体的,对于支持resize的应用,第一设备继续执行步骤S703。对于不支持resize的应 用,第一设备退出对转屏请求的响应流程。其中,resize可以包括但不限于窗口形状调整和/ 或窗口大小调整。
通常,应用是否支持resize可以通过获取的应用开发属性和/或应用数据配置等确定得到。 若应用支持resize,则代表应用窗口能够接受调整,包括窗口形状调整和窗口大小调整。若应 用支持resize,则代表应用窗口不能接受调整。
S703、第一设备根据转屏请求重新确定第一应用的窗口尺寸。
其中,窗口尺寸可以包括但不限于窗口形状和/或窗口大小。
作为一种可能的实施例,转屏请求用于将第一应用的窗口由竖屏显示切换为横屏显示, 则上述步骤S703具体可以包括:第一设备根据转屏请求调整第一应用的窗口尺寸,使得第一 应用的窗口宽度大于高度。例如,将第一应用的窗口的宽高比重新确定为16:9、18:9、20:9 或16:10等。又如,将第一应用的窗口范围由(0,0,1080,2340)重新确定为(0,0,2340, 1080);其中,(0,0)是第一应用的窗口左下角、右下角、左上角或右上角在第一设备坐标 系下的坐标,视第一设备坐标系的具体设置而定;2340是第一应用的窗口宽度,1080是第一 应用的窗的高度。
作为另一种可能的实施例,转屏请求用于将应用的窗口由横屏显示切换为竖屏显示,则 上述步骤S703具体可以包括:第一设备根据转屏请求调整第一应用的窗口尺寸,使得第一应 用的窗口的宽度小于高度。例如,将第一应用的窗口的宽高比重新确定为9:16、9:18、9:20 或10:16等。又如,将第一应用的窗口范围由(0,0,2340,1080)重新确定为(0,0,1080, 2340)。其中,(0,0)是第一应用的窗口左下角、右下角、左上角或右上角在第一设备坐标 系下的坐标,视第一设备坐标系的具体设置而定。1080是第一应用的窗的宽度,2340是第一 应用的窗口高度。
以下结合三种可能的情况,举例介绍第一设备根据转屏请求重新确定第一应用的窗口尺 寸:
情况1:第一设备根据转屏请求,基于应用开发属性和/或应用数据配置重新确定第一应 用的窗口尺寸。
例如,假设第一应用的窗口竖屏显示,第一应用的窗口范围是(0,0,1080,2340),若 转屏请求用于将第一应用的窗口由竖屏显示切换为横屏显示,应用开发属性和/或应用数据配 置表征第一应用支持resize,更为具体的:第一应用支持横屏显示,则第一设备可以重新确定 第一应用的窗口尺寸为(0,0,2340,1080)。
又如,假设第一应用的窗口横屏显示,第一应用的窗口范围是(0,0,2340,1080),若 转屏请求用于将第一应用的窗口由横屏显示切换为竖屏显示,应用开发属性和/或应用数据配 置表征第一应用支持resize,更为具体的:第一应用支持竖屏显示,则第一设备可以重新确定 第一应用的窗口尺寸为(0,0,1080,2340)。
情况2:第一设备根据转屏请求,基于应用开发属性和/或应用数据配置,以及第一设备 显示屏尺寸重新确定第一应用的窗口尺寸。
例如,假设第一应用的窗口竖屏显示,第一应用的窗口范围是(0,0,1080,2340),第 一设备显示屏宽高比为16:9,若转屏请求用于将第一应用的窗口由竖屏显示切换为横屏显示, 应用开发属性和/或应用数据配置表征第一应用支持resize,更为具体的:第一应用支持横屏 显示,则第一设备可以重新确定第一应用的窗口尺寸为(0,0,2340,1316)。
又如,假设第一应用的窗口横屏显示,第一应用的窗口范围是(0,0,2340,1080),第 一设备显示屏宽高比为16:9,若转屏请求用于将第一应用的窗口由横屏显示切换为竖屏显示, 应用开发属性和/或应用数据配置表征第一应用支持resize,更为具体的:第一应用支持竖屏 显示,则第一设备可以重新确定第一应用的窗口尺寸为(0,0,1080,1920)。
情况3:第一设备根据转屏请求,基于应用开发属性和/或应用数据配置,以及投屏设备 (即第二设备)显示屏尺寸重新确定第一应用的窗口尺寸。
例如,假设第一应用的窗口竖屏显示,第一应用的窗口范围是(0,0,1080,2340),第 二设备显示屏宽高比为3:2,若转屏请求用于将第一应用的窗口由竖屏显示切换为横屏显示, 应用开发属性和/或应用数据配置表征第一应用支持resize,更为具体的:第一应用支持横屏 显示,则第一设备可以重新确定第一应用的窗口尺寸为(0,0,2340,1560)。
又如,假设第一应用的窗口横屏显示,第一应用的窗口范围是(0,0,2340,1080),第 二设备显示屏宽高比为3:2,若转屏请求用于将第一应用的窗口由横屏显示切换为竖屏显示, 应用开发属性和/或应用数据配置表征第一应用支持resize,更为具体的:第一应用支持竖屏 显示,则第一设备可以重新确定第一应用的窗口尺寸为(0,0,1080,1620)。
S704、第一设备根据重新确定的第一应用的窗口尺寸,更新第一应用的界面配置参数。
其中,应用的界面配置参数可以包括但不限于应用窗口resize之后的边界信息、应用的 转向、应用界面上显示的图标、文字等,以及每一个图标、文字等的具体显示位置、大小和 颜色等。应用的转向包括横屏显示或竖屏显示。关于应用的界面配置参数,具体可以参考常 规技术,本申请不限定。
在本申请中,第一设备获取的第一应用的界面配置参数,与重新确定的第一应用的窗口 尺寸相适配。可以理解,由于第一设备即将对第一应用的窗口尺寸做调整,而之前的界面配 置参数明显不适配于调整之后的窗口尺寸。若不重新计算第一应用的界面配置参数,则会影 响第一应用界面上的图标和/或文字等的显示,如一些内容重叠显示,一些内容无法完全显示 等。为解决上述问题,第一设备需要在重新确定第一应用的窗口尺寸之后,重新获取第一应 用的界面配置参数。
在一些实施例中,第一设备可以根据重新确定的第一应用的窗口尺寸,更新第一应用的 界面配置参数中的第一应用resize之后的边界信息。进一步的,在一些实施例中,第一设备 可以根据第一应用resize之后的边界信息,更新第一应用的界面配置参数中的应用的转向。 进一步的,在一些实施例中,第一设备可以根据第一应用resize之后的边界信息以及更新后 的应用的转向,更新第一应用的界面配置参数中的其他配置参数,例如应用界面上显示的图 标、文字等,以及每一个图标、文字等的具体显示位置、大小和颜色等。关于步骤S704(即 第一设备根据重新确定的第一应用的窗口尺寸,更新第一应用的界面配置参数)的具体方法 和过程,将在下文中对图9的介绍和说明中作详细阐述。
S705、第一设备向第二设备发送第一信息,用于第二设备根据第一信息显示第一应用的 界面。第一信息包括更新后的第一应用的界面配置参数。
在本申请中,第一设备(如手机)与第二设备(如笔记本电脑)之间建立有通信连接。 例如,例如该通信连接可以是有线连接(例如数据传输线连接等)或无线连接(如蓝牙连接、 WiFi连接或WiFi P2P连接等)。第一设备可以通过与第二设备之间的通信连接向第二设备发 送第一信息,用于第二设备根据第一信息显示应用界面。
例如,第一设备(如手机)可以通过图4所示的投屏管理模块(如Assistant或Manager) 向第二设备(如笔记本电脑)的投屏管理模块(如Assistant或Manager)发送第一信息,用 于笔记本电脑根据第一信息显示第一应用的界面。
在一些实施例中,如图9所示,上述步骤S704(即,第一设备根据重新确定的第一应用 的窗口尺寸,更新第一应用的界面配置参数)具体可以包括以下步骤:
S901、第一设备确定分身应用与非分身应用。
其中,分身应用是指投屏至第二设备的应用。如图5所示的第一界面、第一应用界面和 第二应用界面。又如,图6所示的第一应用界面和第二应用界面。非分身应用是指仅在第一 设备显示屏上显示,不投屏至第二设备的应用(如异源投屏方式下的默认界面对应的应用)。 如图6所示的第一界面。
在一些实施例中,上述分身应用也可以被称为“目标应用”,即投屏至目标设备(即第二 设备)的应用。非分身应用也可以被称为“非目标应用”。本申请不限定具体的名称和叫法。 以下实施例以分身应用和非分身应用为例作具体介绍。
对于分身应用,第一设备执行步骤S902-1,之后执行步骤S903-S905;对于非分身应用, 第一设备机执行步骤S902-2。
S902-1、第一设备更新第一应用的界面配置参数中,第一应用resize之后的边界信息。
其中,第一应用的界面配置参数可以包括但不限于第一应用的应用窗口resize之后的边 界信息(以下简称第一应用resize之后的边界信息)、应用的转向、应用界面上显示的图标、 文字等,以及每一个图标、文字等的具体显示位置、大小和颜色等。第一设备在更新第一应 用resize之后的边界信息之后,可以根据该resize之后的边界信息进一步更新第一应用的界 面配置参数中的其他配置参数,例如应用的转向、应用界面上显示的图标、文字等,以及每 一个图标、文字等的具体显示位置、大小和颜色等。
例如,第一设备可以根据重新确定的第一应用的窗口尺寸,更新第一应用resize之后的 边界信息。
具体的,第一设备可以获取当前ActivityStack的栈顶运行的活动记录,得到第一应用进 程的配置参数(例如通过WindowProcessController得到),然后,根据重新确定的第一应用的 窗口尺寸,更新第一应用进程的界面配置参数中的边界信息。
S902-2、第一设备将非分身应用进程重新注册到默认配置。
在本申请实施例中,若应用进程注册到默认配置,则在第一设备(如手机)的显示屏发 生旋转时,响应于该显示屏旋转事件,该应用的界面配置参数会更新到活动线程,进而进行 显示。也就是说,非分身应用仍然会随着第一设备(如手机)接收到的显示屏旋转事件,切 换应用在第一设备(如手机)显示屏上的界面显示。
S903、第一设备根据更新后的第一应用resize之后的边界信息,更新第一应用的其他界 面配置参数。
在一些实施例中,第一设备更新第一应用的界面配置参数中应用的转向的原则是:若第 一设备根据第一应用resize之后的边界信息确定第一应用的窗口的宽度大于高度,则第一设 备将第一应用的界面配置参数中的应用的转向更新为横屏显示;若第一设备根据第一应用 resize之后的边界信息确定第一应用的窗口高度大于宽度,则第一设备将第一应用的界面配置 参数中的应用的转向更新为竖屏显示。
进一步的,在第一设备更新第一应用的界面配置参数中应用的转向之后,第一设备可以 根据第一应用resize之后的边界信息以及应用的转向,获取第一应用的界面配置参数中的应 用界面上显示的图标、文字、每一个图标、文字等的具体显示位置、大小和颜色等其他配置 参数。
S904、第一设备将第一应用进程从屏幕配置监听中移除。
其中,将应用进程从屏幕配置监听中移除用于避免应用对显示屏的旋转事件做出响应。 因此,在第一设备将第一应用进程从屏幕配置监听中移除之后,第一应用不会对第一设备的 显示屏旋转事件做出响应。也就是说,无论第一设备的显示屏如何旋转,处于横屏状态还是 竖屏状态,分身应用均以在步骤S903中更新的配置参数显示。
S905、第一设备将更新后的第一应用的界面配置参数刷新至第一应用进程中。
以第一设备的操作系统为分层架构的Android系统为例,第一设备的AMS可以将获取的 第一应用的界面配置参数刷新至活动线程(ActivityThread)。
需要说明的是,在本申请提供的多窗口投屏过程中,第一设备可以在投屏的过程中,接 收用户将非分身应用切换为分身应用的操作,再次刷新第一应用的界面配置参数。例如,在 接收到用户用于发起非分身应用到分身应用的切换的点击非分身应用界面上显示的虚拟按钮 的操作、预设触摸手势、对实际硬件的预设操作或语音指令等操作时,再次刷新第一应用的 界面配置参数。例如,将配置参数中第一应用的模式切换为全屏模式,将第一应用的窗口尺 寸切换为与第一设备适配。本申请不限定用户用于发起非分身应用到分身应用的切换的具体 操作。
在本申请实施例提供的多窗口投屏场景下的应用界面显示方法中,第一设备在针对应用 的发起窗口横竖屏切换的转屏请求时,通过根据该具体转屏请求确定应用界面对应的窗口尺 寸、应用的转向、应用界面上显示的图标、文字、每一个图标、文字等的具体显示位置、大 小和颜色等配置参数,以及进一步将确定的配置参数刷新至第一应用进程中,同步至投屏设 备,能够使应用以适配状态(如横屏显示或竖屏显示)、适配尺寸投屏至第二设备的显示屏上, 提升用户投屏体验度。
例如,对于图8中的(a)或图8中的(b)所示的第一应用为视频应用的情况,若采用常规方法中的同源投屏方式,则响应于接收到转屏请求(用于发起视频应用窗口由竖屏显示 切换为横屏显示的请求),手机重新确定视频应用界面对应的窗口宽度大于高度。但是,由于 手机当前的状态为竖屏状态,因此视频应用的应用进程是默认配置的,则手机根据默认配置 还是只能以竖屏显示状态投屏至第二设备(如笔记本电脑)。假设第一操作是图8中的(a) 所示的用户点击视频应用界面上显示的用于发起转屏的虚拟按钮的操作801,若采用常规异 源投屏方法,仅仅进行resize操作,视频应用的界面显示异常,整个视频画面被压缩到笔记 本电脑显示屏的一个竖屏显示区域。
而采用本申请提供的多窗口投屏场景下的应用界面显示方法,假设第一设备采用同源投 屏方式向第二设备投屏。在第一设备接收到来自第二设备的,根据图10中的操作801所示的 第一操作确定的转屏请求时,第一设备通过在resize操作之后,将重新获取的应用的转向、 应用界面上显示的图标、文字、每一个图标、文字等的具体显示位置、大小和颜色等配置参 数刷新至应用进程中,同步至第二设备(如笔记本电脑),能够使视频应用界面以横屏显示的 状态投屏至笔记本电脑的显示屏上,如图10所示,提升用户投屏体验度。
进一步的,如上文所述,由于第一设备可以根据转屏请求,基于应用开发属性和/或应用 数据配置重新确定第一应用的窗口尺寸(即情况1);也可以根据转屏请求,基于应用开发属 性和/或应用数据配置,以及第一设备显示屏尺寸重新确定第一应用的窗口尺寸(即情况2); 还可以根据转屏请求,基于应用开发属性和/或应用数据配置,以及投屏设备(即第二设备) 显示屏尺寸重新确定第一应用的窗口尺寸(即情况3),因此,第一设备在确定第一应用是否 支持窗口调整(resize)之后,还可以进一步确定重新确定第一应用的窗口尺寸的具体方法。
在一些实施例中,如图10所示的视频应用程序的界面,相比于竖屏显示,仅进行了宽和 高的交换调整,未进行宽和高的放大或缩小。在另一些实施例中,视频应用程序还可以以全 屏显示的形式显示视频应用程序(进行宽和高的放大),即视频应用程序的窗口会占满整个第 二设备的显示屏的显示区域。在一些实施例中,由于第一设备(16:9)和第二设备(4:3)的 屏幕比例不同,在第一设备上能够完整显示的视频源/文件(4:3)在第二设备上显示时会被拉 伸显示,或者视频不能填充的地方会显示黑色。这时候虽然能够实现应用的横竖屏切换,但 是用户体验仍然不够好。
例如,如图11所示,在一些实施例中,在第一设备执行完上述步骤S702之后,本申请 实施例提供的多窗口投屏场景下的应用界面显示方法还可以包括步骤S1101:
S1101、第一设备确定第一应用的应用类别。
例如,第一设备可以根据应用包名(例如Android应用程序包(Androidapplicationpackage, APK)名称)、应用开发属性或应用数据配置中的一种确定第一应用的应用类别。
示例性的,若第一应用为第一类应用(如非视频类应用),则第一设备确定基于其他常规 因素重新确定第一应用的窗口尺寸。例如,采用上述情况1或情况2对应的具体方法或其他 类似方法重新确定第一应用的窗口尺寸。
例如,上述图7所示的步骤S703可以替换为图11所示的步骤S1102-1:
S1102-1、第一设备根据转屏请求,基于第一设备显示屏尺寸重新确定第一应用的窗口尺 寸。
例如,假设第一设备是手机,第二设备是笔记本电脑,请参考图10,响应于接收到转屏 请求(用于发起视频应用窗口由竖屏显示切换为横屏显示的请求),手机在确定对应应用为第 二类应用时,基于笔记本电脑显示屏尺寸重新确定该视频应用窗口。基于该方案,手机确定 视频应用窗口的尺寸以横屏显示并适配笔记本电脑显示屏尺寸的状态投屏至笔记本电脑。
又如,本申请上述图1、图8中的(a)和图8中的(b)所示投屏至第二设备(即笔记 本电脑)的应用的窗口尺寸均是基于第一设备(即手机)显示屏尺寸确定的。
若第一应用为第二类应用(如视频类应用),则第一设备确定基于第二设备(如笔记本电 脑)显示屏尺寸重新确定第一应用的窗口尺寸。例如,采用上述情况3对应的具体方法,或 者其他类似方法重新确定第一应用的窗口尺寸。
例如,上述图7所示的步骤S703可以替换为图11所示的步骤S1102-2:
S1102-2、第一设备根据转屏请求,基于第二设备显示屏尺寸重新确定第一应用的窗口尺 寸。
例如,假设第一设备是手机,第二设备是笔记本电脑,第一设备采用同源投屏方式向第 二设备投屏。请参考图12,在第一设备接收到来自第二设备的,根据图10中的操作801所 示的第一操作确定的转屏请求时,且手机确定对应应用为第二类应用时,基于笔记本电脑显 示屏尺寸重新确定该视频应用窗口。基于该方案,手机确定视频应用窗口的尺寸铺满笔记本 电脑的整个显示区域。需要说明的是,在基于笔记本电脑显示屏尺寸重新确定第一应用的窗 口尺寸的方案中,由于第一应用的窗口为焦点窗口,因此,第一应用界面以与笔记本电脑显 示屏尺寸适配的窗口尺寸显示。非焦点窗口仍然显示在笔记本电脑显示屏上,只是被焦点窗 口遮挡了。例如,图12所示的笔记本电脑全屏显示有视频应用窗口(即焦点窗口),短消息 应用窗口(即非焦点窗口)和手机桌面窗口被视频应用窗口遮挡,所以图12中短消息应用窗 口和手机桌面窗口对用户不可见。
在基于笔记本电脑显示屏尺寸重新确定第一应用的窗口尺寸的方案中,笔记本电脑可以 响应于用户对视频应用窗口的关闭、最小化或者缩小化的操作,使得短消息应用窗口和手机 桌面窗口对用户可见,以便用户可以根据需求切换焦点窗口。
可以理解,通常,由于第一设备(如手机)和第二设备(如笔记本电脑)的显示屏比例 不同,会导致在第一设备(如手机)上横屏或竖屏显示的第二类应用比例失调。例如,若基 于第一设备(如手机)显示屏尺寸重新确定视频类应用界面对应的窗口尺寸,那么在视频类 应用横屏最大化显示在第二设备(如笔记本电脑)的显示屏上时,存在四周包含粗边框的问 题,视觉显示的效果不如投屏设备(如笔记本电脑)同源界面的显示效果。在本申请提供的 多窗口投屏场景下的应用界面显示方法中,通过对应用类别的确定,可以根据应用的实际特 点和/或需求等,基于第二设备显示屏尺寸进行resize,以提升投屏后应用界面的显示效果, 提高用户体验度。
以第一应用为视频应用为例,若不考虑第二设备(如笔记本电脑)显示屏尺寸进行resize, 投屏在笔记本电脑上的视频应用窗口的左右通常会出现粗边框(如黑边)。而采用图11所示 步骤S1102-2对应的方法,视频应用在resize时具体考虑第二设备(如笔记本电脑)显示屏 尺寸,如图12所示,可以得到视频应用界面在第二设备(如笔记本电脑)端全屏显示的效果, 更加贴切于笔记本电脑端原生视频类应用界面,如同在第二设备(如笔记本电脑)端直接打 开视频的效果,用户观感好。
需要说明的是,上述图12所示投屏效果是以第二类应用为视频类应用作为示例,本申请 不限定具体的第二应用类别。例如,对于图片类应用界面,也可以采用类似上述步骤S1102-1 所示的方法进行resize。
另外,需要说明的是,本申请中的视频应用不限定于视频播放类应用,还可以是其中包 含有视频内容的应用,例如新闻类应用,社交类应用等,本申请不限定具体的应用。
需要说明的是,本申请图1、图8中的(a)、图8中的(b)、图10和图12是以第二设 备为笔记本电脑为例进行相关介绍的。由于笔记本电脑具有窗口不随显示屏旋转而变化的特征,因此,对于窗口不随显示屏旋转而变化的第二设备而言,投屏至第二设备的应用窗口并不会随着第二设备显示屏的旋转而变化。
而对于窗口会随显示屏旋转而变化的第二设备,例如平板电脑等,投屏后的应用窗口会 随着第二设备显示屏的旋转而变化。例如,从横屏显示切换为竖屏显示,或者从竖屏显示切 换为横屏显示。
请参考图13,图13以第一设备为手机,第二设备为平板电脑,第一设备将手机桌面, 短消息应用界面和视频应用界面投屏至第二设备,第一操作为将平板电脑从竖屏状态旋转为 横屏状态为例,示出了本申请实施例提供的另一种投屏场景下的应用界面显示效果示例图。
例如,假设第一设备采用同源投屏方式向第二设备投屏,其中,手机上显示默认界面(图 13中未示出),平板上显示有手机桌面窗口,视频应用窗口和短消息应用窗口,其中视频应 用窗口为当前活动窗口(即焦点窗口)。请参考图13,在第一设备(即手机)接收到来自第 二设备(即平板电脑)的,根据传感器驱动(如陀螺仪传感器、加速度传感器等)检测到的 用户旋转平板电脑屏幕的操作(如图13中的将平板电脑逆时针旋转90°的操作)确定的转 屏请求时,平板电脑将该转屏操作对应的转屏请求通过与手机之间的通信连接向手机发送该 转屏请求。以手机和笔记本电脑的操作系统为分层架构的Android系统为例,平板电脑可以 通过投屏管理模块(如Assistant或Manager)将转屏请求发送给手机的投屏管理模块(如 Assistant或Manager),手机的投屏管理模块将该转屏请求分发给相应应用(即视频应用)。 AMS在截取(如hook)到来自视频应用的转屏请求之后,且确定该应用为第二类应用时, 对该转屏请求做出响应,且基于平板电脑显示屏尺寸重新确定得到视频应用界面对应的窗口 尺寸。如图13所示,平板电脑全屏显示视频应用窗口,与视频应用窗口同时显示在平板电脑 上的,还有短消息应用窗口和手机桌面窗口(其中短消息应用窗口和手机桌面窗口被视频应 用窗口遮挡,因此图13中短消息应用窗口和手机桌面窗口对用户不可见)。
其中,图13所示的示例图中,手机(即第一设备)是基于上述情况3(即基于第二设备 (即平板电脑)显示屏尺寸重新确定得到第一应用(即视频应用)的窗口尺寸)。在一些实施 例中,手机还可以基于上述情况1或情况2(即基于第一设备(即手机)显示屏尺寸重新确定得到第一应用(即视频应用)的窗口尺寸)。
例如,假设第一设备采用异源投屏方式向第二设备投屏,其中,手机上显示默认界面(图 14中未示出),平板上显示有视频应用窗口和短消息应用窗口,其中视频应用窗口为当前活 动窗口(即焦点窗口)。如图14所示,在第一设备(即手机)接收到来自第二设备(即平板 电脑)的,根据传感器驱动(如陀螺仪传感器、加速度传感器等)检测到的用户旋转平板电 脑屏幕的操作(如图14中的将平板电脑逆时针旋转90°的操作)确定的转屏请求时,平板 电脑将该转屏操作对应的转屏请求通过与手机之间的通信连接向手机发送该转屏请求。以手 机和笔记本电脑的操作系统为分层架构的Android系统为例,平板电脑可以通过投屏管理模 块(如Assistant或Manager)将转屏请求发送给手机的投屏管理模块(如Assistant或Manager), 手机的投屏管理模块将该转屏请求分发给相应应用(即视频应用)。AMS在截取(如hook) 到来自视频应用的转屏请求之后,对该转屏请求做出响应。如图14所示,平板电脑以与手机 尺寸适配的横屏状态显示视频应用窗口,与视频应用窗口同时显示在平板电脑上的,还有短 消息应用窗口。
需要说明的是,本申请图8中的(a)、图8中的(b)、图10、图12、图13和图14是以 第一应用的界面为原生应用界面为例进行相关介绍的。在一些实施例中,第一应用的界面还可以是弹窗应用界面。其中,原生应用界面可以理解为在用户发起转屏请求的过程中,应用界面的核心内容不发生变化,仅进行应用界面的横竖屏切换。弹窗应用界面可以理解为当前 应用界面的下一层应用界面。例如,当前应用界面为视频应用首页,弹窗应用界面可以是某 一视频界面。又如,当前应用界面为聊天界面,弹窗应用界面可以是微信公众号界面 等。
示例性的,假设当前投屏界面是竖屏显示的视频应用首页,响应于用户点击第二设备上 投屏显示的视频应用首页上的视频A的操作,第二设备通过与第一设备之间的通信连接向第 一设备发送该弹窗请求。以第一设备和第二设备的操作系统为分层架构的Android系统为例, 第二设备可以通过投屏管理模块(如Assistant或Manager)将弹窗请求发送给第一设备的投 屏管理模块(如Assistant或Manager),第一设备的投屏管理模块将该弹窗请求分发给相应应 用(即视频应用)。AMS在截取(如hook)到来自视频应用的弹窗请求之后,对该弹窗请求 做出响应,在虚拟屏幕上以横屏显示的状态渲染视频A界面,并投屏至第二设备。
需要说明的是,本申请实施例提供的多窗口投屏场景下的应用界面显示方法中,第一设 备在根据重新确定的第一应用的窗口尺寸,更新第一应用的界面配置参数时,会重新确定第 一应用界面与其他分身应用界面在虚拟屏幕上共同渲染时的相对位置关系。例如,图10所示 的手机在根据接收到的用户的转屏请求(根据笔记本电脑接收到的操作801确定),重新渲染 视频应用界面和短消息应用界面时,相比于前一帧渲染界面,视频应用界面的宽度有变化。 又如,图12所示的手机在根据接收到的用户的转屏请求(根据笔记本电脑接收到的操作801 确定),重新渲染视频应用界面和短消息应用界面时,相比于前一帧渲染界面,视频应用界面 的宽度也有变化。又如,图13所示的手机在根据接收到的用户的转屏请求(根据平板电脑接 收到的旋转屏幕的操作确定),重新渲染视频应用界面和短消息应用界面时,相比于前一帧渲 染界面,视频应用界面的宽度也有变化。又如,图14所示的手机在根据接收到的用户的转屏 请求(根据平板电脑接收到的旋转屏幕的操作确定),重新渲染视频应用界面和短消息应用界 面时,相比于前一帧渲染界面,视频应用界面的宽度也有变化。
其中,本申请图10、图12、图13和图14所示示例图是以视频应用窗口投屏至第二设备 最右侧作为示例,对于视频应用窗口投屏至第二设备其他位置(如最左侧或中间位置)的情 况,第一设备在根据重新确定的第一应用的窗口尺寸,更新第一应用的界面配置参数时,也 会重新确定第一应用界面与其他分身应用界面在虚拟屏幕上共同渲染时的相对位置关系。
但是,基于上述方案,处于左侧的应用界面在由竖屏显示切换为横屏显示时,会导致右 侧的所有应用界面向右移位;处于左侧的应用界面在由横屏显示切换为竖屏显示时,会导致 右侧的所有应用界面向左移位。上述移位通常会导致投屏的过程中,第二设备侧出现闪屏问 题。例如,投屏界面会出现闪烁或不规则闪动等。
为解决上述闪屏问题,在一些实施例中,第一设备在虚拟屏幕上共同渲染投屏界面时, 可以在不同应用界面之间保留预设的距离余量d。例如,该距离余量d≥b1,其中b1为第一 设备显示屏的长度。又如,d≥b2,其中b2为第二设备显示屏的长度。
请参考图15,图15以不同应用界面之间保留预设的距离余量d=b1为例,示出了第一设 备在虚拟屏幕上渲染投屏界面的示意图。如图15所示,虚拟屏幕被平均划分为三个区域,其 中,区域一用于渲染应用界面A,区域二用于渲染应用界面B,区域三用于渲染应用界面C。 如图15所示,基于图15所示区域的划分对应用界面A、应用界面B和应用界面C进行渲染 时,任何一个应用界面的竖屏显示或者横屏显示均不会造成其他应用界面渲染时在虚拟屏幕 上的移位。基于该方案,可以有效解决由于应用界面移位导致闪屏问题。
应理解,本申请实施例的各个方案可以进行合理的组合使用,并且实施例中出现的各个 术语的解释或说明可以在各个实施例中互相参考或解释,对此不作限定。
还应理解,在本申请的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的 先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构 成任何限定。
可以理解的是,终端设备为了实现上述任一个实施例的功能,其包含了执行各个功能相 应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所公开的实施 例描述的各示例的单元及算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实 现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应 用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功 能,但是这种实现不应认为超出本申请的范围。
本申请实施例可以对电子设备(包括第一设备和第二设备)进行功能模块的划分,例如, 可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块 中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需 要说明的是,本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实 现时可以有另外的划分方式。
比如,以采用集成的方式划分各个功能模块的情况下,如图16所示,为本申请实施例提 供的一种电子设备的结构框图。例如,该电子设备可以是第一设备或第二设备。如图16所示, 该电子设备可以包括处理单元1610和收发单元1620。
其中,在电子设备为第一设备时,处理单元1610用于接收用于发起第一应用的窗口的横 竖屏切换的转屏请求,以及在确定第一应用支持窗口调整时,根据接收到的转屏请求更新第 一应用的界面配置参数。例如,处理单元1610用于支持电子设备执行上述步骤S701,S702, S703,S704,S901,S902-1,S902-2,S903,S904,S905,S1101,S1102-1或S1102-2,和/ 或用于本文所描述的技术的其他过程。收发单元1620用于向第二设备发送包括第一应用的界 面配置参数的第一信息。其中第一信息用于第二设备的第一应用的窗口进行横竖屏切换。例 如,收发单元1620用于支持电子设备执行上述步骤S705,和/或用于本文所描述的技术的其 他过程。
在一种可能的结构中,如图17所示,电子设备还可以包括存储单元1630。存储单元1630用于存储计算机程序和实现本申请实施例提供的方法中的处理数据和/或处理结 果等。
需要说明的是,上述收发单元1620可以包括射频电路。具体的,便携设备可以通过射频 电路进行无线信号的接收和发送。通常,射频电路包括但不限于天线、至少一个放大器、收 发信机、耦合器、低噪声放大器、双工器等。此外,射频电路还可以通过无线通信和其他设 备通信。所述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统、通 用分组无线服务、码分多址、宽带码分多址、长期演进、电子邮件、短消息服务等。
应理解,电子设备中的各个模块可以通过软件和/或硬件形式实现,对此不作具体限定。 换言之,电子设备是以功能模块的形式来呈现。这里的“模块”可以指特定应用集成电路ASIC、 电路、执行一个或多个软件或固件程序的处理器和存储器、集成逻辑电路,和/或其他可以提 供上述功能的器件。可选地,在一个简单的实施例中,本领域的技术人员可以想到便携设备 可以采用图18所示的形式。处理单元1610可以通过图18所示的处理器1810实现。收发单 元1620可以通过图18所示的收发器1820来实现。具体的,处理器通过执行存储器中存储的 计算机程序来实现。可选地,所述存储器为所述芯片内的存储单元,比如寄存器、缓存等, 所述存储单元还可以是所述计算机设备内的位于所述芯片外部的存储单元,如图18所的存储 器1830。
在一种可选的方式中,当使用软件实现数据传输时,可以全部或部分地以计算机程序产 品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所 述计算机程序指令时,全部或部分地实现本申请实施例所述的流程或功能。所述计算机可以 是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储 在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传 输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例 如同轴电缆、光纤、数字用户线((digital subscriber line,DSL))或无线(例如红外、无线、 微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存 储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、 数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如软盘、硬盘、磁带)、光介 质(例如数字化视频光盘(digital video disk,DVD))、或者半导体介质(例如固态硬盘solid state disk(SSD))等。
结合本申请实施例所描述的方法或者算法的步骤可以硬件的方式来实现,也可以是由处 理器执行软件指令的方式来实现。软件指令可以由相应的软件模块组成,软件模块可以被存 放于RAM存储器、闪存、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、移动硬盘、CD-ROM或者本领域熟知的任何其它形式的存储介质中。一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于ASIC中。另外,该ASIC可以位于探测装置中。当然,处理器和存储介质也可以作为分立组件存在于探测装置中。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和 简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能 分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述 的全部或者部分功能。
Claims (8)
1.一种多窗口投屏场景下的应用界面显示方法,应用于第一设备向第二设备投屏的场景中,其特征在于,所述方法包括:
所述第一设备运行第一应用和第二应用,所述第一设备显示所述第一应用,所述第一设备不显示所述第二应用,所述第一设备将所述第一应用和所述第二应用投屏至所述第二设备,以使得所述第二设备显示所述第一应用和所述第二应用,其中,所述第一应用和所述第二应用均为第一尺寸,所述第一尺寸的宽度小于高度;
所述第一设备接收来自所述第二设备的第一转屏请求,所述第一转屏请求与所述第一应用关联;
所述第一设备在确定所述第一应用支持窗口调整时,确定所述第一应用的尺寸为第二尺寸,所述第二尺寸的宽度大于高度,所述第一设备根据所述第二尺寸更新所述第一应用的界面配置参数;
所述第一设备根据所述第一应用的界面配置参数显示所述第一应用,以使得所述第一应用以所述第二尺寸显示;
所述第一设备将所述第一应用的界面配置参数发送至所述第二设备,以使得所述第二设备根据所述第一应用的界面配置参数将所述第一应用切换为以所述第二尺寸显示,此时所述第二设备上显示的所述第二应用仍为所述第一尺寸。
2.根据权利要求1所述的方法,其特征在于,所述根据所述第二尺寸更新所述第一应用的界面配置参数包括:
所述第一设备根据所述第二尺寸,确定所述第一应用的边界信息;
所述第一设备根据所述第一应用的所述边界信息,更新配置信息,其中,所述配置信息包括以下一种或多种:所述第一应用的转向、第一应用界面上显示的图标、所述第一应用界面上显示的文字、所述第一应用界面上显示的每一个图标的显示位置、大小和颜色、所述第一应用界面上显示的每一个文字的显示位置、大小和颜色。
3.根据权利要求1所述的方法,其特征在于,所述确定所述第一应用的尺寸为第二尺寸,包括:
所述第一设备根据所述第一转屏请求,基于所述第一应用的应用开发属性和/或应用数据配置确定所述第一应用的尺寸为第二尺寸;或者,
所述第一设备根据所述第一转屏请求,基于所述第一应用的应用开发属性和/或应用数据,以及所述第一设备显示屏的尺寸确定所述第一应用的尺寸为第二尺寸;或者,
所述第一设备根据所述第一转屏请求,基于所述第一应用的应用开发属性和/或应用数据,以及所述第二设备显示屏的尺寸确定所述第一应用的尺寸为第二尺寸。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述第一设备确定所述第一应用的应用类别;
当所述第一应用的应用类别为第一类应用,所述第一设备根据所述第一转屏请求,基于所述第二设备的显示屏尺寸确定所述第一应用的窗口尺寸;
当所述第一应用的应用类别为第二类应用,所述第一设备根据所述第一转屏请求,基于所述第一设备的显示屏尺寸确定所述第一应用的窗口尺寸。
5.根据权利要求4所述的方法,其特征在于,所述第一类应用为视频类应用。
6.根据权利要求1所述的方法,其特征在于,所述第一应用为视频类应用,当所述第一应用以所述第一尺寸进行显示时,所述第一应用包括至少一个第一控件,当所述第一应用以所述第二尺寸进行显示时,所述第一应用不包括所述至少一个第一控件。
7.一种电子设备,其特征在于,所述电子设备包括:
存储器,用于存储计算机程序;
收发器,用于接收或发送无线电信号;
处理器,用于执行所述计算机程序,使得所述电子设备实现如权利要求1-6中任一项所述的方法。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序代码,所述计算机程序代码被处理电路执行时实现如权利要求1-6中任一项所述的方法。
Priority Applications (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010949157.4A CN113553014B (zh) | 2020-09-10 | 2020-09-10 | 多窗口投屏场景下的应用界面显示方法及电子设备 |
CN202110836751.7A CN113741840A (zh) | 2020-09-10 | 2020-09-10 | 多窗口投屏场景下的应用界面显示方法及电子设备 |
EP21865828.4A EP4207777A4 (en) | 2020-09-10 | 2021-08-19 | DISPLAY METHOD FOR AN APPLICATION INTERFACE UNDER A MULTI-WINDOW MIRROR SCENARIO AND ELECTRONIC DEVICE |
PCT/CN2021/113496 WO2022052772A1 (zh) | 2020-09-10 | 2021-08-19 | 多窗口投屏场景下的应用界面显示方法及电子设备 |
US18/044,704 US20230367441A1 (en) | 2020-09-10 | 2021-08-19 | Application Interface Display Method in Multi-Window Projection Scenario and Electronic Device |
CN202180032587.2A CN115486087A (zh) | 2020-09-10 | 2021-08-19 | 多窗口投屏场景下的应用界面显示方法及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010949157.4A CN113553014B (zh) | 2020-09-10 | 2020-09-10 | 多窗口投屏场景下的应用界面显示方法及电子设备 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110836751.7A Division CN113741840A (zh) | 2020-09-10 | 2020-09-10 | 多窗口投屏场景下的应用界面显示方法及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113553014A CN113553014A (zh) | 2021-10-26 |
CN113553014B true CN113553014B (zh) | 2023-01-06 |
Family
ID=78101646
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110836751.7A Pending CN113741840A (zh) | 2020-09-10 | 2020-09-10 | 多窗口投屏场景下的应用界面显示方法及电子设备 |
CN202010949157.4A Active CN113553014B (zh) | 2020-09-10 | 2020-09-10 | 多窗口投屏场景下的应用界面显示方法及电子设备 |
CN202180032587.2A Pending CN115486087A (zh) | 2020-09-10 | 2021-08-19 | 多窗口投屏场景下的应用界面显示方法及电子设备 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110836751.7A Pending CN113741840A (zh) | 2020-09-10 | 2020-09-10 | 多窗口投屏场景下的应用界面显示方法及电子设备 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202180032587.2A Pending CN115486087A (zh) | 2020-09-10 | 2021-08-19 | 多窗口投屏场景下的应用界面显示方法及电子设备 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20230367441A1 (zh) |
EP (1) | EP4207777A4 (zh) |
CN (3) | CN113741840A (zh) |
WO (1) | WO2022052772A1 (zh) |
Families Citing this family (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110442366B (zh) * | 2019-08-09 | 2021-06-15 | 广州视源电子科技股份有限公司 | 一种传屏处理方法、装置、设备和存储介质 |
CN114153542A (zh) * | 2021-11-30 | 2022-03-08 | 阿波罗智联(北京)科技有限公司 | 投屏方法、装置、电子设备及计算机可读存储介质 |
CN116263649A (zh) * | 2021-12-13 | 2023-06-16 | 华为技术有限公司 | 一种显示方法及电子设备 |
CN116777740A (zh) * | 2022-03-10 | 2023-09-19 | 华为技术有限公司 | 一种截屏方法、电子设备及系统 |
CN118113244A (zh) * | 2022-03-23 | 2024-05-31 | 博泰车联网(南京)有限公司 | 投屏端和显示端的响应方法、电子设备及存储介质 |
WO2023202468A1 (zh) * | 2022-04-19 | 2023-10-26 | 深圳传音控股股份有限公司 | 显示方法、智能终端及存储介质 |
CN117093290A (zh) * | 2022-05-13 | 2023-11-21 | 华为技术有限公司 | 窗口尺寸调整方法、相关装置及通信系统 |
CN116095460B (zh) * | 2022-05-25 | 2023-11-21 | 荣耀终端有限公司 | 录像方法、装置及存储介质 |
CN116095465B (zh) * | 2022-05-25 | 2023-10-20 | 荣耀终端有限公司 | 录像方法、装置及存储介质 |
CN114968160A (zh) * | 2022-06-13 | 2022-08-30 | 北京有竹居网络技术有限公司 | 一种页面展示方法、装置、计算机设备及存储介质 |
CN114780199B (zh) * | 2022-06-17 | 2022-08-23 | 北京麟卓信息科技有限公司 | 一种多窗口模式下安卓应用显示输出的共享方法 |
CN117472307A (zh) * | 2022-07-29 | 2024-01-30 | 华为技术有限公司 | 一种控制方法及电子设备 |
CN117632061A (zh) * | 2022-08-15 | 2024-03-01 | 华为技术有限公司 | 投屏方法、电子设备及系统 |
CN117850644A (zh) * | 2022-09-30 | 2024-04-09 | 华为技术有限公司 | 切换窗口的方法和电子设备 |
CN117850715A (zh) * | 2022-09-30 | 2024-04-09 | 华为技术有限公司 | 投屏显示方法、电子设备及系统 |
CN117908814A (zh) * | 2022-10-19 | 2024-04-19 | 荣耀终端有限公司 | 一种投屏系统和电子设备 |
CN118012299A (zh) * | 2022-11-10 | 2024-05-10 | 华为终端有限公司 | 显示方法、电子设备以及介质 |
CN118055283A (zh) * | 2022-11-17 | 2024-05-17 | 华为技术有限公司 | 一种多窗口场景下的窗口获焦方法、设备及系统 |
WO2024124842A1 (zh) * | 2022-12-14 | 2024-06-20 | 海信视像科技股份有限公司 | 显示设备及用于显示设备的处理方法 |
CN117156189B (zh) * | 2023-02-27 | 2024-08-13 | 荣耀终端有限公司 | 投屏显示方法及电子设备 |
CN118741195A (zh) * | 2023-03-28 | 2024-10-01 | 华为技术有限公司 | 一种视频切换方法及电子设备 |
CN117724669B (zh) * | 2023-06-30 | 2024-08-13 | 荣耀终端有限公司 | 一种投屏显示方法及电子设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107423010A (zh) * | 2017-03-23 | 2017-12-01 | 联想(北京)有限公司 | 一种信息处理方法及电子设备 |
CN110662095A (zh) * | 2019-08-28 | 2020-01-07 | 北京小米移动软件有限公司 | 投屏处理方法、装置、终端及存储介质 |
CN111314768A (zh) * | 2020-02-24 | 2020-06-19 | 北京小米移动软件有限公司 | 投屏方法、投屏装置、电子设备以及计算机可读存储介质 |
CN111399789A (zh) * | 2020-02-20 | 2020-07-10 | 华为技术有限公司 | 界面布局方法、装置及系统 |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005011372A (ja) * | 2004-08-12 | 2005-01-13 | Fuji Xerox Co Ltd | 表示装置および方法 |
US20090198539A1 (en) * | 2008-02-06 | 2009-08-06 | Leonard Buzz | Onscreen takeoff incorporating typical areas system, method and computer product |
KR102043049B1 (ko) * | 2013-04-01 | 2019-11-11 | 삼성전자 주식회사 | 앱 운용 방법 및 앱 운용 장치와, 이를 지원하는 앱 출력 장치 |
KR20140140957A (ko) * | 2013-05-30 | 2014-12-10 | 삼성전자주식회사 | 화면 데이터의 미러링 방법, 저장 매체 및 전자 장치 |
CN103593111A (zh) * | 2013-11-14 | 2014-02-19 | 三星电子(中国)研发中心 | 一种移动终端屏幕共享的方法和移动终端 |
CN104883617B (zh) * | 2014-02-27 | 2018-09-04 | 深圳市安普尔科技有限公司 | 多屏互动系统及方法 |
CN103823620B (zh) * | 2014-03-04 | 2017-01-25 | 飞天诚信科技股份有限公司 | 一种屏幕适配的方法和装置 |
CN105718227A (zh) * | 2014-12-04 | 2016-06-29 | 中国移动通信集团公司 | 一种传屏方法及相关设备 |
KR102627518B1 (ko) * | 2016-09-02 | 2024-01-23 | 엘지전자 주식회사 | 싱크 디바이스 및 그 제어 방법 |
CN108279953B (zh) * | 2016-12-30 | 2021-01-19 | 法法汽车(中国)有限公司 | 投屏方法及投屏装置 |
KR102303420B1 (ko) * | 2017-02-28 | 2021-09-23 | 삼성전자주식회사 | 전자 장치 및 전자 장치의 윈도우 관리 방법 |
CN110515573B (zh) * | 2018-05-21 | 2022-07-22 | 腾讯科技(深圳)有限公司 | 投屏方法、装置、系统和计算机设备 |
CN110708086B (zh) * | 2019-08-26 | 2021-09-14 | 华为技术有限公司 | 一种分屏显示方法与电子设备 |
CN115357178B (zh) * | 2019-08-29 | 2023-08-08 | 荣耀终端有限公司 | 一种应用于投屏场景的控制方法以及相关设备 |
CN110719584B (zh) * | 2019-09-02 | 2021-07-16 | 华为技术有限公司 | 近距离传输信息的方法和电子设备 |
-
2020
- 2020-09-10 CN CN202110836751.7A patent/CN113741840A/zh active Pending
- 2020-09-10 CN CN202010949157.4A patent/CN113553014B/zh active Active
-
2021
- 2021-08-19 WO PCT/CN2021/113496 patent/WO2022052772A1/zh unknown
- 2021-08-19 CN CN202180032587.2A patent/CN115486087A/zh active Pending
- 2021-08-19 EP EP21865828.4A patent/EP4207777A4/en active Pending
- 2021-08-19 US US18/044,704 patent/US20230367441A1/en active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107423010A (zh) * | 2017-03-23 | 2017-12-01 | 联想(北京)有限公司 | 一种信息处理方法及电子设备 |
CN110662095A (zh) * | 2019-08-28 | 2020-01-07 | 北京小米移动软件有限公司 | 投屏处理方法、装置、终端及存储介质 |
CN111399789A (zh) * | 2020-02-20 | 2020-07-10 | 华为技术有限公司 | 界面布局方法、装置及系统 |
CN111314768A (zh) * | 2020-02-24 | 2020-06-19 | 北京小米移动软件有限公司 | 投屏方法、投屏装置、电子设备以及计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
US20230367441A1 (en) | 2023-11-16 |
CN113553014A (zh) | 2021-10-26 |
CN115486087A (zh) | 2022-12-16 |
WO2022052772A1 (zh) | 2022-03-17 |
EP4207777A4 (en) | 2024-01-24 |
CN113741840A (zh) | 2021-12-03 |
EP4207777A1 (en) | 2023-07-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113553014B (zh) | 多窗口投屏场景下的应用界面显示方法及电子设备 | |
WO2021057830A1 (zh) | 一种信息处理方法及电子设备 | |
WO2022052773A1 (zh) | 多窗口投屏方法及电子设备 | |
WO2021121052A1 (zh) | 一种多屏协同方法、系统及电子设备 | |
JP2023503679A (ja) | マルチウィンドウ表示方法、電子デバイス及びシステム | |
US11972106B2 (en) | Split screen method and apparatus, and electronic device | |
WO2022083296A1 (zh) | 一种显示方法及电子设备 | |
CN112527222A (zh) | 一种信息处理方法及电子设备 | |
CN112527174A (zh) | 一种信息处理方法及电子设备 | |
WO2023005900A1 (zh) | 一种投屏方法、电子设备及系统 | |
CN114489529A (zh) | 电子设备的投屏方法及其介质和电子设备 | |
WO2022160999A1 (zh) | 显示方法和电子设备 | |
WO2021052488A1 (zh) | 一种信息处理方法及电子设备 | |
CN113835802A (zh) | 设备交互方法、系统、设备及计算机可读存储介质 | |
WO2021042881A1 (zh) | 消息通知方法及电子设备 | |
CN117724825B (zh) | 一种界面显示方法及电子设备 | |
WO2024179161A1 (zh) | 分屏方法、装置、电子设备和计算机可读存储介质 | |
WO2023217142A1 (zh) | 窗口尺寸调整方法、相关装置及通信系统 | |
WO2023185636A1 (zh) | 图像显示方法及电子设备 | |
WO2022179273A1 (zh) | 一种分布式音频播放方法及电子设备 | |
WO2024104131A1 (zh) | 一种多窗口场景下的窗口获焦方法、设备及系统 | |
CN117955950A (zh) | 一种加入多媒体活动的方法及设备 | |
CN118276716A (zh) | 窗口管理的方法和电子设备 | |
CN118689430A (zh) | 一种屏幕内容共享方法、设备及系统 | |
CN115617427A (zh) | 应用的跨平台显示方法、可读介质和电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |