提供协作式交互的系统和方法背景
诸如膝上型计算机、台式计算机等之类的计算设备可被本地地投射到较大的显示
器(诸如投影仪、液晶显示器(LCD)等)以允许在源计算设备上生成的内容能够在例如演示、
会议等期间被更多人观看。这一类型的投射观看在大量领域中都是有用的,诸如工程、市场
营销、商业、教育等。线缆(诸如视频图像阵列(VGA)线缆)可被用于提供源计算设备和投射
设备之间的有线连接。然而,将计算设备和投射设备以这种方式连接可能是低效且耗时的。
最近,无线连接已被用于将源计算设备链接到投射设备以简化连接过程。虽然这种类型的
连接与有线连接相比可在更短的时间里建立,但是以这种方式无线连接设备来实现投射仍
然具有若干项缺陷。例如,显示在投射设备上的内容仅能够经由源计算设备来操纵。这可能
是不方便的,例如当用户正站在与源计算设备相比更靠近显示器时,或者当数位用户想要
与所显示的内容交互时。
概述
提供了一种用于在接收方计算设备和发送方计算设备之间提供协作式交互的方
法。该方法包括:在接收方计算设备处,建立与发送方计算设备的本地对等无线连接,经由
所述本地对等无线连接从所述发送方计算设备接收在所述发送方计算设备上执行的远程
执行的应用程序的图形用户界面(GUI)的数据,在与所述接收方计算设备相关联的显示器
上显示所述GUI,从与所述接收方计算设备相关联的输入设备接收指示与所述GUI的用户交
互的用户输入,将所述用户输入发送给所述发送方计算设备,从所述发送方计算设备接收
指示由所述发送方计算设备基于所述用户输入所生成的所述GUI的经更新的状态的数据,
以及在与所述接收方计算设备相关联的显示器上显示所述GUI的经更新的状态。
提供本概述以便以简化的形式介绍以下在详细描述中进一步描述的一些概念。本
概述并不旨在标识所要求保护主题的关键特征或必要特征,也不旨在用于限制所要求保护
主题的范围。而且,所要求保护的主题不限于解决该公开的任一部分中所注的任何或全部
缺点的实现方式。
附图简述
图1是示例计算系统的示意性描述;
图2是示例接收方设备的图示;
图3-4解说了一种用于在发送方计算设备和接收方计算设备之间提供协作式交
互的方法的一个示例的流程图;
图5-6是显示在发送方计算设备上的图形用户界面(GUI)的图示;以及
图7-8是显示在接收方计算设备上的GUI的图示。
详细描述
本文中描述了一种发送方计算设备和接收方计算设备之间的本地对等无线连接,
其使得接收方计算设备能够向发送方计算设备提供扩展的显示以及交互能力。具体地,在
一个示例中,发送方计算设备被配置成经由对等无线连接将经由应用程序本地生成的图形
数据发送给接收方计算设备供呈现在与接收方计算设备相关联的显示器上。相应地,用户
可通过对接收方计算设备的输入设备(诸如触摸屏)的操纵与呈现在接收方计算设备上的
图形数据交互。随后,对应于输入设备交互的数据被发送回发送方计算设备以供在发送方
计算设备上本地处理。响应于对数据的本地处理,图形用户界面(GUI)的经更新的状态被从
发送方计算设备发送给接收方计算设备。GUI的经更新的状态反映了经由发送方计算设备
基于本地处理的输入设备数据而实施的命令或其它程序功能。以此方式,接收方计算设备
可充当远程显示器(例如,投射设备),同时通过在发送方计算设备上远程处理的图形数据
来提供交互能力(例如,触摸输入、指示笔输入等)。将会理解,这种类型的系统可被用于演
示形式或其它协作式设置,其中多个个人在社交环境下交互。在这类环境下,系统可通过接
收方计算设备(例如,投射设备)的扩展的交互能力来增强个人之间的社交交互。
图1解说了包括发送方计算设备12和接收方计算设备14的计算系统10。将会理解,
发送方计算设备可以是一种合适的计算设备,包括但不限于,台式计算设备、膝上型计算
机、便携式电子设备、平板计算设备、媒体播放器、移动电话等。接收方计算设备可以是一种
例如具有较大显示器的计算设备。具体来说,在一个示例中,接收方计算设备可以是一种具
有应用程序处理能力的大尺寸(例如,大于40英寸)屏幕显示器,该显示器可例如被安装在
教室、会议室、或办公室的墙上以用于群交互。然而,已设想了众多不同类型的计算设备。接
收方计算设备的一个示例性实施例在本文中结合图2来更详细地描述。
如所示出的,发送方计算设备12包括处理器16和存储器18。同样地,接收方计算设
备14包括处理器20和存储器22。存储器18和存储器22包括存储于其上的代码,该代码可由
相关联的处理器执行以实施本文中描述的方法、技术、例程、以及其它功能。
发送方计算设备12还包括显示器24(例如液晶显示器(LCD)、有源矩阵有机发光
(AMOLED)、阴极射线管(CRT)等)、输入设备26(例如,鼠标、键盘、触摸板、跟踪板、触敏显示
器、以上的组合等等)、以及无线通信设备28(例如,蓝牙设备、Wi-Fi设备、近场通信设备、红
外通信、无线调制解调器、以上的组合等)。将会理解,Wi-Fi设备可被配置成支持Wi-Fi直接
连接,Wi-Fi直接连接允许计算设备在需要时在没有无线接入点的情况下通信。因此,在一
些示例中,Wi-Fi设备可被称为Wi-Fi直接设备。
发送方计算设备12还可包括支持与发送方计算设备的有线连接的连接端口60。以
此方式,发送方计算设备12可在需要时经由有线连接发送/接收电子数据。已设想了众多合
适的连接端口或连接端口的组合。例如,连接端口60可以是通用串行总线(USB)端口、以太
网端口、火线、视频图形阵列(VGA)、以上的组合等等。发送方计算设备12还可包括被配置成
投射和/或接收音频信号的音频设备70。因此,音频设备70可包括扬声器、话筒等中的一个
或多个。将会理解,在一些示例中,显示器24、输入设备26、无线通信设备28、连接端口60、
和/或音频设备70与处理器16和存储器18以及彼此进行电子通信。
另外,在一些示例中,发送方计算设备12和接收方计算设备14可共处一处。例如,
计算设备(12和14)可位于同一房间、楼宇、建筑等中。发送方计算设备和接收方计算设备之
间的距离可经由被用于提供无线连接的无线通信设备的特性来确定。将会理解,可能期望
的是计算设备放置在彼此附近以允许用户能够在需要时通过无线局域网(WLAN)与双方计
算设备交互。然而,在其它示例中,发送方和接收方计算设备可能被放置在远程位置并经由
更宽的网络(诸如广域网(WAN)连接。
接收方计算设备14包括含有传感器32(例如,触摸传感器)的交互式显示器30(例
如,交互式触敏显示器)、输入设备34(例如,鼠标、键盘、跟踪板、触摸板、以上的组合等等)、
以及无线通信设备36(例如,蓝牙设备、Wi-Fi设备、近场通信设备、无线调制解调器、以上的
组合等)。在一个示例中,交互式显示器30可具有比显示器24更大的观看面积。以此方式,交
互式显示器30在需要时可容易地被大量的人观看。因此,接收方计算设备14可在需要时被
用于会议、演示、讲座等。此外,在一些示例中,传感器32可以是电容式传感器(例如,电容式
触摸传感器),该传感器被配置成检测因用户实行的触摸或指示笔输入导致的电气变化。在
一个示例中,指示笔输入可以是墨水输入。然而,其它类型的触摸传感器已被设想,诸如光
触摸传感器、电阻式触摸传感器等。接收方计算设备14还可包括支持有线连接的连接端口
62。以此方式,接收方计算设备14可在需要时经由有线连接发送/接收电子数据。已设想了
众多合适的连接端口或连接端口的组合。例如,连接端口62可以是通用串行总线(USB)端
口、以太网端口、火线、视频图形阵列(VGA)、或以上的组合。接收方计算设备14还可包括被
配置成投射和/或接收音频信号的音频设备72。因此,音频设备72可包括扬声器、话筒等中
的一个或多个。将会理解,在一些示例中,交互式显示器30、输入设备34、无线通信设备36、
和/或音频设备72与处理器20和存储器22以及彼此进行电子通信。可替代地采用其它触摸
感测技术,诸如使用受抑全内反射或像素内相机技术的光触摸。
无线通信设备(28和36)被配置成允许计算设备(12和14)经由本地对等连接(例
如,本地双向对等无线连接)无线地连接。因此,发送方计算设备12和接收方计算设备14可
经由本地对等无线连接38无线通信。本地对等无线连接38可包括蓝牙连接和/或Wi-Fi连接
(例如,Wi-Fi直接连接)。蓝牙连接可被用于广播、发现、以及建立各设备间的连接,这要求
相对少量的数据传输,而Wi-Fi连接可被用于在各设备间传输大的文件。在一个示例中,计
算设备可仅经由本地对等无线连接电子地连接,并且可不共享任何可通过其在各设备间传
输数据的其它网络连接。在一个示例中,计算设备可仅经由对等无线连接电子地连接,并且
可不共享任何可通过其在各设备间传输的其它网络连接。此外,在一个示例中,计算设备可
经由无线连接(即本地对等无线)在本地网(例如局域网(LAN))上电子地连接,并且它们可
都连接到同一无线接入点。再又一些其它示例中,计算设备可同时通过有线和无线连接连
接。因此,将会理解,发送方计算设备12和接收方计算设备14可在需要时经由有线连接64链
接。有线连接64可包括被配置成连接到发送方计算设备12的连接端口60和接收方计算设备
14的连接端口62的一个或多个电缆、线缆等。此外,在又一示例中,局域网可不被用于连接
各计算设备,并且在发送方计算设备12和接收方计算设备14之间的通信路径上可不存在任
何中间设备(例如,计算设备、服务器等)。因此,发送方计算设备12可与接收方计算设备14
经由本地对等无线连接、使用自组织点对点连接而不是共享的计算机网络来直接无线通
信。
将会理解,计算系统10可进一步包括多个发送方计算设备40和接收方计算设备
42。多个发送方计算设备40和接收方计算设备42可分别包括与发送方计算设备12和接收方
计算设备14类似的组件。然而,将会理解,设备中的具体组件的类型、大小等可能每个设备
都不同。另外,多个发送方计算设备40可经由本地对等无线连接38与多个接收方计算设备
42无线通信。
发送方应用程序50可存储在发送方计算设备12的存储器18中。发送方应用程序50
可被配置成提供与接收方计算设备14的交互式无线连接,如本文中更详细描述的。同样,接
收方应用程序52可存储在接收方计算设备14的存储器22中。接收方应用程序52可被配置成
提供与发送方计算设备14的交互式无线连接,如本文中更详细描述的。因此,发送方应用程
序50和接收方应用程序52可一起工作以提供各计算设备之间的对等无线连接(例如,本地
双向对等无线连接)。然而,在其它示例中,替代的程序元件可被用于实现这一功能。发送方
计算设备12还可被配置成本地地执行另一应用程序66。将会理解,应用程序66可被称为第
二应用程序。应用程序66可以是电子表格应用程序、文字处理应用程序、绘画应用程序、web
浏览器应用程序、电子邮件应用程序等。将会理解,在一个示例中,对应于应用程序66的图
形可被呈现在对应于发送方应用程序50的GUI内。然而,已设想了其它图形配置。同样,接收
方计算设备12也可被配置成本地地执行应用程序68。应用程序68可以是图形编辑应用程
序、白板应用程序、电子表格应用程序、文字处理应用程序、视频编辑应用程序、绘画应用程
序等。在一个示例中,应用程序66可不同于应用程序68。另外,将会理解,在一个示例中,对
应于应用程序68的图形可被呈现在对应于接收方应用程序52的GUI内。
以上所述的应用程序可经由对应的计算设备中的对应的处理器和存储器来执行。
此外,应用程序可在由存储器中存储的操作系统所提供的台式环境的上下文中执行。然而,
在其它示例中,应用程序可以经由其它程序框架来提供。
图2示出了示例接收方计算设备200。接收方计算设备200可类似于图1中示出的接
收方计算设备14。因此,接收方计算设备200可包括图1中示出的接收方计算设备14中的存
储器和处理器以及其它组件。具体来说,接收方计算设备可以是根据本公开的示例的大尺
寸多点触控计算设备200。例如,接收方计算设备200可具有大于1米的对角线尺寸。在其它
特别大尺寸示例中,该对角线尺寸可以为55英寸或更大。具体来说,在一个示例中,接收方
计算设备可具有比其无线连接到的发送方计算设备更大的显示器。接收方计算设备200可
被配置成感测多个触摸输入源,诸如由用户的手指202或由用户操纵的指示笔204所施加的
触摸输入。将会理解,在同时或重叠的时间间隔实施的多个输入(例如,触摸和/或墨水输
入)可经由接收方计算设备200被感测。因此,接收方计算设备200可包括如之前所讨论的触
摸传感器,诸如电容式触摸传感器。
接收方计算设备200可被连接到图像源S,诸如外部计算机或机载处理器。图像源S
可接收来自接收方计算设备200的多点触摸输入、处理该多点触摸输入、并作为响应产生合
适的图形输出206。接收方计算设备200可包括触敏显示器208(例如,电容式触敏显示器)以
实现多点触摸感测功能。
现在转至图3-4,解说了一种用于在接收方计算设备和发送方计算设备之间提供
协作式交互的方法300。方法300可使用以上所描述的系统和设备的硬件和软件组件来实
现。_具体来说,该方法可经由发送方计算设备12和接收方计算设备14实现为存储在存储器
中的可由处理器执行的代码。具体地,在一个示例中,方法300可经由发送方应用程序50和
接收方应用程序52来实现。在这样的示例中,被指示为经由发送方计算设备实现的步骤经
由发送方应用程序来实现,而被指示为经由接收方计算设备实现的步骤经由接收方应用程
序来实现。然而,在替代实施例中,方法300可使用合适的硬件和软件组件来实现。
如图3中所示,方法300包括,在302,在发送方计算设备处,呈现设备发现图形用户
界面(GUI),该GUI包括多个被标识的接收方计算设备的列表,其中包括该接收方计算设备。
在一个示例中,该列表中的多个被标识的接收方计算设备是经由无线连接标识的。因此,发
送方计算设备可被配置成与接收方计算设备无线通信。此外,在一个示例中,该列表中的多
个被标识的接收方计算设备可基于发送方计算设备与接收方计算设备之间的距离来标识。
此外,在又一示例中,这些距离是基于Wi-Fi通信、蓝牙通信、以及近场通信(NFC)中的一个
或多个来确定的。在又一示例中,该列表中的多个被标识的接收方计算设备中的每一个的
相对位置是基于接收方计算设备和发送方计算设备之间的双向通信的频率和/或接收方计
算设备和发送方计算设备之间的双向通信的日期和时间(例如,新近程度)来确定的。具体
地,在一个示例中,频率和新近程度可在确定显示被标识的接收方计算设备的顺序的算法
中被加权。以此方式,用户更可能选择的接收方计算设备可被呈现在它们可被更容易地在
显示器上看到的位置。然而,已设想了众多设备发现GUI配置。在另一示例中,列表包括与多
个被标识的接收方计算设备相关联的缩略图(即预览图像)。例如,接收方计算设备可在被
标识的接收方计算设备的列表中被表示为缩略图。缩略图是图片、图像、和/或图形的缩减
尺寸的版本。
接着,在303,该方法包括,在输入设备处,通过与发送方计算设备相关联的输入设
备来将选择输入提供给发送方计算设备。选择输入是对包括在多个被标识的接收方计算设
备的列表中的某接收方计算设备的选择。输入设备可以是鼠标、触摸板、跟踪板、键盘、触摸
屏、话筒、相机、以上的组合等,并因此该选择输入可以是经由输入设备生成并传输给计算
设备的数据。例如,选择输入可包括在指针靠近该列表中的被标识的接收方计算设备的图
形表示中的一个时按下鼠标按钮。因此,该选择输入包括指示对包括在多个被标识的接收
方计算设备的列表中的某接收方计算设备的选择的数据。将会理解,输入设备可经由有线
和/或无线连接连接到发送方计算设备。例如,USB和/或蓝牙连接可被用于将输入设备连接
到发送方计算设备。然而,在其它示例中,输入设备可被集成在发送方计算设备中。因此,选
择输入可被内部地提供(例如传输)给发送方计算设备的处理系统。
接着,在304,该方法包括,在发送方计算设备处,从与发送方计算设备相关联的输
入设备接收对于包括在多个被标识的接收方计算设备的列表中的某接收方计算设备的选
择输入。
在306,该方法包括,在发送方计算设备处,响应于接收到对接收方计算设备的选
择输入,隐藏设备发现GUI并显示连接条。通过这种方式,该界面可被隐藏以为GUI中的其他
图形提供附加空间。
接着,在308,该方法包括在接收方计算设备处建立与发送方计算设备的本地对等
无线连接。在一个示例中,本地对等无线连接是Wi-Fi连接、蓝牙连接、或Wi-Fi直接连接。此
外,在一个示例中,发送方计算设备可发起建立本地对等连接。
在309,该方法包括,在发送方计算设备处,响应于接收到选择输入,将在发送方计
算设备上执行的远程执行的应用程序的GUI的数据发送给接收方计算设备。
在310,该方法包括,在接收方计算设备处,经由本地对等无线连接从发送方计算
设备接收在发送方计算设备上执行的远程执行的应用程序的GUI的数据。
在一些实施例中,发送方计算设备和接收方计算设备之间的对等无线连接可支持
音频传输。因此,在一些实施例中,该方法可包括,在311,响应于在发送方计算设备和接收
方计算设备之间建立本地对等连接,将与GUI相关联的音频数据发送给接收方计算设备,并
且在312,在接收方计算设备处接收来自发送方计算设备的音频数据并经由音频设备投射
该音频数据。将会理解,投射音频数据包括将音频信号发送给扬声器。以此方式,音频数据
可在各计算设备之间传输以进一步增强协作交互。然而,在其它示例中,音频传输可能不被
接收方计算设备所支持。
现在转至图4,在314,该方法包括,在接收方计算设备处,在与接收方计算设备相
关联的显示器(例如,交互式显示器)上显示GUI。在一个示例中,GUI被显示在显示器(例如,
交互式触敏显示器)上的窗口内,该窗口与在接收方计算设备上本地执行的应用程序相关
联。在一个示例中,当GUI被显示在接收方计算设备上时,其它发送方计算设备可被禁止向
接收方计算设备发送供显示的GUI。具体地,在一个示例中,显示GUI可能替换为另一发送方
计算设备的GUI。以此方式,发送方计算设备可打断第二发送方计算设备与接收方计算设备
之间的另一会话。然而,在其它示例中,这种类型的显示打断可被禁止。此外,在又一些其它
示例中,多个发送方计算设备可被准许将GUI发送给接收方计算设备供显示。以此方式,多
个用户可同时地将内容同时呈现在显示器上,从而促进许多个用户之间的协作式交互。
在315,该方法包括,在与接收方计算设备相关联的输入设备处,将用户输入提供
给接收方计算设备。在一个示例中,输入设备是与接收方计算设备相关联的触敏显示器的
触摸传感器,该触摸传感器被配置成感测用户的手指或指示笔的触摸。在这样的示例中,用
户输入是对应于所感测到的用户的手指的触摸的触摸输入或者对应于所感测到的指示笔
的触摸的墨水输入。然而,在其它示例中,输入设备可以是触摸板、鼠标、键盘等。
接着,在316,该方法包括,在接收方计算设备处,从与接收方计算设备相关联的输
入设备接收指示与GUI的用户交互的用户输入。
接着,在318,该方法包括,在接收方计算设备处,将用户输入发送给发送方计算设
备。在319,该方法包括,在发送方计算设备处,接收用户输入。
在320,该方法包括,在发送方计算设备处,响应于接收到用户输入,基于该用户输
入实施应用程序动作(例如,命令)。因此,将会理解,应用程序动作可以在应用程序(诸如图
1中示出的应用程序66)中实施。动作可以是任何合适的动作,并且作为实例,可包括在幻灯
片上绘画、更改幻灯片、更改单元格中的字母数字数据、驱动图形上的滑动条等。以此方式,
接收方计算设备可充当交互式外围设备,其将用户输入返回给在发送方计算设备上本地执
行的应用程序。作为结果,为用户提供了丰富的交互式体验,该交互式体验实现了在例如会
议、演示、研讨会、上课等期间的直观且协作式的交互。接着,在321,该方法包括基于应用程
序动作(例如,命令)来更新GUI。
接着,在322,该方法包括,在发送方计算设备处,发送指示由发送方计算设备基于
用户输入所生成的GUI的经更新的状态的数据。具体地,在一个示例中,该经更新的状态反
映了GUI中的图形变化,该图形变化基于经由应用程序在发送方计算设备上远程执行的动
作。将会理解,该动作可响应于在发送方计算设备处接收到用户输入来实施。
在324,该方法包括,从发送方计算设备处接收指示由发送方计算设备基于用户输
入所生成的GUI的经更新的状态的数据。将会理解,该数据可被称为GUI更新。接着,在326,
该方法包括在与接收方计算设备相关联的显示器上显示GUI的经更新的状态。示例性经更
新的状态包括对按钮的选择、对对象的移动、对字段的选择、对搜索查询的执行等。将会理
解,经更新的状态可包括与经由发送方计算设备上的应用程序实施的程序动作相关联的众
多图形改变。
在一些实施例中,本文中描述的方法和过程可以与一个或多个计算设备的计算系
统绑定。尤其地,这样的方法和过程可被实现为计算机应用程序或服务、应用编程接口
(API)、库和/或其他计算机程序产品。
图5-8示出可在接收方计算设备(例如,图1中示出的接收方计算设备14)和发送方
计算设备(例如,图1中示出的发送方计算设备12)之间的连接会话之前和期间显示(例如依
次显示)的GUI。因此,将会理解,图1中示出的显示器24和交互式显示器30可呈现图5-8中示
出的各GUI。具体地,图5-8中解说了可经由图1中所示的发送方计算设备12和接收方计算设
备14来执行和显示的一系列GUI。因此,附图中的各GUI被依次在时间T1、T2、T3、以及T4时实
现。此外,图5-8中示出的GUI表示可在方法300的实现期间被生成和显示的示例性GUI。
具体地,图5-6示出可经由图1所示的发送方计算设备12执行和显示的GUI 500。因
此,GUI可被显示在图1中所示的显示器24上。具体地,当发送方计算设备和接收方计算设备
之间的连接会话正被建立时,可显示图5-6中示出的GUI。
图5解说了一个示例GUI 500。GUI 500可对应于图1中示出的发送方应用程序50。
继续图5,在所示出的示例中,GUI 500包括窗口501。在窗口501(例如,设备发现窗口)中,示
出了多个被标识的接收方计算设备504的列表502。在被描绘的实施例中,窗口501被呈现在
一个更大的窗口510中。然而,在其它示例中,窗口501可以其它配置来呈现。窗口510包括各
种图形元素,诸如应用程序图标512、回收站图标514等。
列表502中的每一个接收方计算设备可包括与该设备相关联的图形(例如缩略图)
和/或字母数字符号。以此方式,用户可更容易地认出他们想要连接到的设备。如所示出的,
列表502可包括建议的设备。该设备可基于发送方计算设备和接收方计算设备有多新近地
和/或有多频繁地拥有双向通信会话来建议。此外,该列表中呈现的各接收方计算设备的物
理或逻辑位置可基于所确定的各设备之间的物理距离、或基于各设备在网络上的逻辑位置
(例如在同一子网上)来选择。这些距离可基于Wi-Fi信号、蓝牙信号、NFC信号、子网发现、或
以上的组合来确定。以此方式,最靠近发送方计算设备并因此更可能被彼此连接的接收方
计算设备被方便地显示在GUI中。如所示出的,该列表包括以垂直配置放置在彼此上下的各
接收方计算设备。然而,已设想了用于显示各接收方计算设备的其它格式。例如,该列表可
具有水平配置。此外,在又一些示例中,接收方计算设备可以以瓦块配置来呈现,其中该列
表中的每一个接收方计算设备被显示在网格中的一个瓦块中。
还可在GUI 500中提供使得用户能够发起与想要的接收方计算设备的无线连接的
按钮506或其它合适的选择器。还可提供选择器507,其使得用户能够准许或禁止发送方计
算设备和接收方计算设备之间的本地对等无线连接。如所示出的,可在GUI 500中提供搜索
栏508,其允许用户搜索接收方计算设备。搜索栏508允许用户输入想要的符号,该符号可指
示与搜索栏中的符号(例如,项)相关联的设备。另外,GUI中可提供使得用户能够断开接收
方计算设备和发送方计算设备之间的无线连接的按钮。
图5中还示出了对列表502中的接收方计算设备中的一个的选择输入516。在所描
绘的示例中,该选择输入是经由可与输入设备(诸如鼠标)相关联的光标来实施的。然而,已
设想了众多类型的选择输入,诸如触摸手势。响应于该选择输入,发送方计算设备建立与所
选择的接收方计算设备的本地对等无线连接。
图6解说了在计算设备之间建立了本地对等无线连接之后的GUI 500。GUI 500的
桌面510仍然被显示。另外,将会理解,对应于图标512的多个应用程序可被显示在窗口510
内。如图6中所示,图5中示出的设备发现窗口501被从视野中隐藏,而指示发送方计算设备
与所选择的接收方计算设备的无线对等连接的小图标601被显示。如所示出的,按钮602可
被提供在GUI 500中以允许用户将发送方计算设备与所选择的接收方计算设备断开。
图6中还示出了应用程序窗口610。应用程序窗口610对应于所描绘的示例中的绘
画应用程序。然而,在其它示例中,其它类型的应用程序可被显示在一个或多个中。
图7解说了示例GUI 700,其可被显示在图1中所示的接收方计算设备14的交互式
显示器30上。对应于发送方计算设备的窗口510和应用程序窗口610被显示。将会理解,窗口
510和610经由发送方计算设备执行并随后被通过本地对等无线连接发送给接收方计算设
备供显示。以此方式,接收方计算设备向发送方计算设备提供投射功能。
图8示出在接收方计算设备接收到用户输入并将用户输入发送给发送方计算设备
之后的GUI 700。具体来说,图8中示出了与触敏显示器的触摸接触800形式的用户输入。接
收方计算设备接收用户输入并且随后将该用户输入发送给发送方计算设备。
响应于接收到用户输入,发送方计算设备基于响应于该用户输入而实施的应用程
序动作来更新图6中所示的GUI 500。接着,发送方计算设备发送指示由发送方计算设备基
于用户输入所生成的GUI的经更新的状态的数据。随后基于经更新的状态更新GUI 700。
在图8中所示的实施例中,更新GUI 700包括在应用程序窗口610中画线。以此方
式,接收方计算设备可被用于与显示在其上并且在发送方计算设备上远程处理的内容进行
交互。作为结果,接收方计算设备的功能被扩展。另外,图8示出了本地执行的按钮804被显
示在GUI 700中。这些按钮由接收方计算设备提供以实现对显示在接收方计算设备上并且
由发送方计算设备远程执行的内容的附加操纵。以此方式,接收方计算设备可包括一组本
地处理功能。
使用以上描述的系统和方法,用户能够与接收方计算设备上呈现的内容交互,即
使该内容是由发送方计算设备上的应用程序远程执行的。因此,接收方计算设备的功能被
扩展,这使得用户能够在例如演示或会议期间容易地操纵在接收方计算设备(例如,投射设
备)上呈现但是经由发送方计算设备本地处理的内容。
返回到以上描述的系统的硬件配置,本文中描述的处理器可包括被配置成执行指
令的一个或多个物理设备。例如,处理器可以被配置成执行指令,所述指令是一个或多个应
用、服务、程序、例程、库、对象、部件、数据结构或其他逻辑构造的一部分。这种指令可被实
现以执行任务、实现数据类型、转换一个或多个部件的状态、实现技术效果、或以其它方式
得到期望结果。
逻辑子系统可包括被配置成执行软件指令的一个或多个处理器。另外地或替代
地,处理器可以包括被配置成执行硬件或固件指令的一个或多个硬件或固件逻辑机器。处
理器可以是单核的或多核的,其上执行的指令可以被配置用于串行、并行和/或分布式处
理。处理器的个别组件可任选地分布在两个或更多个分开的设备之间,所述设备可以位于
远程以及/或者被配置用于协同处理。处理器的各方面可以被在云计算配置中配置的远程
可访问的、联网计算设备虚拟化和执行。
本文中描述的存储器可以包括可移动和/或内置设备。本文中描述的存储器可以
包括光学存储器(例如,CD、DVD、HD-DVD、蓝光碟等)、半导体存储器(例如,RAM、EPROM、
EEPROM等)和/或磁性存储器(例如,硬盘驱动器、软盘驱动器、磁带驱动器、MRAM等)等等。本
文中描述的存储器可以包括易失性的、非易失性的、动态的、静态的、读/写的、只读的、随机
存取的、依序存取的、位置可定址的、文件可定址的以及/或者内容可定址的设备。
将会理解,本文中描述的存储器包括一个或多个物理设备。然而,本文描述的指令
的各方面可另选地通过不由物理设备在有限时长内持有的通信介质(例如,电磁信号、光信
号等)来传播。
本文中描述的处理器和存储器的各方面可以被一起集成为一个或多个硬件逻辑
组件中。这些硬件逻辑组件可包括例如现场可编程门阵列(FPGA)、程序和应用专用的集成
电路(PASIC/ASIC)、程序和应用专用的标准产品(PSSP/ASSP)、片上系统(SOC)以及复杂可
编程逻辑器件(CPLD)。
术语“应用程序”可用于描述被实现为执行一个特定功能的计算系统的一方面。在
一些情况下,应用程序可经由处理器执行存储器所保持的指令来实例化。将会理解,可以从
同一服务、代码块、对象、库、例程、API、功能等实例化不同的应用程序。同样,同一应用程序
可由不同的服务、代码块、对象、例程、API、功能等实例化。术语应用程序摂可包含可执行文
件、数据文件、库、驱动器、脚本、数据库记录等等的个体或群组。
在被包括时,显示设备可用于呈现由存储器保持的数据的视觉表示。该视觉表示
可采用GUI的形式。当本文所描述的方法和过程改变了由存储器保持的数据,并由此变换了
存储器的状态时,显示器的状态可类似地被转换以视觉地表示底层数据的改变。可将显示
设备与处理器和/或存储器组合在共享封装中,或这样的显示设备可以是外围显示设备。
将会理解,此处描述的配置和/或方法本质是示例性的,这些具体实施例或示例不
应被视为限制性的,因为许多变体是可能的。此处描述的具体例程或方法可以表示任何数
量的处理策略中的一个或多个。如此,所示和/或所述的各种动作可以以所示和/或所述顺
序、以其它顺序、并行地执行,或者被省略。同样,上述过程的次序可以改变。
本公开的主题包括各种过程、系统和配置以及此处公开的其它特征、功能、动作
和/或属性、以及它们的任一和全部等价物的所有新颖且非显而易见的组合和子组合。
本公开的主题被进一步描述在以下段落中。根据一个方面,提供了一种用于在接
收方计算设备和发送方计算设备之间提供协作式交互的方法。该方法包括在接收方计算设
备处,建立与发送方计算设备的本地对等无线连接;经由所述本地对等无线连接从所述发
送方计算设备接收在所述发送方计算设备上执行的远程执行的应用程序的图形用户界面
(GUI)的数据;在与所述接收方计算设备相关联的显示器上显示所述GUI;从与所述接收方
计算设备相关联的输入设备接收指示与所述GUI的用户交互的用户输入;将所述用户输入
发送给所述发送方计算设备;从所述发送方计算设备接收指示由所述发送方计算设备基于
所述用户输入所生成的所述GUI的经更新的状态的数据;以及在与所述接收方计算设备相
关联的显示器上显示所述GUI的经更新的状态。
在这一方面,所述本地对等无线连接可以是Wi-Fi直接连接。
在这一方面,所述显示器是触敏显示器并且所述输入设备是所述触敏显示器的触
摸传感器,所述触摸传感器被配置成感测用户的手指或指示笔的触摸,并且所述用户输入
是对应于感测到的所述用户的手指的触摸的触摸输入或者对应于感测到的指示笔的触摸
的墨水输入。
在这一方面,该方法可进一步包括在接收到远程执行的GUI之前,在所述发送方计
算设备处:呈现包括多个被标识的接收方计算设备的列表的设备发现图形用户界面,所述
多个被标识的接收方计算设备包括所述接收方计算设备;从与所述接收方设备相关联的输
入设备接收对所述接收方计算设备的选择输入;以及
响应于接收到所述选择输入,将所述GUI发送给所述接收方计算设备。
在这一方面,所述列表中的多个被标识的接收方计算设备可以是经由无线连接标
识的。
在这一方面,所述列表中的多个被标识的接收方计算设备可基于发送方计算设备
与接收方计算设备之间的物理或逻辑距离来标识。
在这一方面,这些距离可基于Wi-Fi连接、蓝牙通信、近场通信(NFC)、以及子网发
现中的一个或多个来确定。
在这一方面,所述列表中的多个被标识的接收方计算设备中的每一个的相对位置
可以是基于所述接收方计算设备和所述发送方计算设备之间的双向通信会话的频率以及
所述接收方计算设备和发送方计算设备之间的双向通信会话的日期和时间来确定的。
在这一方面,所述列表可包括与多个被标识的接收方计算设备相关联的预览图
像。
在这一方面,该方法还可包括在所述发送方计算设备处,响应于从与所述接收方
设备相关联的输入设备处接收到对所述接收方计算设备的选择输入,隐藏设备发现图形用
户界面并显示连接条。
在这一方面,所述GUI被显示在所述显示器上的窗口内,所述窗口与在所述接收方
计算设备上本地执行的应用程序相关联。
根据另一方面,提供了一种接收方计算设备。接收方计算设备包括处理器,所述处
理器被配置成:建立与所述接收方计算设备共处一处的发送方计算设备的本地双向对等无
线连接;经由所述本地双向对等无线连接从所述发送方计算设备接收在所述发送方计算设
备上执行的远程执行的应用程序的图形用户界面(GUI)的数据;在与所述接收方计算设备
相关联的交互式触敏显示器上显示所述GUI;从所述交互式触敏显示器接收指示与所述GUI
的用户交互的用户输入,所述用户输入包括触摸输入和墨水输入中的至少一个;将所述用
户输入发送给所述发送方计算设备;从所述发送方计算设备接收指示由所述发送方计算设
备基于所述用户输入所生成的所述GUI的经更新的状态的数据;以及在所述交互式触敏显
示器上显示所述GUI的经更新的状态。
在这一方面,所述经更新的状态可反映所述GUI中的图形变化,所述图形变化基于
经由所述应用程序在所述发送方计算设备上远程执行的动作。
在这一方面,所述本地双向对等无线连可以是蓝牙连接和Wi-Fi连接中的一个。
在这一方面,所述交互式触摸显示器可包括被配置成感测用户的手指或指示笔的
触摸的电容式触摸传感器。
在这一方面,所述处理器可被进一步配置成从与所述GUI相关联的发送方计算设
备接收与所述GUI相关联的音频数据,并且经由所述接收方计算设备中的音频设备投射所
述音频数据。
在这一方面,所述接收方计算设备的显示器可大于与所述发送方计算设备相关联
的显示器。
根据另一方面,提供了一种用于在接收方计算设备和发送方计算设备之间提供协
作式交互的方法。该方法包括:在由接收方计算设备执行的接收方应用程序处,经由发送方
计算设备执行的发送方应用程序建立与发送方计算设备的Wi-Fi或蓝牙连接;从发送方应
用程序接收在发送方计算设备上执行的第二应用程序的图形用户界面(GUI)的数据;在与
所述接收方计算设备相关联的交互式触敏显示器上显示所述GUI;从与接收方计算设备相
关联的交互式触敏显示器接收指示与所显示的GUI的用户交互的用户输入,所述用户输入
包括触摸输入和墨水输入中的至少一个;将所述用户输入发送给所述发送方应用程序;从
所述发送方应用程序接收指示由所述第二应用程序基于所述用户输入所生成的所述GUI的
经更新的状态的数据;以及在所述交互式触敏显示器上显示所述GUI的经更新的状态。
在这一方面,所述经更新的状态反映了所述GUI中的图形变化,所述图形变化基于
经由所述第二应用程序在所述发送方计算设备上远程执行的动作。
在这一方面,该方法还可包括在接收到远程执行的GUI之前,在所述发送方计算设
备处:呈现包括多个被标识的接收方计算设备的列表的设备发现图形用户界面,所述多个
被标识的接收方计算设备包括所述接收方计算设备;从与所述接收方设备相关联的输入设
备接收对所述接收方计算设备的选择输入;以及响应于接收到所述选择输入,将所述GUI发
送给所述接收方计算设备。