CN112394895B - 画面跨设备显示方法与装置、电子设备 - Google Patents
画面跨设备显示方法与装置、电子设备 Download PDFInfo
- Publication number
- CN112394895B CN112394895B CN202011284014.2A CN202011284014A CN112394895B CN 112394895 B CN112394895 B CN 112394895B CN 202011284014 A CN202011284014 A CN 202011284014A CN 112394895 B CN112394895 B CN 112394895B
- Authority
- CN
- China
- Prior art keywords
- screen
- picture
- operation event
- target
- 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.)
- Active
Links
Classifications
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Controls And Circuits For Display Device (AREA)
- User Interface Of Digital Computer (AREA)
- Telephone Function (AREA)
Abstract
本申请实施例公开了一种画面跨设备显示方法与装置、电子设备,该方法包括:显示第一画面,第一画面为投屏源设备上第一应用的运行画面的当前镜像;获取针对第一画面的第一操作事件;根据第一操作事件对第一画面的执行动作以判断是否在本端响应第一操作事件对应的第一指令;若不在本端响应第一操作事件对应的第一指令,则向投屏源设备发送第一操作事件对应的第二指令,第二操作指令用于指示投屏源设备对第一应用的运行画面执行操作。可见,本申请实施例有利于实现应用的画面跨设备显示和交互操作,提高画面交互操作的处理效率,以及提升投屏的使用体验。
Description
技术领域
本申请涉及计算机技术领域,具体涉及一种画面跨设备显示方法与装置、电子设备。
背景技术
随着科技的发展,用户可能同时拥有多个设备,而设备可能有多种形态,如手机、电脑、平板、电视、手表等,并且不同设备上可能搭载不同操作***、软硬件架构等。例如,电脑上可搭载Windows或Mac等***,手机上可搭载Android或IOS等***。
随着投屏技术的运用,不同设备或***上运行的应用可以通过投屏方式进行跨设备使用,从而实现在不同设备或***上应用的画面的投屏。目前,应用的画面在跨设备的显示过程中,仍然存在一些需要解决的问题。
发明内容
本申请实施例提供了一种画面跨设备显示方法与装置、电子设备,以期望实现应用的画面跨设备显示和交互控制,提高画面交互操作的处理效率,以及提升投屏的使用体验。
第一方面,本申请实施例提供一种画面跨设备显示方法,应用于投屏目标设备,所述方法包括:
显示第一画面,所述第一画面为投屏源设备上第一应用的运行画面的当前镜像;
获取针对所述第一画面的第一操作事件;
根据所述第一操作事件对所述第一画面的执行动作以判断是否在本端响应所述第一操作事件对应的第一指令;
若不在本端响应所述第一操作事件对应的第一指令,则向所述投屏源设备发送所述第一操作事件对应的第二指令,所述第一操作事件对应的第二指令用于指示所述投屏源设备对所述第一应用的运行画面执行操作。
第二方面,本申请实施例提供一种画面跨设备显示装置,所述装置包括处理单元和通信单元,所述处理单元用于:
显示第一画面,所述第一画面为投屏源设备上第一应用的运行画面的当前镜像;
获取针对所述第一画面的第一操作事件;
根据所述第一操作事件对所述第一画面的执行动作以判断是否在本端响应所述第一操作指令;
若不在本端响应所述第一操作指令,则通过所述通信单元向所述投屏源设备发送所述第一操作事件对应的第二指令,所述第一操作事件对应的第二指令用于指示所述投屏源设备对所述第一应用的运行画面执行操作。
第三方面,本申请实施例提供一种电子设备,所述电子设备为投屏目标设备,包括处理器、存储器和通信接口,所述存储器存储有一个或多个程序,并且所述一个或多个程序由所述处理器执行,所述一个或多个程序用于执行本申请实施例第一方面中的步骤的指令。
第四方面,本申请实施例提供一种计算机可读存储介质,其中,所述计算机可读存储介质存储用于电子数据交换的计算机程序,所述计算机程序可操作来使得计算机执行本申请实施例第一方面中所描述的部分或全部步骤。
第五方面,本申请实施例提供一种计算机程序产品,其中,所述计算机程序产品包括计算机程序,所述计算机程序可操作来使得计算机执行本申请实施例第一方面中所描述的部分或全部步骤。所述计算机程序产品可以为一个软件安装包。
可以看出,本申请实施例中,投屏目标设备通过显示第一画面,并获取针对第一画面的第一操作事件。然后,根据第一操作事件对第一画面的执行动作以判断是否在本端响应第一操作事件对应的第一指令。若不在本端响应第一指令,则向投屏源设备发送第一操作事件对应的第二指令。由于第一画面为投屏源设备上第一应用的运行画面在投屏目标设备的显示屏上的当前镜像,并且第一操作事件对应的第二指令用于指示投屏源设备对第一应用的运行画面执行操作,从而实现画面跨设备显示。另外,由于投屏目标设备需要判断是否在本端响应第一操作事件对应的第一指令,因此投屏目标设备既可能在本端响应,也可能不在本端响应,使得本申请既能对投屏目标设备的显示屏上的投屏画面进行操作,也能通过适配处理对投屏源设备上第一应用的运行画面进行控制操作,从而实现应用的画面跨设备交互控制,提高画面交互操作的处理效率,以及提升投屏的使用体验。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。显而易见地,下面描述的附图仅仅是本申请的一些实施例。对于本领域技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他附图。
图1是本申请实施例提供的一种投屏通信***的架构示意图;
图2是本申请实施例提供的一种电子设备的硬件结构示意图;
图3是本申请实施例提供的一种电子设备的软件结构示意图;
图4是本申请实施例提供的一种投屏源设备和投屏目标设备的结构示意图;
图5是本申请实施例提供的一种画面跨设备显示方法的流程示意图;
图6是本申请实施例提供的一种画面跨设备显示的结构示意图;
图7是本申请实施例提供的又一种画面跨设备显示的结构示意图;
图8是本申请实施例提供的又一种画面跨设备显示的结构示意图;
图9是本申请实施例提供的又一种画面跨设备显示的结构示意图;
图10是本申请实施例提供的又一种画面跨设备显示的结构示意图;
图11是本申请实施例提供的又一种画面跨设备显示的结构示意图;
图12是本申请实施例提供的又一种画面跨设备显示的结构示意图;
图13是本申请实施例提供的又一种画面跨设备显示的结构示意图;
图14是本申请实施例提供的又一种画面跨设备显示的结构示意图;
图15是本申请实施例提供的又一种画面跨设备显示的结构示意图;
图16是本申请实施例提供的又一种画面跨设备显示的结构示意图;
图17是本申请实施例提供的又一种画面跨设备显示的结构示意图;
图18是本申请实施例提供的又一种画面跨设备显示的结构示意图;
图19是本申请实施例提供的又一种画面跨设备显示的结构示意图;
图20是本申请实施例提供的又一种画面跨设备显示的结构示意图;
图21是本申请实施例提供的又一种画面跨设备显示方法的流程示意图;
图22是本申请实施例提供的又一种画面跨设备显示方法的流程示意图;
图23是本申请实施例提供的一种画面跨设备显示装置的功能单元组成框图;
图24是本申请实施例提供的又一种电子设备的结构示意图。
具体实施方式
为了本技术领域人员更好理解本申请的技术方案,下面结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请的部分实施例,而并非全部的实施例。基于本申请实施例的描述,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请所保护的范围。
在对本申请实施例的技术方案进行描述之前,下面先对本申请可能涉及的相关概念、投屏通信***、电子设备的软硬件结构等进行介绍。
本申请实施例的投屏是一种将设备上运行的应用的画面或内容投射到另一设备的显示屏或显示介质上进行显示的技术,是典型的信息同步方式。其中,本申请实施例将投射其应用的画面的设备称为投屏源设备,而将接收其应用的画面并显示的设备称为投屏目标设备。
其次,本申请所涉及的投屏可以包括有线投屏和无线投屏。其中,有线投屏可以通过高清多媒体接口(high definition multimedia interface,HDMI)、通用串行总线(universal serial bus,USB)接口等建立投屏源设备与投屏目标设备之间的有线连接以传输媒体数据;无线投屏可以通过数字生活网络联盟(digistal living networkalliance,DLNA)协议、无线显示分享(Miracast)或隔空播放(AirPlay)协议建立投屏源设备与投屏目标设备之间的有线连接以传输媒体数据。
示例性的,在投屏时,投屏源设备可以把当前视频播放器中的视频流通过数据编码压缩之后发送到投屏目标设备;然后,投屏目标设备解码视频流数据之后,在其显示屏上显示投屏内容。为表述方便,本申请实施例可以将投屏目标设备的显示屏上显示的投屏内容称为投屏源设备的投屏内容的镜像。
另外,本申请实施例可以将投屏源设备和投屏目标设备统称为电子设备。其中,本申请实施例的电子设备可以是手持设备、车载设备、可穿戴设备、增强现实(augmentedreality,AR)设备、虚拟现实(virtual reality,VR)设备、投影设备、投影仪或者连接到无线调制解调器的其他设备,也可以是各种具体形式的用户设备(user equipment,UE)、终端设备(terminal device)、手机(smart phone)、智慧屏、智慧电视、智能手表、笔记本电脑、智能音响、摄像头、游戏手柄、麦克风、站点(station,STA)、接入点(access point,AP)、移动台(mobile Station,MS)、个人数字助理(personal digital assistant,PDA)、个人计算机(personal computer,PC)或者中继设备等。
示例性的,以电脑和手机这两种电子设备为例。当电脑和手机通过无线通信技术(如蓝牙、无线保真、紫蜂、近场通信等)或数据线(如USB数据线)连接时,通过投屏技术,手机作为投屏源设备将其运行的应用的画面或内容投屏到电脑的显示屏上,此时电脑作为投屏目标设备;或者,电脑作为投屏源设备将其运行的应用的画面或内容投屏到手机的显示屏上,此时手机作为投屏目标设备。
下面本申请实施例的技术方案可以应用于如图1所示的投屏通信***10。其中,投屏通信***10可以包括至少两个电子设备110。其中,至少两个电子设备110可以包括电子设备110A、电子设备110B、电子设备110C、电子设备110D、电子设备110E和电子设备110F。同时,至少两个电子设备110中的每个电子设备之间可以通过无线网络或有线数据相互通信连接。
需要说明的是,无线网络可以包括移动蜂窝网络(如第五代5G移动通信网络)、无线局域网(wireless local area network,WLAN)、广域网(wide area network,WAN)、蓝牙(Bluetooth)、无线保真(wireless fidelity,Wi-Fi)、紫蜂(Zigbee)、近场通信(nearfield communication,NFC)或者超宽带(ultra wide band,UWB)等;有线数据可以包括HDMI数据线、USB数据线等。
具体的,该至少两个电子设备110中的每个电子设备可以为同一个用户账号下的设备。例如,当用户使用同一个用户账号登录手机、台式电脑、智慧屏、笔记本电脑、中继设备和智能手表时,该至少两个电子设备110包括该手机、台式电脑、智慧屏、笔记本电脑、中继设备和智能手表,并且该手机、台式电脑、智慧屏、笔记本电脑、中继设备和智能手表之间可以通过无线网络互相通信。
具体的,该至少两个电子设备110中的每个电子设备可以通过中继设备(如路由器)连接到同一个WLAN网络中。例如,当用户将手机、台式电脑、智慧屏、笔记本电脑和智能手表接入由中继设备提供的Wi-Fi网络时,该至少两个电子设备110包括该手机、台式电脑、智慧屏、笔记本电脑、中继设备和智能手表,并且该手机、台式电脑、智慧屏、笔记本电脑、中继设备和智能手表形成一个WLAN网络,从而WLAN网络内的各个设备之间可以通过中继设备实现相互通信。
具体的,该至少两个电子设备110中的每个电子设备可以通过无线通信方式(如蓝牙、Zigbee、NFC、UWB等)组成一个对等(Peer to Peer,P2P)网络。例如,用户通过扫描NFC标签的方式将手机、笔记本电脑和智能手表等形成了一个P2P网络,该P2P网络内的所有设备之前可以是实现相互通信。
进一步的,该至少两个电子设备110中一个或多个电子设备可以作为投屏源设备,而其他电子设备可以作为投屏目标设备。此时,投屏源设备可将其运行的应用的当前画面投屏或流转至投屏目标设备中显示。另外,当投屏目标设备需要同时显示由多个投屏源设备投屏的镜像时,投屏目标设备可以通过分屏方式来同时显示。例如,电子设备110A向电子设备110B和电子设备110C进行投屏,并且电子设备110D向电子设备110C和电子设备110F进行投屏。此时,电子设备11C可以通过分屏方式来同时显示来自电子设备110A和电子设备110D的投屏镜像。
进一步的,投屏通信***10还可以包括其他数量的电子设备,在此不作具体限定。
下面结合图2对本申请实施例中的电子设备的结构进行详细说明,可以理解的是,图2示意的结构并不构成对电子设备的具体限定。在本申请另一些实施例中,电子设备还可以包括比图2示意更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。另外,图2示意的部件可以通过硬件、软件或软件和硬件的组合实现。
请参阅图2,电子设备可以包括处理器210、天线1、天线2、移动通信模块220、无线通信模块230、音频模块240、传感器模块250、显示模块260、摄像模块270、充电管理模块280、内部存储器2901和外部存储器接口2902等。
具体的,处理器210可以包括一个或多个处理单元。例如,处理器210可以包括应用处理器(application processor,AP)、调制解调处理器、图形处理器(graphicsprocessing unit,GPU)、图像信号处理器(image signal processor,ISP)、控制器、存储器、视频编解码器、数字信号处理器(digital signal processor,DSP)、现场可编程逻辑门阵列(field programmable gate array,FPGA)基带处理器和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
进一步的,处理器210中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器210中的存储器为高速缓冲存储器。该存储器可以保存处理器210刚用过或循环使用的指令或数据。如果处理器210需要再次使用该指令或数据,则可以从所述存储器中直接调用,从而避免重复存取,减少处理器210的等待时间以提高***效率。
进一步的,处理器210可以包括一个或多个接口。接口可以包括集成电路(inter-integrated circuit,I2C)接口、集成电路内置音频(inter-integrated circuit sound,I2S)接口、脉冲编码调制(pulse code modulation,PCM)接口、通用异步收发传输器(universal asynchronous receiver/transmitter,UART)接口、移动产业处理器接口(mobile industry processor interface,MIPI)、通用输入输出(general-purposeinput/output,GPIO)接口、用户标识模块(subscriber identity module,SIM)接口和/或USB接口等。
需要说明的是,电子设备的无线通信功能可以通过天线1、天线2、移动通信模块220、无线通信模块230、调制解调处理器和基带处理器等实现。其中,天线1和天线2用于发射和接收电磁波信号。电子设备中的每个天线可用于覆盖单个或多个通信频带。另外,不同的天线还可以复用以提高天线的利用率。例如,将天线1复用为无线局域网的分集天线。
具体的,移动通信模块220可以提供应用在电子设备上的包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块220可以包括至少一个滤波器、开关、功率放大器和低噪声放大器(low noise amplifier,LNA)等。
进一步的,移动通信模块220可以由天线1接收电磁波,并对接收的电磁波进行滤波、放大等处理,传送至调制解调处理器进行解调。另外,移动通信模块220还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。在本申请实施例中,移动通信模块220能够实现本申请技术方案中投屏源设备与投屏目标设备之间的通信连接。
进一步的,移动通信模块220的至少部分功能模块可以被设置于处理器210中;或者,移动通信模块220的至少部分功能模块可以与处理器210的部分模块设置在同一个器件中。
具体的,无线通信模块230可以提供应用在电子设备上的包括蓝牙(Bluetooth,BT)、无线局域网(wireless local area networks,WLAN)、无线保真(wireless fidelity,Wi-Fi)网络、近距离无线通信(near field communication,NFC)、红外技术(infrared,IR)等无线通信的解决方案。
进一步的,无线通信模块230可以是集成至少一个通信处理模块的一个或多个器件。另外,无线通信模块230经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到***级芯片210。无线通信模块230还可以从处理器210接收待发送的信号,对其进行调频和放大,再由天线2转为电磁波辐射出去。在本申请实施例中,无线通信模块230能够实现本申请技术方案中投屏源设备与投屏目标设备之间的通信连接。
需要说明的是,电子设备可以通过音频模块240、扬声器2401、受话器2402、麦克风2403、耳机接口2404以及处理器210等实现音频功能。例如,音乐播放、录音等。
具体的,音频模块240可以用于将数字音频信息转换成模拟音频信号输出,也可以用于将模拟音频输入转换为数字音频信号。另外,音频模块240还可以用于对音频信号编码和解码。在一些实施例中,音频模块240可以设置于处理器210中,或将音频模块240的部分功能模块设置于处理器210中。
具体的,扬声器2401可以用于将音频电信号转换为声音信号。电子设备可以通过扬声器2301收听音乐,或收听免提通话。
具体的,受话器2402可以用于将音频电信号转换成声音信号。电子设备接听电话或语音信息时,可以通过将受话器2302靠近人耳接听语音。
具体的,麦克风2403可以用于将声音信号转换为电信号。当拨打电话或发送语音信息时,用户可以通过人嘴靠近麦克风2403发声,将声音信号输入到麦克风2403。另外,电子设备可以设置至少一个麦克风2403。在一个可能的示例中,电子设备可以设置两个麦克风2403,除了采集声音信号,还可以实现降噪功能;在一个可能的示例中,电子设备还可以设置三个,四个或更多麦克风2403,实现采集声音信号、降噪,还可以识别声音来源,实现定向录音功能等,对此不作具体限制。
具体的,耳机接口2404可以用于连接有线耳机。耳机接口2404可以是USB接口2703,也可以是3.5mm的开放移动电子设备平台(open mobile terminal platform,OMTP)标准接口,美国蜂窝电信工业协会(cellular telecommunications industryassociation of the USA,CTIA)标准接口等。
具体的,传感器模块180中可以包括压力传感器、陀螺仪传感器、气压传感器、磁传感器、加速度传感器、距离传感器、接近光传感器、指纹传感器、温度传感器、触摸传感器、环境光传感器、骨传导传感器、超带宽UWB传感器、近场通信NFC传感器、激光传感器和可见光传感器等。
需要说明的是,电子设备可以通过GPU、显示模块260以及处理器210等实现显示功能。其中,GPU可以用于执行数学和几何计算,并进行图形渲染。另外,GPU可以为图像处理的微处理器,并连接显示模块260和处理器210。处理器210可以包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
具体的,显示模块260可以为显示屏,其用于显示图像、视频等。其中,显示屏260可以包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD)、有机发光二极管(organic light-emittingdiode,OLED)、有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrix organic light emitting diode,AMOLED)、柔性发光二极管(flex light-emittingdiode,FLED)、量子点发光二极管(quantum dot lightemittingdiodes,QLED)等。在一个可能的示例中,电子设备可以包括1个或多个显示模块260。
需要说明的是,电子设备可以通过ISP、摄像模块270、视频编解码器、GPU、显示模块260以及处理器210等实现拍摄功能。其中,ISP可以用于处理摄像模块270反馈的数据。例如,在拍照时,先打开快门,再由光线通过镜头传递到摄像头感光元件上,实现光信号转换为电信号,最终通过摄像头感光元件将该电信号传递给ISP处理以转化为肉眼可见的图像。另外,ISP还可以对图像的噪点、亮度、肤色进行算法优化。ISP还可以对拍摄场景的曝光,色温等参数优化。在一个可能的示例中,ISP可以设置在摄像模块270中。
具体的,摄像模块270可以为摄像头,其用于捕获静态图像或视频等。其中,物体通过镜头生成光学图像投射到感光元件,而感光元件可以是电荷耦合器件(charge coupleddevice,CCD)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,CMOS)光电晶体管。感光元件把光信号转换成电信号,再将该电信号传递给ISP转换成数字图像信号。ISP将数字图像信号输出到DSP加工处理。DSP将数字图像信号转换成标准的RGB、YUV等格式的图像信号。在一个可能的示例中,电子设备可以包括一个或多个摄像模块270。
具体的,充电管理模块280用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。在一些有线充电的实施例中,充电管理模块280可以通过USB接口2803接收有线充电器的充电输入。在一些无线充电的实施例中,充电管理模块280可以通过电子设备的无线充电线圈接收无线充电输入。充电管理模块280为电池2801充电的同时,还可以通过电源管理模块2802为电子设备供电。
需要说明的是,电源管理模块2802用于连接电池2801、充电管理模块2802和处理器210。其中,电源管理模块2802接收电池2801和/或充电管理模块280的输入,为电子设备中的各个模块和处理器210等供电。
具体的,电源管理模块2802还可以用于监测电池容量、电池循环次数、电池健康状态(漏电、阻抗)等参数。在一个可能的示例中,电源管理模块2802也可以设置于处理器210中;在一个可能的示例中,电源管理模块2802和充电管理模块280也可以设置于同一个器件中。
需要说明的是,内部存储器2901可以用于存储计算机可执行程序代码,该可执行程序代码包括指令。其中,处理器210通过运行存储在内部存储器2901的指令,从而执行电子设备的各种功能应用以及数据处理。在一个可能的示例中,内部存储器2901存储执行本申请实施例的技术方案的程序代码。
具体的,内部存储器2901可以包括存储程序区和存储数据区。其中,存储程序区可存储操作***,至少一个功能所需的应用程序(例如,声音播放功能和图像播放功能等)等。存储数据区可存储电子设备使用过程中所创建的数据(例如,音频数据和电话本等)等。另外,内部存储器2901可以包括高速随机存取存储器,还可以包括非易失性存储器。例如,至少一个磁盘存储器件、闪存器件、通用闪存存储器(universal flash storage,UFS)等。
具体的,外部存储器接口2902可以用于连接外部存储卡,例如micro SD卡,实现扩展电子设备的存储能力。外部存储卡通过外部存储器接口2902与处理器210通信,实现数据存储功能。例如,将音乐、视频等文件保存在外部存储卡中。
本申请实施例中,电子设备的软件***可以采用分层架构、事件驱动架构、微核架构、微服务架构或云架构。下面本申请实施例以分层架构的Android***为例,示例性说明电子设备的软件结构。
如图3所示的设置有Android***的软硬件***的架构示意图。其中,内部存储器2901中可存储有内核层320、***运行库层340、应用框架层360和应用层380。其中,层与层之间通过软件接口通信,并且内核层320、***运行库层340和应用框架层360属于操作***空间。
具体的,应用层380属于用户空间,应用层380中运行有至少一个应用程序(或简称为“应用”),这些应用程序可以是操作***自带的原生应用程序,也可以是第三方开发者所开发的第三方应用程序。例如,应用层380可以包括相机、图库、日历、通话、地图、导航、WLAN、蓝牙、音乐、视频和短信息等应用程序。
在本申请实施例中,应用层中还可以安装投屏应用。用户可以从桌面、设置功能或下拉菜单等方式打开投屏应用。其中,该投屏应用可作为内容投射时投屏源设备与投屏目标设备之间的桥梁,将投屏源设备中需要投屏的应用的投屏内容(如应用的画面)发送给投屏目标设备。例如,投屏应用可接收应用框架层360上报的投屏事件,从而利用投屏应用与正在运行的应用(如视频播放器)交互,将该应用中正在显示或播放的内容作为投屏内容通过Wi-Fi等无线通信方式发送给投屏目标设备。
另外,用户还可以使用该投屏应用设置NFC标签与一个或多个电子设备之间的绑定关系。例如,在投屏应用中设置一个用于绑定NFC标签的选项。当电子设备检测到用户打开该选项后,投屏应用可显示待绑定的电子设备的列表。用户在该列表中选中需要绑定的一个或多个电子设备后,可将带电子设备靠近需要绑定的NFC标签。这样,电子设备通过NFC信号可将用户在投屏应用中选中的电子设备的标识写入NFC标签中,从而在NFC标签内建立该NFC标签与一个或多个电子设备之间的绑定关系。
需要说明的是,应用框架层360提供构建应用层的应用程序可能用到的各种应用编程接口(application programming interface,API)和编程框架,从而开发者也可以通过使用这些API来构建自己的应用程序。例如,窗口管理器(window manager)、内容提供器(content providers)、视图***(view system)、电话管理器(telephony manager)、资源管理器、通知管理器(notification manager)、消息管理器、活动管理器(activitymanager)、包管理器(package manager)、位置管理(location manager)和NFC服务等。
具体的,窗口管理器可以用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏、锁定屏幕、截取屏幕等。
具体的,内容提供器可以用于存放和获取数据,并使该数据可以被应用程序访问。其中,该数据可以包括视频、图像、音频、拨打和接听的电话、浏览历史和书签、电话簿等。另外,内容提供器可以使得应用程序可以访问另一个应用程序的数据,如联系人数据库,或者共享它们自己的数据。
具体的,视图***包括可视控件。例如,显示文字的控件和显示图片的控件等。视图***可以用于构建应用程序。显示界面可以由一个或多个视图组成的。例如,包括短信通知图标的显示界面,可以包括显示文字的视图以及显示图片的视图。
具体的,电话管理器用于提供电子设备的通信功能。例如,通话状态的管理(如接通、挂断等)。
具体的,资源管理器可以为应用程序提供各种资源。比如,本地化字符串、图标、图片、布局文件、视频文件等。
具体的,通知管理器使得应用程序可以在状态栏中显示通知信息,可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。比如,通知管理器被用于告知下载完成,消息提醒等。通知管理器还可以是以图表或者滚动条文本形式出现在***顶部状态栏的通知。另外,后台运行的应用程序的通知还可以是以对话窗口形式出现在屏幕上的通知。例如,在状态栏提示文本信息,发出提示音,电子设备振动、指示灯闪烁等。
具体的,消息管理器可以用于存储各个应用程序上报的消息的数据,并对各个应用程序上报的数据进行处理。
具体的,活动管理器可以用于管理应用程序生命周期并提供常用的导航回退功能。在一种可能的示例中,消息管理器可以是通知管理器的一部分。
在本申请实施例中,应用框架层360中可以运行NFC服务(NFC service)。
示例性的,手机开启NFC功能后可在应用框架层中开始运行NFC服务。当手机靠近或触碰NFC标签时,NFC服务可调用内核层的NFC驱动读取NFC标签中存储的绑定关系,从而获取到进行本次内容投屏的投屏目标设备。进而,NFC服务可向上述投屏应用上报投屏事件,从而触发投屏应用将手机正在显示或播放的内容作为投屏内容发送给投屏目标设备,开始本次内容投屏过程。
需要说明的是,***运行库层340通过一些C/C++库来为Android***提供了主要的特性支持。如SQLite库提供了数据库的支持,OpenGL/ES库提供了3D绘图的支持,Webkit库提供了浏览器内核的支持等。在***运行库层340中还提供有安卓运行时库(AndroidRuntime),其主要提供了一些核心库,能够允许开发者使用Java语言来编写Android应用。
具体的,内核层320可以为电子设备的各种硬件提供了底层的驱动,如显示驱动、音频驱动、摄像头驱动、蓝牙驱动、Wi-Fi驱动、电源管理、NFC驱动、UWB驱动等。
下面对本申请实施例的应用场景作一个具体介绍。如图4所示,投屏源设备410中的采集模块4101采集其运行的应用的当前画面,并传输到编码模块4102;其次,编码模块4102将该画面进行编码压缩以形成数据流,并由发送模块4103将该数据流传输到投屏目标设备420中的接收模块4201;再次,解码模块4202使用流媒体协议将该数据流进行解码,并将解码后的数据流传输给显示模块4203;最后,由显示模块4203显示出该画面的全镜像或部分镜像,从而实现画面跨设备显示。
另外,本申请实施例还提出通过输入模块4204对显示模块4203显示的画面进行输入操作(如放大、缩小、滚动、翻动、移动等)以产生输入操作指令,并将该输入操作指令传输到输入处理模块4205,再由输入处理模块4205判断该输入操作指令是在投屏目标设备420响应,还是在投屏源设备410响应。如果该输入操作指令是在投屏源设备410响应,则输入处理模块4205需要对该输入操作指令进行适配处理,并将适配后的操作指令通过发送模块4206传输到输入注入模块4104,再由输入注入模块4104对投屏源设备410运行的应用的当前画面执行操作。
可见,投屏目标设备420既能以缩放或移动的方式来操作投屏的画面,也能对投屏源设备410上应用的当前画面进行操作,从而实现应用的画面的交互操作,提升投屏的使用体验。下面本申请实施例将结合方法示例的角度进行具体说明。
结合上述描述,下面将从方法示例的角度介绍画面跨设备显示方法的执行步骤,请参阅图5。图5是本申请实施例提供的一种画面跨设备显示方法的流程示意图,该方法包括:
S510、显示第一画面。
其中,第一画面可以为投屏源设备上第一应用的运行画面的当前镜像。
需要说明的是,本申请实施例的第一应用可以为投屏源设备的应用层上运行的应用程序或媒体数据,如照片、视频、音频、游戏、图库、文档或多媒体等。同时,投屏源设备可以在前端运行该第一应用,也可以在后端运行该第一应用。当投屏源设备在前端运行该第一应用时,投屏源设备的显示屏可以显示该第一应用的运行画面;当投屏源设备在后端运行该第一应用时,投屏源设备的显示屏可以不显示该第一应用的运行画面,而由后台执行第一应用。
进一步需要说明的是,本申请实施例可以将投屏目标设备的显示屏上显示由投屏源设备投屏的画面称为镜像(即第一画面或目标画面),并且该镜像可以呈现出第一应用的运行画面的全部画面或者部分画面。同时,该镜像已经是在投屏过程中经过相关的分辨率调整、显示大小调整、画面调整等操作之后呈现的画面。
另外,由于本申请实施例可以通过上述输入模块4204对显示模块4203显示的画面进行输入操作,而导致投屏目标设备的显示屏上显示的当前镜像(即第一画面)既可能是投屏源设备针对第一应用的运行画面所要投屏的目标镜像(即目标画面),也可能是针对目标画面执行放大、缩小或移动等操作后的镜像。为了方便区分,本申请实施例将投屏源设备针对第一应用的运行画面所要投屏的目标镜像称为目标画面,而将投屏目标设备的显示屏上当前显示的画面称为第一画面。下面本申请实施例以投屏源设备为笔记本电脑以及投屏目标设备为手机进行示例说明。
示例性的,如图6、图7、图8和图9所示。在图6中,用户通过笔记本电脑上中的“图库”应用打开一张“素描后的猫.jpg”的照片,并利用投屏技术将笔记本电脑上“图库”应用的当前画面投屏到手机上。此时,手机的显示屏上显示的目标画面与笔记本电脑上“图库”应用的当前画面相同。然而,在图7中,用户可以通过设置相关投屏选项,只将笔记本电脑上的“图库”应用打开的“素描后的猫.jpg”投屏到手机上。此时,手机的显示屏上显示的目标画面只是图库”应用的当前画面中的部分画面。在图8中,用户可以通过滑动图7所示的手机的触摸屏将其显示屏中的目标画面进行放大操作。当手机响应该放大操作时,手机的显示屏显示当前画面,具体如图9所示。同理,在图10中,用户可以通过滑动图7所示的手机的触摸屏将其显示屏中的目标画面进行缩小操作。当手机响应该缩小操作时,手机的显示屏显示当前画面,具体如图11所示。
具体的,本申请实施例的输入模块4204需要根据电子设备确定。例如,当电子设备为手机、智能手表等具体触摸屏的设备时,其输入模块可以为该触摸屏。此时,用户可以通过滑动该触摸屏以实现对其显示的画面进行输入操作(如放大、缩小、滚动、翻动、移动等)。当电子设备为台式电脑、笔记本电脑或智能电视等不具备触摸屏的设备时,其输入模块可以为外接设备(如鼠标、键盘、遥控器等)。此时,用户可以通过操作该外接设备以实现对其显示的画面进行输入操作。另外,当外接设备为鼠标时,用户可以通过按住该鼠标的鼠标左键来移动画面;或者,通过将该鼠标滚轮的上下滑动来放大或缩小画面,对此不作具体限制。
S520、获取针对第一画面的第一操作事件。
需要说明的是,本申请实施例可以通过输入模块4204对投屏目标设备显示的第一画面进行输入操作以产生第一操作事件。因此,第一操作事件可以为在投屏目标设备的显示屏上沿第一方向移动第一画面的操作,可以为在投屏目标设备的显示屏上点击第一画面的操作,也可以为在投屏目标设备的显示屏上放大或缩小第一画面的操作,对此不作具体限制。
S530、根据第一操作事件对第一画面的执行动作以判断是否在本端响应第一操作事件对应的第一指令。
下面本申请实施例将对投屏目标设备如何根据第一操作时间对第一画面的执行动作以判断是否在本端响应第一操作事件对应的第一指令的实现方式进行具体说明。
方式一:
在一个可能的示例中,根据第一操作事件对第一画面的执行动作以判断是否在本端响应所述第一操作事件对应的第一指令,可以包括以下步骤:若第一操作事件为沿第一方向移动第一画面的操作,则根据第一画面和目标画面判断是否在本端响应第一操作事件对应的第一指令。
其中,目标画面可以为投屏源设备针对第一应用的运行画面所要投屏的目标镜像。
需要说明的是,由于本申请实施例可以通过上述输入模块4204对投屏目标设备显示的画面进行输入操作,因此投屏目标设备的显示屏上显示的当前镜像(即第一画面)既可能是目标画面,放大、缩小或移动等操作后的画面,也可能是针对目标画面执行放大、缩小或移动等操作后的画面。当用户需要在投屏目标设备的显示屏上将第一画面沿第一方向移动时,本申请实施例考虑通过第一画面和目标画面来判断是否执行在投屏目标设备的显示屏上将第一画面沿第一方向移动。由于投屏目标设备可以直接调用内部的相关模块(如GPU、图像处理模块等)对第一画面和目标画面进行对比操作,因此针对是否在本端响应第一操作事件对应的第一指令的判断过程所需的处理时长很短,从而有利于提高用户的画面的交互操作的处理效率,提升投屏的使用体验。
具体的,目标画面呈现出第一应用的运行画面的整个画面;或者,目标画面只呈现出第一应用的运行画面的部分画面。
可以理解的是,投屏目标设备的显示屏上显示的目标画面既可以是流转源设备针对第一应用的运行画面所要投屏的整个画面(如图6所示),也可以是流转源设备针对第一应用的运行画面所要投屏的部分画面(如图7所示)。可见,本申请实施例有利于实现应用的画面的交互操作的多样性,提升投屏的使用体验。
具体的,第一方向可以用于表示投屏目标设备的当前显示屏所在平面的任意方向。例如,第一方向可以为平行于投屏目标设备的显示屏所在平面的水平向左、水平向右、水平向下、水平向上、水平斜向上、水平斜向左等,可以为平行于投屏目标设备的显示屏所在平面的弧形向左、弧形向右、弧形向下、弧形向上、弧形斜向上或弧形斜向左等。
需要说明的是,以投屏目标设备为手机为例,由于用户手持手机的姿势不同,因此该手机的显示屏所在的平面可以是垂直(或平行、斜向等)于地面。可见,本申请实施例中的第一方向需要根据投屏目标设备的当前显示屏所在平面来具体分析。
在一个可能的示例中,在根据第一画面和目标画面判断是否在本端响应第一操作事件对应的第一指令之后,该方法还包括以下步骤:若在本端响应第一操作指令,则将第一画面沿第一方向移动以显示第二画面。
其中,第二画面为第一应用的运行画面不同于第一画面的镜像。
示例性的,在图12中,用户可以通过滑动图9所示的手机的触摸屏将其显示屏中的当前画面(即第一画面)沿平行于手机的显示屏所在平面进行水平向左的移动操作。当手机响应该移动操作时,手机的显示屏上显示当前画面(即第二画面),具体如图13所示。
在一个可能的示例中,根据第一画面和目标画面判断是否在本端响应第一操作事件对应的第一指令,可以包括以下步骤:若第一画面与目标画面为不相同画面,则根据第一画面与目标画面之间的关系判断是否在本端响应第一操作事件对应的第一指令;或者,若第一画面与目标画面为相同画面,则不在本端响应第一操作事件对应的第一指令。
需要说明的是,第一画面与目标画面为不相同画面,可以理解为,用户已对投屏目标设备的显示屏上显示的目标画面执行了输入操作,从而导致当前显示的画面与目标画面不同(如图9所示)。此时,本申请实施例考虑根据第一画面与目标画面之间的关系(即放大画面、缩小画面和/或移动画面)来判断是否在投屏目标设备的显示屏上将第一画面沿第一方向移动。同理,第一画面与目标画面为相同画面,可以理解为,用户并未对投屏目标设备的显示屏上显示的目标画面执行输入操作,从而导致当前显示的画面与目标画面相同。可见,本申请实施例有利于实现应用的画面的交互操作的多样性,提升投屏的使用体验。
另外,针对在本端响应第一操作事件对应的第一指令和不在本端响应第一操作事件对应的第一指令的区别,本申请实施例以投屏源设备为笔记本电脑以及投屏目标设备为手机进行示例说明。
在本端响应第一操作事件对应的第一指令,可以理解为,手机响应该第一操作事件对应的第一指令。例如,在图13中,手机响应移动操作,并在手机的显示屏上移动后的部分画面(即第二画面)。然而,不在本端响应第一操作事件对应的第一指令,可以理解为,手机不响应该第一操作事件对应的第一指令。此时,手机需要将该第一操作事件进行适配处理,并将适配后的操作指令(即第一操作事件对应的第二指令)传输给笔记本电脑执行。另外,将第一操作事件进行适配的原因是,由于手机的输入模块可能是触摸屏,而笔记本电脑的输入模块可能是外接鼠标,因此通过触摸屏产生的输入操作需要适配到鼠标的输入操作的特性上。同时,由于手机的显示屏和笔记本电脑的显示屏往往尺寸不同,因此在手机的触摸屏上滑动某长度、移动某方向或者点击某位置等,其产生的输入操作无法在笔记本电脑上执行相同的长度、方向或位置,从而需要对由手机产生的输入操作进行相应的适配处理。另外,由于手机与笔记本电脑之间可能搭载不同的操作***、软硬件架构等,因此也需要进行相应的适配处理。
示例性的,在图14中,用户可以通过滑动图7所示的手机的触摸屏将其显示屏中的当前画面(即第一画面)沿平行于手机的显示屏所在平面进行水平向右的移动操作。由于该当前画面与目标画面为相同画面,因此手机不响应该移动操作对应的指令。此时,手机将该移动操作进行适配处理,并将适配后的移动操作对应的指令(即第二指令)传输给笔记本电脑执行。然后,笔记本电脑在响应适配后的移动操作对应的指令后,将“图库”应用打开的“素描后的猫.jpg”切换到“真实的猫.jpg”,再利用投屏技术将“真实的猫.jpg”的镜像同步到手机上,具体如图15所示,从而直接通过手机对笔记本电脑上的“图库”应用的当前画面进行切换操作,实现应用的画面的交互操作,提升投屏的使用体验。
进一步的,根据第一画面与目标画面之间的关系判断是否在本端响应第一操作事件对应的指令,可以包括以下步骤:若第一画面为目标画面放大后的部分画面,则根据第一画面沿第一方向移动是否超出目标画面的边缘来判断是否在本端响应第一操作指令;或者,若第一画面为目标画面缩小后的全画面,则不在本端响应第一操作指令。
需要说明的是,本申请实施例考虑根据第一画面是目标画面放大后的部分画面,还是目标画面缩小后的全画面来确定第一画面与目标画面之间的关系,从而分别判断是否在投屏目标设备的显示屏上将第一画面沿第一方向移动,实现应用的画面的交互操作。
示例性的,在图9中,手机显示的当前画面为目标画面放大后的部分画面,此时需要该当前画面沿第一方向移动是否超出目标画面的边缘来判断是否由手机响应第一操作指令;在图10中,手机显示的当前画面为目标画面缩小后的全画面,此时手机将不响应第一操作事件对应的指令,而需要将第一操作事件适配后由笔记本电脑来响应适配后的指令。
进一步的,根据第一画面沿第一方向移动是否超出目标画面的边缘来判断是否在本端响应第一操作事件对应的第一指令,可以包括以下步骤:若第一画面沿第一方向移动超出目标画面的边缘,则不在本端响应第一操作事件对应的第一指令;或者,若第一画面沿第一方向移动未超出目标画面的边缘,则在本端响应第一操作事件对应的第一指令。
示例性的,在图16的(a)中,如果用户通过滑动图9所示的手机的触摸屏将其显示屏中的当前画面沿平行于手机的显示屏所在平面进行水平向右的移动操作,则当前画面沿水平向右移动将超出目标画面的边缘,如图16的(b)。此时,手机将不响应该移动操作对应的指令。
示例性的,在图12中,用户可以通过滑动图9所示的手机的触摸屏将其显示屏中的当前画面沿平行于手机的显示屏所在平面进行水平向左的移动操作。由于该当前画面沿水平向左移动未超出目标画面的边缘,因此手机可以响应该移动操作对应的指令,此时手机的显示屏显示的当前画面如图13所示。
进一步的,不在本端响应第一操作事件对应的第一指令之后,该方法还包括以下步骤:在投屏目标设备的显示屏中显示目标窗口,该目标窗口用于提示无法将第一画面沿第一方向移动;或者,调用投屏目标设备的传感模块以使投屏目标设备振动;或者,调用投屏目标设备的扬声器以使投屏目标设备发声。
需要说明的是,当投屏目标设备无法响应第一操作事件对应的第一指令以将第一画面沿第一方向移动时,本申请实施例考虑通过投屏目标设备通过弹窗、振动或发声的方式来提醒用户,从而实现应用的画面的交互操作,提升投屏的使用体验。
示例性的,在图17的(a)中,用户通过滑动图9所示的手机的触摸屏将其显示屏中的当前画面沿平行于手机的显示屏所在平面进行水平向右的移动操作,由于当前画面沿水平向右移动将超出目标画面的边缘,因此手机的显示屏上将弹窗,提示无法将当前画面沿水平方向移动,显示“是否查看上一张照片”,具体如图17的(b)所示。当用户选择“是”的选项时,手机会将相关操作(移动操作或“是”选项操作等)进行适配,并将适配后的操作指令传输给笔记本电脑,再由笔记本电脑在“图库”应用中查看上一张照片。最后,笔记本电脑将“图库”应用的当前画面投屏到手机,从而在手机上实现查看上一张照片,提升投屏的使用体验。
方式二:
在一个可能的示例中,根据第一操作事件对第一画面的执行动作以判断是否在本端响应第一操作事件对应的第一指令,可以包括以下步骤:若第一操作事件为点击第一画面,则不在本端响应第一操作事件对应的第一指令。
需要说明的是,当用户需要在投屏目标设备的显示屏上点击第一画面(或第一画面上的某个位置)时,本申请实施例考虑不在本端响应第一操作事件对应的第一指令,从而有利于提高用户的画面的交互操作的处理效率,提升投屏的使用体验。
示例性的,在图18中,用户通过点击图6所示的手机的显示屏上“×”所在的位置以产生输入操作。此时,手机不响应该输入操作对应的指令,而是将该输入操作进行适配处理,并将适配后的操作指令(即第二指令)传输给笔记本电脑执行。然后,笔记本电脑在响应适配后的操作指令后,将“图库”应用进行关闭,并结束笔记本电脑到手机的投屏,具体如图19所示。
进一步的,不在本端响应第一操作事件对应的第一指令之后,该方法还包括以下步骤:在投屏目标设备的显示屏中显示目标窗口,该目标窗口用于提示无法将第一画面沿第一方向移动;或者,调用投屏目标设备的传感模块以使投屏目标设备振动;或者,调用投屏目标设备的扬声器以使投屏目标设备发声。具体如上述所述,在此不再赘述。
S540、若不在本端响应第一操作事件对应的第一指令,则向投屏源设备发送第一操作事件对应的第二指令。
其中,第二操作指令可以用于指示投屏源设备对第一应用的运行画面执行操作。
针对上述“方式一”,下面本申请实施例将对投屏目标设备如何确定第一操作事件对应的第二指令作一个示例说明。
在一个可能的示例中,在向投屏源设备发送第一操作事件对应的第二指令之前,该方法还可以包括以下步骤:根据第一操作事件和预设操作映射关系确定第一操作事件对应的第二指令。
其中,预设操作映射关系用于表示针对第一画面的操作与针对第一应用的运行画面的操作之间的映射关系。
通过上述可知,由于投屏源设备与投屏目标设备之间可能搭载不同的操作***、软硬件架构等,因此在投屏源设备与投屏目标设备建立投屏过程中,为了将投屏目标设备的输入操作适配到投屏源设备,保证投屏目标设备对投屏源设备上应用的运行画面进行操作,以及实现应用的画面的交互操作,本申请实施例需要建立针对投屏目标设备上投屏画面的操作与针对投屏源设备上应用的画面的操作之间的映射关系。
下面本申请实施例通过上述图中示例的笔记本电脑与手机之间的投屏过程,对预设操作映射关系作一个举例说明,如表1所示。
表1
针对上述“方式二”,下面本申请实施例将对投屏目标设备如何确定第一操作事件对应的第二指令作一个示例说明。
在一个可能的示例中,在向投屏源设备发送第一操作事件对应的第二指令之前,该方法还可以包括以下步骤:获取第一缩放比和第二缩放比;根据第一缩放比、第二缩放比和第一操作指令确定第一操作事件对应的第二指令。
其中,第一缩放比用于表示第一应用的运行画面的显示大小与目标画面的显示大小之间的缩放比,第二缩放比用于表示第一画面的显示大小与目标画面的显示大小之间的缩放比,目标画面为第一应用的运行画面在投屏目标设备的显示屏上的起始镜像。
通过上述可知,由于投屏源设备的显示屏与投屏目标设备的显示屏之间可能具有不同的尺寸大小,并且投屏目标设备的显示屏上显示的当前画面与目标画面可以不同,因此在投屏源设备与投屏目标设备建立投屏过程中,为了将投屏目标设备的输入操作适配到投屏源设备,保证投屏目标设备对投屏源设备上应用的当前画面进行操作,以及实现应用的画面的交互操作,本申请实施例需要预先确定第一应用的运行画面的显示大小与目标画面的显示大小之间的缩放比,以及第一画面的显示大小与目标画面的显示大小之间的缩放比。
示例性的,在图6中,笔记本电脑中的“图库”应用显示的“素描后的猫.jpg”的显示大小与手机的显示屏上显示的目标画面的显示大小不同,因此需要计算出彼此之间的缩放比(即第一缩放比),并将该第一缩放比存储在手机的内部存储器中。然后,用户为了方便在图6所述的手机上查看画面,将图6所示的手机的显示屏上显示的目标画面(即图20的(a))进行了放大,得到图20的(b)所述的手机的显示屏上显示的当前画面(即第一画面)。此时,需要计算出该当前画面的显示大小与该目标画面的显示大小之间的缩放比(即第二缩放比),并将该第二缩放比存储在手机的内部存储器中。最后,在如图20的(c)中,当用户点击图20的(b)所示的手机的显示屏上“×”所在的位置以产生输入操作时,手机不响应该输入操作,而是根据第一缩放比、第二缩放和该输入操作进行适配处理,并将适配后的操作指令传输给笔记本电脑执行。然后,笔记本电脑通过响应适配后的操作指令,将“图库”应用进行关闭,并结束笔记本电脑到手机的投屏。
在一个可能的示例中,在S540之后,该方法还包括以下步骤:显示第三画面,第三画面为投屏源设备响应第一操作事件对应的第二指令之后由第一应用的运行画面不同于第一画面的镜像。
可以理解的是,在响应第二操作指令之后,投屏源设备显示刷新、改变或切换后的第一应用的运行画面,并将该刷新、改变或切换后的第一应用的运行画面投屏到投屏目标设备,实现投屏目标设备同步显示画面。
综上所述,首先,本申请实施例通过投屏源设备为笔记本电脑以及投屏目标设备为手机为示例,对画面跨设备显示的具体实施方式进行了示例说明,并通过对手机的显示屏上显示的当前画面进行放大、缩小、移动或点击等输入操作,以及判断是否需要在手机上执行该输入操作,还是需要将该输入操作进行适配处理以传输给笔记本电脑,使得用户既能以缩放、移动或点击等方式来操作手机的显示屏上的投屏画面,也能对笔记本电脑上运行的“图库”应用的当前画面进行控制操作(如查看不同照片),从而实现应用的画面交互控制,提高应用的画面的交互操作的处理效率,以及提升投屏的使用体验。
然后,由于手机与笔记本电脑之间可能搭载不同的操作***、软硬件架构等,因此本申请能够实现在不同设备、操作***或软硬件架构之间的画面跨设备显示。
最后,笔记本电脑上运行的应用还可以有文档编辑器、视频播放器、音乐播放器等。此时,手机可以对笔记本电脑上运行的文档进行编辑,可以对笔记本电脑上播放的视频进行切换等操作,也可以对笔记本电脑上播放的音乐进行切换等操作,对此不作具体限制。
可以看出,本申请实施例中,投屏目标设备通过显示第一画面,并获取针对第一画面的第一操作事件。然后,根据第一操作事件对第一画面的执行动作以判断是否在本端响应第一操作事件对应的第一指令。若不在本端响应第一指令,则向投屏源设备发送第一操作事件对应的第二指令。由于第一画面为投屏源设备上第一应用的运行画面在投屏目标设备的显示屏上的当前镜像,并且第一操作事件对应的第二指令用于指示投屏源设备对第一应用的运行画面执行操作,从而实现画面跨设备显示。另外,由于投屏目标设备需要判断是否在本端响应第一操作事件对应的第一指令,因此投屏目标设备既可能在本端响应,也可能不在本端响应,使得本申请既能对投屏目标设备的显示屏上的投屏画面进行操作,也能通过适配处理对投屏源设备上第一应用的运行画面进行控制操作,从而实现应用的画面跨设备交互控制,提高画面交互操作的处理效率,以及提升投屏的使用体验。
与上述图5所述的实施例一致,请参阅图21,图21是本申请实施例提供的又一种画面跨设备显示方法的流程示意图,该方法包括:
S2110、显示第一画面。
其中,第一画面可以为投屏源设备上第一应用的运行画面的当前镜像。
需要说明的是,本申请实施例的第一应用可以为投屏源设备的应用层上运行的应用程序或媒体数据,如照片、视频、音频、游戏、图库、文档或多媒体等。同时,投屏源设备可以在前端运行该第一应用,也可以在后端运行该第一应用。当投屏源设备在前端运行该第一应用时,投屏源设备的显示屏可以显示该第一应用的运行画面;当投屏源设备在后端运行该第一应用时,投屏源设备的显示屏可以不显示该第一应用的运行画面,而由后台执行第一应用。
进一步需要说明的是,本申请实施例可以将投屏目标设备的显示屏上显示由投屏源设备投屏的画面称为镜像(即第一画面或目标画面),并且该镜像可以呈现出第一应用的运行画面的全部画面或者部分画面。同时,该镜像已经是在投屏过程中经过相关的分辨率调整、显示大小调整、画面调整等操作之后呈现的画面。
另外,由于本申请实施例可以通过上述输入模块4204对显示模块4203显示的画面进行输入操作,而导致投屏目标设备的显示屏上显示的当前镜像(即第一画面)既可能是投屏源设备针对第一应用的运行画面所要投屏的目标镜像(即目标画面),也可能是针对目标画面执行放大、缩小或移动等操作后的镜像。为了方便区分,本申请实施例将投屏源设备针对第一应用的运行画面所要投屏的目标镜像称为目标画面,而将投屏目标设备的显示屏上当前显示的画面称为第一画面。
S2120、获取针对第一画面的第一操作事件。
需要说明的是,本申请实施例可以通过输入模块4204对投屏目标设备显示的第一画面进行输入操作以产生第一操作事件。因此,第一操作事件可以为在投屏目标设备的显示屏上沿第一方向移动第一画面的操作,可以为在投屏目标设备的显示屏上点击第一画面的操作,也可以为在投屏目标设备的显示屏上放大或缩小第一画面的操作,对此不作具体限制。
S2130、若第一操作事件为沿第一方向移动第一画面的操作,则根据第一画面和目标画面判断是否在本端响应第一操作事件对应的第一指令。
其中,目标画面可以为投屏源设备针对第一应用的运行画面所要投屏的目标镜像。
具体的,目标画面呈现出第一应用的运行画面的整个画面;或者,目标画面只呈现出第一应用的运行画面的部分画面。
具体的,第一方向可以用于表示投屏目标设备的当前显示屏所在平面的任意方向。例如,第一方向可以为平行于投屏目标设备的显示屏所在平面的水平向左、水平向右、水平向下、水平向上、水平斜向上、水平斜向左等,可以为平行于投屏目标设备的显示屏所在平面的弧形向左、弧形向右、弧形向下、弧形向上、弧形斜向上或弧形斜向左等。
在一个可能的示例中,根据第一画面和目标画面判断是否在本端响应第一操作事件对应的第一指令,可以包括以下步骤:若第一画面与目标画面为不相同画面,则根据第一画面与目标画面之间的关系判断是否在本端响应第一操作事件对应的第一指令;或者,若第一画面与目标画面为相同画面,则不在本端响应第一操作事件对应的第一指令。
在一个可能的示例中,根据第一画面与目标画面之间的关系判断是否在本端响应第一操作事件对应的第一指令,可以包括以下步骤:若第一画面为目标画面放大后的部分画面,则根据第一画面沿第一方向移动是否超出目标画面的边缘来判断是否在本端响应第一操作事件对应的第一指令;或者,若第一画面为目标画面缩小后的全画面,则不在本端响应第一操作事件对应的第一指令。
在一个可能的示例中,根据第一画面沿第一方向移动是否超出目标画面的边缘来判断是否在本端响应第一操作事件对应的第一指令,可以包括以下操作:若第一画面沿第一方向移动超出目标画面的边缘,则不在本端响应第一操作事件对应的第一指令;或者,若第一画面沿第一方向移动未超出目标画面的边缘,则在本端响应第一操作事件对应的第一指令。
S2140、若不在本端响应第一操作事件对应的第一指令,则根据第一操作事件和预设操作映射关系确定第一操作事件对应的第二指令。
S2150、若在本端响应第一操作事件对应的第一指令,则将第一画面沿第一方向移动以显示第二画面。
其中,第二画面为第一应用的运行画面不同于第一画面的镜像。
S2160、向投屏源设备发送第一操作事件对应的第二指令。
其中,第一操作事件对应的第二指令用于指示投屏源设备对第一应用的运行画面执行操作。
S2170、显示第三画面。
其中,第三画面为投屏源设备响应第一操作事件对应的第二指令之后由第一应用的运行画面不同于第一画面的镜像。
可以理解的是,在响应第二操作指令之后,投屏源设备显示刷新、改变或切换后的第一应用的运行画面,并将该刷新、改变或切换后的第一应用的运行画面投屏到投屏目标设备,实现投屏目标设备同步显示画面。
需要说明的是,由于各个实施例的描述都各有侧重,因此图21所述的具体实施例中没有详述的部分,可以参见图5中的具体实施例的相关描述,在此不再赘述。
可以看出,本申请实施例中,投屏目标设备通过显示第一画面,并获取针对第一画面的第一操作事件。其次,若第一操作事件为沿第一方向移动第一画面的操作,则根据第一画面和目标画面判断是否在本端响应第一操作事件对应的第一指令。再次,若不在本端响应第一操作事件对应的第一指令,则根据第一操作事件和预设操作映射关系确定第一操作事件对应的第二指令;若在本端响应第一操作事件对应的第一指令,则将第一画面沿第一方向移动以显示第二画面。最后,向投屏源设备发送第一操作事件对应的第二指令,并显示第三画面。由于第一画面为投屏源设备上第一应用的运行画面在投屏目标设备的显示屏上的当前镜像,并且第一操作事件对应的第二指令用于指示投屏源设备对第一应用的运行画面执行操作,从而实现画面跨设备显示。另外,由于投屏目标设备需要判断是否在本端响应第一操作事件对应的第一指令,因此投屏目标设备既可能在本端响应,也可能不在本端响应,使得本申请既能对投屏目标设备的显示屏上的投屏画面进行操作,也能通过适配处理对投屏源设备上第一应用的运行画面进行控制操作,从而实现应用的画面跨设备交互控制,提高画面交互操作的处理效率,以及提升投屏的使用体验。
与上述图5和图21所述的实施例一致,请参阅图22,图22是本申请实施例提供的又一种画面跨设备显示方法的流程示意图,该方法包括:
S2210、显示第一画面。
其中,第一画面可以为投屏源设备上第一应用的运行画面的当前镜像。
需要说明的是,本申请实施例的第一应用可以为投屏源设备的应用层上运行的应用程序或媒体数据,如照片、视频、音频、游戏、图库、文档或多媒体等。同时,投屏源设备可以在前端运行该第一应用,也可以在后端运行该第一应用。当投屏源设备在前端运行该第一应用时,投屏源设备的显示屏可以显示该第一应用的运行画面;当投屏源设备在后端运行该第一应用时,投屏源设备的显示屏可以不显示该第一应用的运行画面,而由后台执行第一应用。
进一步需要说明的是,本申请实施例可以将投屏目标设备的显示屏上显示由投屏源设备投屏的画面称为镜像(即第一画面或目标画面),并且该镜像可以呈现出第一应用的运行画面的全部画面或者部分画面。同时,该镜像已经是在投屏过程中经过相关的分辨率调整、显示大小调整、画面调整等操作之后呈现的画面。
另外,由于本申请实施例可以通过上述输入模块4204对显示模块4203显示的画面进行输入操作,而导致投屏目标设备的显示屏上显示的当前镜像(即第一画面)既可能是投屏源设备针对第一应用的运行画面所要投屏的目标镜像(即目标画面),也可能是针对目标画面执行放大、缩小或移动等操作后的镜像。为了方便区分,本申请实施例将投屏源设备针对第一应用的运行画面所要投屏的目标镜像称为目标画面,而将投屏目标设备的显示屏上当前显示的画面称为第一画面。
S2220、获取针对第一画面的第一操作事件。
需要说明的是,本申请实施例可以通过输入模块4204对投屏目标设备显示的第一画面进行输入操作以产生第一操作事件。因此,第一操作事件可以为在投屏目标设备的显示屏上沿第一方向移动第一画面的操作,可以为在投屏目标设备的显示屏上点击第一画面的操作,也可以为在投屏目标设备的显示屏上放大或缩小第一画面的操作,对此不作具体限制。
S2230、若第一操作事件为点击第一画面的操作,则不在本端响应第一操作事件对应的第一指令。
需要说明的是,当用户需要在投屏目标设备的显示屏上点击第一画面(或第一画面上的某个位置)时,本申请实施例考虑不在本端响应第一操作事件对应的第一指令,从而有利于提高用户的画面的交互操作的处理效率,提升投屏的使用体验。
S2240、获取第一缩放比和第二缩放比。
其中,第一缩放比用于表示第一应用的运行画面的显示大小与目标画面的显示大小之间的缩放比,第二缩放比用于表示第一画面的显示大小与目标画面的显示大小之间的缩放比,目标画面为第一应用的运行画面在投屏目标设备的显示屏上的起始镜像。
S2250、根据第一缩放比、第二缩放比和第一操作事件确定第一操作事件对应的第二指令。
通过上述可知,由于投屏源设备的显示屏与投屏目标设备的显示屏之间可能具有不同的尺寸大小,并且投屏目标设备的显示屏上显示的当前画面与目标画面可以不同,因此在投屏源设备与投屏目标设备建立投屏过程中,为了将投屏目标设备的输入操作适配到投屏源设备,保证投屏目标设备对投屏源设备上应用的当前画面进行操作,以及实现应用的画面的交互操作,本申请实施例需要预先确定第一应用的运行画面的显示大小与目标画面的显示大小之间的缩放比,以及第一画面的显示大小与目标画面的显示大小之间的缩放比。
S2260、向投屏源设备发送第一操作事件对应的第二指令。
其中,第一操作事件对应的第二指令用于指示投屏源设备对第一应用的运行画面执行操作。
S2270、显示第三画面。
其中,第三画面为投屏源设备响应第一操作事件对应的第二指令之后由第一应用的运行画面不同于第一画面的镜像。
可以理解的是,在响应第二操作指令之后,投屏源设备显示刷新、改变或切换后的第一应用的运行画面,并将该刷新、改变或切换后的第一应用的运行画面投屏到投屏目标设备,实现投屏目标设备同步显示画面。
需要说明的是,由于各个实施例的描述都各有侧重,因此图22所述的具体实施例中没有详述的部分,可以参见图5中的具体实施例的相关描述,在此不再赘述。
可以看出,本申请实施例中,投屏目标设备通过显示第一画面,并获取针对第一画面的第一操作事件。其次,若第一操作事件为点击第一画面的操作,则不在本端响应第一操作事件对应的第一指令。再次,获取第一缩放比和第二缩放比,并根据第一缩放比、第二缩放比和第一操作事件确定第一操作事件对应的第二指令。最后,向投屏源设备发送第一操作事件对应的第二指令,并显示第三画面。由于第一画面为投屏源设备上第一应用的运行画面在投屏目标设备的显示屏上的当前镜像,并且第一操作事件对应的第二指令用于指示投屏源设备对第一应用的运行画面执行操作,从而实现画面跨设备显示。另外,由于投屏目标设备需要判断是否在本端响应第一操作事件对应的第一指令,因此投屏目标设备既可能在本端响应,也可能不在本端响应,使得本申请既能对投屏目标设备的显示屏上的投屏画面进行操作,也能通过适配处理对投屏源设备上第一应用的运行画面进行控制操作,从而实现应用的画面跨设备交互控制,提高画面交互操作的处理效率,以及提升投屏的使用体验。
上述主要从方法侧执行过程的角度对本申请实施例的方案进行了介绍。可以理解的是,电子设备为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所提供的实施例描述的各示例的单元及算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。本领域技术人员可以对每个特定的应用使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本申请实施例可以根据上述方法示例对电子设备进行功能单元的划分,例如,可以对应各个功能划分各个功能单元,也可以将两个或两个以上的功能集成在一个处理单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。需要说明的是,本申请实施例中对单元的划分是示意性的,只是一种逻辑功能划分,而实际实现时可以有另外的划分方式。
在采用集成的单元的情况下,图23示出了一种画面跨设备显示装置的功能单元组成框图。画面跨设备显示装置2300应用于投屏目标设备,具体包括:处理单元2320和通信单元2330。处理单元2320用于对投屏目标设备的动作进行控制管理,例如,处理单元2320用于支持投屏目标设备执行图5中的部分或全部步骤,以及用于本文所描述的技术的其它过程。通信单元2330用于支持投屏目标设备与其他设备的通信。画面跨设备显示装置2300还可以包括存储单元2310,用于存储投屏目标设备的程序代码和数据。
其中,处理单元2320可以是处理器或控制器,例如CPU、通用处理器、DSP、ASIC、FPGA、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请实施例所描述的各种示例性的逻辑方框、模块和电路。另外,处理单元2320也可以是实现计算功能的组合,例如包含一个或多个微处理器组合、DSP和微处理器的组合。通信单元2330可以是通信接口、收发器和收发电路等。存储单元2310可以是存储器。当处理单元2320为处理器,通信单元2330为通信接口,存储单元2310为存储器时,本申请实施例所涉及的画面跨设备显示装置2300可以为图24所示的电子设备。
具体的,处理单元2320用于执行如上述方法实施例中由投屏目标设备执行的任一步骤,且在执行诸如发送等数据传输时,可选择的调用通信单元2330来完成相应操作。下面进行详细说明。
处理单元2320用于:显示第一画面,第一画面为投屏源设备上第一应用的运行画面的当前镜像;获取针对第一画面的第一操作事件;根据第一操作事件对第一画面的执行动作以判断是否在本端响应第一操作事件对应的第一指令;若不在本端响应第一操作事件对应的第一指令,则向投屏源设备发送第一操作事件对应的第二指令,第一操作事件对应的第二指令用于指示投屏源设备对第一应用的运行画面执行操作。
在一个可能的示例中,在根据第一操作事件对第一画面的执行动作以判断是否在本端响应第一操作事件对应的第一指令方面,处理单元2320具体用于:若第一操作事件为沿第一方向移动第一画面的操作,则根据第一画面和目标画面判断是否在本端响应第一操作事件对应的第一指令,目标画面为所述投屏源设备针对所述第一应用的运行画面所要投屏的目标镜像。
在一个可能的示例中,在根据第一画面和目标画面判断是否在本端响应第一操作事件对应的第一指令方面,处理单元2320具体用于:若第一画面与目标画面为不相同画面,则根据第一画面与目标画面之间的关系判断是否在本端响应第一操作事件对应的第一指令;或者,若第一画面与目标画面为相同画面,则不在本端响应第一操作事件对应的第一指令。
在一个可能的示例中,在根据第一画面与目标画面之间的关系判断是否在本端响应第一操作事件对应的第一指令方面,处理单元2320具体用于:若第一画面为目标画面放大后的部分画面,则根据第一画面沿第一方向移动是否超出目标画面的边缘来判断是否在本端响应第一操作事件对应的第一指令;或者,若第一画面为目标画面缩小后的全画面,则不在本端响应第一操作事件对应的第一指令。
在一个可能的示例中,在根据第一画面沿第一方向移动是否超出目标画面的边缘来判断是否在本端响应第一操作事件对应的第一指令方面,处理单元2320具体用于:若第一画面沿第一方向移动超出目标画面的边缘,则不在本端响应第一操作事件对应的第一指令;或者,若第一画面沿第一方向移动未超出目标画面的边缘,则在本端响应第一操作事件对应的第一指令。
在一个可能的示例中,在向投屏源设备发送第一操作事件对应的第二指令之前,处理单元2320还用于:根据第一操作事件和预设操作映射关系确定第一操作事件对应的第二指令,预设操作映射关系用于表示针对第一画面的操作与针对第一应用的运行画面的操作之间的映射关系。
在一个可能的示例中,在根据第一画面和目标画面判断是否在本端响应第一操作事件对应的第二指令指令之后,处理单元2320还用于:若在本端响应第一操作事件对应的第一指令,则将第一画面沿第一方向移动以显示第二画面,第二画面为第一应用的运行画面不同于第一画面的镜像。
在一个可能的示例中,在根据第一操作事件对第一画面的执行动作以判断是否在本端响应第一操作事件对应的第一指令方面,处理单元2320具体用于:若第一操作事件对应的第一指令为点击第一画面的操作,则不在本端响应第一操作事件对应的第一指令。
在一个可能的示例中,在向投屏源设备发送第一操作事件对应的第二指令之前,处理单元2320还用于:获取第一缩放比和第二缩放比,第一缩放比用于表示第一应用的运行画面的显示大小与目标画面的显示大小之间的缩放比,第二缩放比用于表示第一画面的显示大小与目标画面的显示大小之间的缩放比,目标画面为投屏源设备针对第一应用的运行画面所要投屏的目标镜像;根据第一缩放比、第二缩放比和第一操作指令确定第一操作事件对应的第二指令。
在一个可能的示例中,在向投屏源设备发送第一操作事件对应的第二指令之后,处理单元2320还用于:显示第三画面,第三画面为投屏源设备响应第一操作事件对应的第二指令之后由第一应用的运行画面不同于第一画面的镜像。
可以看出,本申请实施例中,通过显示第一画面,并获取针对第一画面的第一操作事件。然后,根据第一操作事件对第一画面的执行动作以判断是否在本端响应第一操作事件对应的第一指令。若不在本端响应第一指令,则向投屏源设备发送第一操作事件对应的第二指令。由于第一画面为投屏源设备上第一应用的运行画面在投屏目标设备的显示屏上的当前镜像,并且第一操作事件对应的第二指令用于指示投屏源设备对第一应用的运行画面执行操作,从而实现画面跨设备显示。另外,由于投屏目标设备需要判断是否在本端响应第一操作事件对应的第一指令,因此投屏目标设备既可能在本端响应,也可能不在本端响应,使得本申请既能对投屏目标设备的显示屏上的投屏画面进行操作,也能通过适配处理对投屏源设备上第一应用的运行画面进行控制操作,从而实现应用的画面跨设备交互控制,提高画面交互操作的处理效率,以及提升投屏的使用体验。
下面介绍本申请实施例提供的又一种电子设备2400的结构示意图,如图24所示。其中,电子设备2400包括处理器2410、存储器2420、通信接口2430和至少一个用于连接处理器2410、存储器2420、通信接口2430的通信总线。
处理器2410可以是一个或多个中央处理器CPU。在处理器2410是一个CPU的情况下,该CPU可以是单核CPU,也可以是多核CPU。存储器2420包括但不限于是随机存储记忆体(Random Access Memory,RAM)、只读存储器(Read-Only Memory,ROM)、可擦除可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)或便携式只读存储器(Compact Disc Read-Only Memory,CD-ROM),并且存储器2220用于相关指令及数据。通信接口2230用于接收和发送数据。
电子设备2400中的处理器2410用于读取存储器2420中存储的一个或多个程序2421用于执行以下步骤:显示第一画面,第一画面为投屏源设备上第一应用的运行画面的当前镜像;获取针对第一画面的第一操作事件;根据第一操作事件对第一画面的执行动作以判断是否在本端响应第一操作事件对应的第一指令;若不在本端响应第一操作事件对应的第一指令,则向投屏源设备发送第一操作事件对应的第二指令,第一操作事件对应的第二指令用于指示投屏源设备对第一应用的运行画面执行操作。
需要说明的是,电子设备2400执行的各个操作的具体实现可以参见上述图5所示的方法实施例的相应描述,在此不再赘述。
可以看出,本申请实施例中,通过显示第一画面,并获取针对第一画面的第一操作事件。然后,根据第一操作事件对第一画面的执行动作以判断是否在本端响应第一操作事件对应的第一指令。若不在本端响应第一指令,则向投屏源设备发送第一操作事件对应的第二指令。由于第一画面为投屏源设备上第一应用的运行画面在投屏目标设备的显示屏上的当前镜像,并且第一操作事件对应的第二指令用于指示投屏源设备对第一应用的运行画面执行操作,从而实现画面跨设备显示。另外,由于投屏目标设备需要判断是否在本端响应第一操作事件对应的第一指令,因此投屏目标设备既可能在本端响应,也可能不在本端响应,使得本申请既能对投屏目标设备的显示屏上的投屏画面进行操作,也能通过适配处理对投屏源设备上第一应用的运行画面进行控制操作,从而实现应用的画面跨设备交互控制,提高画面交互操作的处理效率,以及提升投屏的使用体验。
本申请实施例还提供一种计算机可读存储介质,其中,该计算机可读存储介质存储用于电子数据交换的计算机程序,该计算机程序可操作来使得计算机执行如上述方法实施例中记载的任一方法的部分或全部步骤。
本申请实施例还提供一种计算机程序产品,其中,该计算机程序产品包括计算机程序,该计算机程序可操作来使计算机执行如上述方法实施例中记载的任一方法的部分或全部步骤。该计算机程序产品可以为一个软件安装包。
需要说明的是,对于上述的各方法实施例,为了简单描述,将其都表述为一系列的动作组合。本领域技术人员应该知悉,本申请不受所描述的动作顺序的限制,因为本申请实施例中的某些步骤可以采用其他顺序或者同时进行。此外,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请实施例所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,本领域技术人员应该知悉,所描述的装置可以通过其它的方式实现。可以理解的是,上述描述的装置实施例仅仅是示意性的。例如,上述单元的划分只是一种逻辑功能划分,实际中可以有另外的划分方式。也就是说,多个单元或组件可以结合或集成到另一个软件,以及一些特征可以忽略或不执行。此外,所显示或讨论的相互之间的耦合、直接耦合或通信连接等方式可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电性或其它的形式。
上述单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。可以理解的是,本申请的技术方案(该技术方案对现有技术做出贡献的部分或者该技术方案的全部或部分)可以通过计算机软件产品的形式体现。该计算机软件产品存储在一个存储器中,包括若干指令用以使得计算机设备(个人计算机、服务器或者网络设备等)执行本申请实施例的全部或部分步骤。另外,上述计算机可读取存储介质可以存储在U盘、ROM、RAM、移动硬盘、磁碟或者光盘等各种存储器中。
以上对本申请实施例进行了具体介绍,本领域技术人员应该知悉,本申请实施例只是用于帮助理解本申请的技术方案的核心思想,因此本申请实施例在具体实施方式和应用范围上均会有改变之处。至此,本说明书中记载的内容不应理解为对本申请的限制。
Claims (12)
1.一种画面跨设备显示方法,其特征在于,应用于投屏目标设备;所述方法包括:
显示第一画面,所述第一画面为投屏源设备上第一应用的运行画面的当前镜像;
获取针对所述第一画面的第一操作事件;
根据所述第一操作事件对所述第一画面的执行动作以判断是否在本端响应所述第一操作事件对应的第一指令;
若不在本端响应所述第一操作事件对应的第一指令,则向所述投屏源设备发送所述第一操作事件对应的第二指令,所述第一操作事件对应的第二指令用于指示所述投屏源设备对所述第一应用的运行画面执行操作;
其中,所述根据所述第一操作事件对所述第一画面的执行动作以判断是否在本端响应所述第一操作事件对应的第一指令,包括:
若所述第一操作事件为沿第一方向移动所述第一画面的操作,则根据所述第一画面和目标画面之间是否为相同画面来确定是在本端还是不在本端响应所述第一操作事件对应的第一指令,所述目标画面为所述投屏源设备针对所述第一应用的运行画面所要投屏的目标镜像。
2.根据权利要求1所述的方法,其特征在于,所述根据所述第一画面和目标画面之间是否为相同画面来确定是在本端还是不在本端响应所述第一操作事件对应的第一指令,包括:
若所述第一画面与所述目标画面为不相同画面,则根据所述第一画面与所述目标画面之间的放大或缩小关系来确定是在本端还是不在本端响应所述第一操作事件对应的第一指令;或者,
若所述第一画面与所述目标画面为相同画面,则不在本端响应所述第一操作事件对应的第一指令。
3.根据权利要求2所述的方法,其特征在于,所述根据所述第一画面与所述目标画面之间的放大或缩小关系来确定是在本端还是不在本端响应所述第一操作事件对应的第一指令,包括:
若所述第一画面为所述目标画面放大后的部分画面,则根据所述第一画面沿所述第一方向移动是否超出所述目标画面的边缘来确定是在本端还是不在本端响应所述第一操作事件对应的第一指令;或者,
若所述第一画面为所述目标画面缩小后的全画面,则不在本端响应所述第一操作事件对应的第一指令。
4.根据权利要求3所述的方法,其特征在于,所述根据所述第一画面沿所述第一方向移动是否超出所述目标画面的边缘来确定是在本端还是不在本端响应所述第一操作事件对应的第一指令,包括:
若所述第一画面沿所述第一方向移动超出所述目标画面的边缘,则不在本端响应所述第一操作事件对应的第一指令;或者,
若所述第一画面沿所述第一方向移动未超出所述目标画面的边缘,则在本端响应所述第一操作事件对应的第一指令。
5.根据权利要求1所述的方法,其特征在于,在所述向所述投屏源设备发送所述第一操作事件对应的第二指令之前,所述方法还包括:
根据所述第一操作事件和预设操作映射关系确定所述第一操作事件对应的第二指令,所述预设操作映射关系用于表示针对所述第一画面的操作与针对所述第一应用的运行画面的操作之间的映射关系。
6.根据权利要求1所述的方法,其特征在于,在所述根据所述第一画面和目标画面判断是否在本端响应所述第一操作事件对应的第一指令之后,所述方法还包括:
若在本端响应所述第一操作事件对应的第一指令,则将所述第一画面沿所述第一方向移动以显示第二画面,所述第二画面为所述第一应用的运行画面不同于所述第一画面的镜像。
7.根据权利要求1所述的方法,其特征在于,所述根据所述第一操作事件对所述第一画面的执行动作以判断是否在本端响应所述第一操作事件对应的第一指令,包括:
若所述第一操作事件为点击所述第一画面的操作,则不在本端响应所述第一操作事件对应的第一指令。
8.根据权利要求7所述的方法,其特征在于,在所述向所述投屏源设备发送所述第一操作事件对应的第二指令之前,所述方法还包括:
获取第一缩放比和第二缩放比,所述第一缩放比用于表示所述第一应用的运行画面的显示大小与目标画面的显示大小之间的缩放比,所述第二缩放比用于表示所述第一画面的显示大小与所述目标画面的显示大小之间的缩放比,所述目标画面为所述投屏源设备针对所述第一应用的运行画面所要投屏的目标镜像;
根据所述第一缩放比、所述第二缩放比和所述第一操作事件确定所述第一操作事件对应的第二指令第一应用的运行画面。
9.根据权利要求1-8任一项所述的方法,其特征在于,在所述向所述投屏源设备发送所述第一操作事件对应的第二指令之后,所述方法还包括:
显示第三画面,所述第三画面为所述投屏源设备响应所述第一操作事件对应的第二指令之后由所述第一应用的运行画面不同于所述第一画面的镜像。
10.一种画面跨设备显示装置,其特征在于,应用于投屏目标设备;所述装置包括处理单元和通信单元,所述处理单元用于:
显示第一画面,所述第一画面为投屏源设备上第一应用的运行画面的当前镜像;
获取针对所述第一画面的第一操作事件;
根据所述第一操作事件对所述第一画面的执行动作以判断是否在本端响应所述第一操作事件对应的第一指令;
若不在本端响应所述第一操作事件对应的第一指令,则通过所述通信单元向所述投屏源设备发送所述第一操作事件对应的第二指令,所述第一操作事件对应的第二指令用于指示所述投屏源设备对所述第一应用的运行画面执行操作;
其中,在所述根据所述第一操作事件对所述第一画面的执行动作以判断是否在本端响应所述第一操作事件对应的第一指令方面,所述处理单元用于:
若所述第一操作事件为沿第一方向移动所述第一画面的操作,则根据所述第一画面和目标画面之间是否为相同画面来确定是在本端还是不在本端响应所述第一操作事件对应的第一指令,所述目标画面为所述投屏源设备针对所述第一应用的运行画面所要投屏的目标镜像。
11.一种电子设备,其特征在于,所述电子设备为投屏目标设备,包括处理器、存储器和通信接口,所述存储器存储有一个或多个程序,并且所述一个或多个程序由所述处理器执行,所述一个或多个程序包括用于执行如权利要求1-9任一项所述的方法中的步骤的指令。
12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储用于电子数据交换的计算机程序,其中,所述计算机程序可操作来使得计算机执行如权利要求1-9中任一项所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011284014.2A CN112394895B (zh) | 2020-11-16 | 2020-11-16 | 画面跨设备显示方法与装置、电子设备 |
PCT/CN2021/121014 WO2022100305A1 (zh) | 2020-11-16 | 2021-09-27 | 画面跨设备显示方法与装置、电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011284014.2A CN112394895B (zh) | 2020-11-16 | 2020-11-16 | 画面跨设备显示方法与装置、电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112394895A CN112394895A (zh) | 2021-02-23 |
CN112394895B true CN112394895B (zh) | 2023-10-13 |
Family
ID=74600911
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011284014.2A Active CN112394895B (zh) | 2020-11-16 | 2020-11-16 | 画面跨设备显示方法与装置、电子设备 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN112394895B (zh) |
WO (1) | WO2022100305A1 (zh) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112394895B (zh) * | 2020-11-16 | 2023-10-13 | Oppo广东移动通信有限公司 | 画面跨设备显示方法与装置、电子设备 |
CN115253285A (zh) * | 2021-04-30 | 2022-11-01 | 华为技术有限公司 | 显示方法及相关装置 |
CN115460445B (zh) * | 2021-06-09 | 2024-03-22 | 荣耀终端有限公司 | 电子设备的投屏方法和电子设备 |
CN115700463A (zh) * | 2021-07-30 | 2023-02-07 | 华为技术有限公司 | 一种投屏方法、***及电子设备 |
CN113891127A (zh) * | 2021-08-31 | 2022-01-04 | 维沃移动通信有限公司 | 视频编辑方法、装置及电子设备 |
CN115756268A (zh) * | 2021-09-03 | 2023-03-07 | 华为技术有限公司 | 跨设备交互的方法、装置、投屏***及终端 |
CN114257631A (zh) * | 2021-12-20 | 2022-03-29 | Oppo广东移动通信有限公司 | 数据交互方法、装置、设备及存储介质 |
CN114579034A (zh) * | 2022-03-02 | 2022-06-03 | 北京字节跳动网络技术有限公司 | 一种信息交互方法、装置、显示设备及存储介质 |
CN115729502B (zh) * | 2022-03-23 | 2024-02-27 | 博泰车联网(南京)有限公司 | 投屏端和显示端的响应方法、电子设备及存储介质 |
CN115174988B (zh) * | 2022-06-24 | 2024-04-30 | 长沙联远电子科技有限公司 | 一种基于dlna的音视频投屏控制方法 |
CN116719468A (zh) * | 2022-09-02 | 2023-09-08 | 荣耀终端有限公司 | 交互事件的处理方法及装置 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104811639A (zh) * | 2015-04-28 | 2015-07-29 | 联想(北京)有限公司 | 信息处理方法及电子设备 |
CN107483994A (zh) * | 2017-07-31 | 2017-12-15 | 广州指观网络科技有限公司 | 一种反向投屏控制***及方法 |
CN110248226A (zh) * | 2019-07-16 | 2019-09-17 | 广州视源电子科技股份有限公司 | 信息的投屏方法、装置、***、存储介质和处理器 |
CN110377250A (zh) * | 2019-06-05 | 2019-10-25 | 华为技术有限公司 | 一种投屏场景下的触控方法及电子设备 |
CN111221491A (zh) * | 2020-01-09 | 2020-06-02 | Oppo(重庆)智能科技有限公司 | 交互控制方法及装置、电子设备、存储介质 |
CN111562896A (zh) * | 2020-04-26 | 2020-08-21 | 维沃移动通信有限公司 | 投屏方法及电子设备 |
CN111918119A (zh) * | 2020-07-24 | 2020-11-10 | 深圳乐播科技有限公司 | Ios***数据的投屏方法、装置、设备及存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112394895B (zh) * | 2020-11-16 | 2023-10-13 | Oppo广东移动通信有限公司 | 画面跨设备显示方法与装置、电子设备 |
-
2020
- 2020-11-16 CN CN202011284014.2A patent/CN112394895B/zh active Active
-
2021
- 2021-09-27 WO PCT/CN2021/121014 patent/WO2022100305A1/zh active Application Filing
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104811639A (zh) * | 2015-04-28 | 2015-07-29 | 联想(北京)有限公司 | 信息处理方法及电子设备 |
CN107483994A (zh) * | 2017-07-31 | 2017-12-15 | 广州指观网络科技有限公司 | 一种反向投屏控制***及方法 |
CN110377250A (zh) * | 2019-06-05 | 2019-10-25 | 华为技术有限公司 | 一种投屏场景下的触控方法及电子设备 |
CN110248226A (zh) * | 2019-07-16 | 2019-09-17 | 广州视源电子科技股份有限公司 | 信息的投屏方法、装置、***、存储介质和处理器 |
CN111221491A (zh) * | 2020-01-09 | 2020-06-02 | Oppo(重庆)智能科技有限公司 | 交互控制方法及装置、电子设备、存储介质 |
CN111562896A (zh) * | 2020-04-26 | 2020-08-21 | 维沃移动通信有限公司 | 投屏方法及电子设备 |
CN111918119A (zh) * | 2020-07-24 | 2020-11-10 | 深圳乐播科技有限公司 | Ios***数据的投屏方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2022100305A1 (zh) | 2022-05-19 |
CN112394895A (zh) | 2021-02-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112394895B (zh) | 画面跨设备显示方法与装置、电子设备 | |
US20240168624A1 (en) | Screen capture method and related device | |
CN112291764B (zh) | 一种内容接续*** | |
WO2021078284A1 (zh) | 一种内容接续方法及电子设备 | |
CN112398855B (zh) | 应用内容跨设备流转方法与装置、电子设备 | |
CN112558825A (zh) | 一种信息处理方法及电子设备 | |
EP4060475A1 (en) | Multi-screen cooperation method and system, and electronic device | |
CN114040242B (zh) | 投屏方法、电子设备和存储介质 | |
WO2022121775A1 (zh) | 一种投屏方法及设备 | |
WO2022105445A1 (zh) | 基于浏览器的应用投屏方法及相关装置 | |
CN112527174B (zh) | 一种信息处理方法及电子设备 | |
CN112527222A (zh) | 一种信息处理方法及电子设备 | |
WO2023030099A1 (zh) | 跨设备交互的方法、装置、投屏***及终端 | |
CN115550597A (zh) | 一种拍摄方法、***及电子设备 | |
WO2022135157A1 (zh) | 页面显示的方法、装置、电子设备以及可读存储介质 | |
WO2022042769A2 (zh) | 多屏交互的***、方法、装置和介质 | |
CN115016697A (zh) | 投屏方法、计算机设备、可读存储介质和程序产品 | |
JP2023534182A (ja) | ファイルを開く方法およびデバイス | |
CN109714628B (zh) | 播放音视频的方法、装置、设备、存储介质及*** | |
WO2023005711A1 (zh) | 一种服务的推荐方法及电子设备 | |
CN115086888B (zh) | 消息通知方法与装置、电子设备 | |
CN113805825B (zh) | 设备之间的数据通信方法、设备及可读存储介质 | |
CN115686401A (zh) | 一种投屏方法、电子设备及*** | |
WO2024022307A1 (zh) | 一种投屏方法及电子设备 | |
WO2022188632A1 (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 |