跨设备任务连续性的制作方法

文档序号:11160881阅读:412来源:国知局
跨设备任务连续性的制造方法与工艺

诸如智能电话、个人计算机、平板、二合一设备等等设备在社会中无处不在。人们将这些设备用于多个不同功能,每一个功能潜在地在经由设备访问的不同应用或网站上执行。时常地,人们拥有多于一个设备,每一个设备都充满多个应用并且提供对网站的访问。

然而,设备一般缺乏在彼此之间无缝地共享关于进行中的任务的信息的能力。设备之间的任何共享要求设备之间的显式保存和转移。因而,当用户拾取第二设备以继续任务时,一般必须花费额外时间来尝试找到期望的应用,并且花费甚至更多的时间确定用户在任务上什么地方中断,如果这甚至可能的话。



技术实现要素:

本公开描述了用于任务连续性的系统和方法,其中重点是允许用户容易地检测他们最后在哪里查看和/或修改了特定任务,包括在另一个设备上。任务连续性提供了任务的无障碍参与(engage)和再参与以便给出(deliver)高品质应用和网站使用和任务恢复,由此得到更大的用户满意度。在单个设备上和/或跨越多个设备启用任务连续性。同样地,在单个操作系统上和/或跨越多个操作系统启用任务连续性。

在一些示例中,在第一设备上的应用中执行任务的用户可以暂停应用中的任务。在该时间处,或者在未来的某个时间处,用户可以唤醒第二设备。响应于唤醒,第二设备可以为用户提供从任务在第一设备上暂停的点继续该任务的选项。在各种示例中,用户可以在第一设备上的应用中执行任务,并且可以拾取第二设备并且与第一设备上的任务同时地在第二设备上执行任务。在一些示例中,用户可以在第一设备上的应用中执行任务,并且可以拾取第二设备并且在第二设备上执行与第一设备上的任务相关联的第二任务。

提供该发明内容来以简化形式介绍以下在具体实施方式中进一步描述的概念的选择。该发明内容不旨在标识所要求保护的主题的关键或必要特征,也不旨在用作帮助确定所要求保护的主题的范围。

附图说明

参照附图陈述详细描述。在图中,参考标号的(多个)最左边的数字标识该参考标号首次出现在其中的图。相同参考标号在不同图中的使用指示相似或相同的项目。

图1图示了跨设备和/或跨操作系统任务连续性系统的示例环境。

图2更加详细地图示了包括与图1一致的跨设备和/或跨操作系统任务连续性系统的示例设备。

图3图示了包括与之前各图一致的跨设备和/或跨操作系统任务连续性系统的设备上的示例显示模块。

图4图示了与之前各图一致的跨设备和/或跨操作系统任务连续性系统的示例网络环境。

图5图示了与之前各图一致的跨设备和/或跨操作系统任务连续性系统的示例过程。

图6图示了与图1-4一致的跨设备和/或跨操作系统任务连续性系统的另一个示例过程。

图7图示了与之前各图一致的跨设备和/或跨操作系统任务连续性系统上的过程流。

图8图示了利用与之前各图一致的跨设备和/或跨操作系统任务连续性系统进行跨应用任务修改的过程流。

具体实施方式

概述

跨设备和/或跨操作系统任务连续性(“任务连续性”)可以提供任务的方便发现以及无障碍参与和再参与,使得用户可以跨设备和/或操作系统无缝地执行任务,而不管设备类型或操作系统如何。

本公开描述了使得能够实现方便发现以及跨设备和/或操作系统无缝地继续任务的能力的方法和系统。任务可以包括用户在应用和/或网站上进行的特定活动,诸如倾听歌曲或播放列表、阅读新闻文章、撰写文档、或者无数其它活动。如本文中描述的任务连续性可以是交互式的。如本文中描述的任务连续性可以允许用户容易地发现多个应用和/或网站中的至少一个中的一个或多个之前查看和/或修改的任务。一个或多个之前查看和/或修改的任务的发现可以发生在一个设备上或者配置用于用户的多个活跃设备上。如本文中使用的,活跃设备是通过网络可发现的设备。

设备的可发现性可以是基于设备通电、离开睡眠模式、离开飞行模式和/或使设备变得通过网络可用的任何其它动作。通过网络的可用性可以由Wi-Fi传感器、BluetoothTM传感器、接近传感器、有线连接和/或能够检测网络接口的任何其它传感器来确定。

任务连续性可以提供一种使用户选择一个或多个之前查看和/或修改的任务中的特定任务的方式。响应于选择,可以在该任务最后被查看和/或修改的点处再参与该特定任务。在一些示例中,任务连续性可以为用户提供一种在不同应用中恢复特定任务的方式。在各种示例中,任务连续性可以为用户提供一种在web浏览器中恢复特定任务的方式。在一些示例中,任务连续性可以为用户提供一种选择参与新任务的方式,该新任务是至少基于之前查看的任务而提供给用户的基于特定于应用和/或网站的信息的。

任务连续性为用户提供任务的丰富再参与。在至少一个示例中,丰富再参与可以为用户提供涉及一个或多个任务中的最近用户输入和/或动作的任务上下文数据。在一些示例中,应用和/或网站可以为用户提供涉及与一个或多个任务相关联的特定于应用或网站的数据的其它选项。例如,智能电视上的应用可以显示录制或直播节目,而智能电话或另一个辅助设备上的应用可以提供关于录制或直播节目的信息。在一些示例中,智能电话或另一个辅助设备上的应用可以提供录制或直播节目的特定于应用的选项,诸如针对才艺表演上的最佳歌手的现场投票等。

在任务连续性中,至少一个设备被配置到用户简档。在至少一个示例中,配置在用户简档上的设备连接到分布式服务平台,诸如云,其中将用于应用和/或网站上的任务的任务上下文数据保存到分布式服务平台中的参考用户简档。参考用户简档可以充当用于任务连续性中的多个设备中的至少一个的用户简档数据的中心参考点。

任务上下文数据可以包括最后查看和/或修改任务的时间、已经查看和/或修改任务的次数、应用中和/或网站上的文本、设备显示信息、图像和任何其它数据。在一些示例中,分布式服务平台中的参考用户简档上的跨设备活动模块可以周期性地从分布式服务平台中的参考用户简档上的跨设备活动模块和/或一个或多个活跃设备拉取任务上下文数据。在各种示例中,分布式服务平台中的参考用户简档上的跨设备活动模块可以周期性地接收从一个或多个活跃设备推送的任务上下文数据。在每5秒钟、10秒钟或者任何其它时间段处,跨设备活动模块可以拉取和/或一个或多个活跃设备可以推送最近的任务上下文数据。跨设备活动模块可以将任务上下文数据保存到用户简档上的对应应用和/或网站。

在各种示例中,活跃设备可以通过经由网络连接推送来自活跃设备的更新而使任务上下文数据发送给分布式服务平台中的参考用户简档。任务上下文数据可以存储在分布式服务平台中以便在任何时间处在被配置到用户简档并且能够访问分布式服务平台的任何设备上容易进行访问。

任务连续性还可以使用接近网络来在设备之间更新数据。接近网络可以是点对点、无线USB、蓝牙、IrDA、Z波、人体区域、或者基于至少两个设备的接近的任何其它有线或无线路径。接近可以通过有线连接和/或接近传感器来确定。在接近网络中,至少两个设备可以在设备之间共享任务上下文数据,使得在第一设备上呈现和/或修改的任务可以由附近的第二设备标识,并且第二设备可以显示来自第一设备上的任务的任务上下文数据。因而,第一设备上的任务的呈现和/或修改可以停止,并且任务可以在其于第一设备上中断的地方无缝地在第二设备上恢复。在一些示例中,响应于第一设备和第二设备彼此接近,任务上下文数据可以在第一设备和第二设备上并发地可用。

在一些示例中,接近网络可以允许一个或多个之前查看和/或修改的任务的任务上下文数据在设备之间的显式发送。在一些示例中,任务上下文数据的转移可以是隐式的,使得响应于第一设备和第二设备彼此接近,第二设备从第一设备拉取一个或多个之前呈现和/或修改的任务的任务上下文数据。

在一些示例中,任务连续性还可以使用分布式服务平台、接近网络和/或分布式服务平台和接近网络的组合在设备之间更新数据,以便提供丰富的任务再参与。

任务连续性还可以跨具有不同操作系统的设备而启用。例如,第一设备可以被配置成在WINDOWS操作系统上运行,而其可以与第二设备传送和接收用户简档数据,第二设备被配置成在LINUX、ANDROID操作系统、iOSTM操作系统或者另一个操作系统上运行。

说明性环境

以下描述的环境构成仅仅一个示例并且不旨在将权利要求限于任何一个特定操作环境。可以使用其它环境而不脱离所要求保护的主题的精神和范围。

跨设备和/或跨操作系统任务连续性允许任务在没有打断的情况下同时地跨设备或者在多个设备上继续。任务可以包括用户在设备上的应用和/或网站上进行的特定活动,诸如倾听歌曲或播放列表、阅读新闻文章、撰写文档或者无数其它活动。例如,用户可以在桌面型计算机上倾听播放列表,并且可能需要离开桌面型计算机的位置。用户可以拾取智能电话并且继续在智能电话上倾听相同播放列表,在智能电话上在播放列表于桌面型计算机上中断的地方开始播放。在另一个示例中,用户可以在桌面型计算机和智能电话上同时地倾听相同播放列表,其中两个设备同时播放播放列表。在另一个示例中,用户可以拾取智能电话并且接收信息来补充播放列表而同时继续在桌面型计算机上倾听播放列表。

图1示出了跨设备和/或跨操作系统任务连续性系统的示例环境100。环境100的(多个)设备102和/或组件可以包括配置成经由一个或多个网络104通信的品种多样的设备类型,并且不限于任何特定类型的设备。在一些示例中,(多个)设备102,诸如102(1),可以包括静止设备,包括但不限于服务器、桌面型计算机、个人计算机、启用网络的电视、终端、游戏操控台、机顶盒、游戏设备、工作站和瘦客户端,诸如能够操作分布式计算资源的那些。在一些示例中,(多个)设备102,诸如102(2),可以包括移动设备,包括但不限于移动电话、平板计算机、移动电话平板混合体、个人数据助手(PDA)、膝上型计算机、媒体播放器、个人视频记录器(PVR)、相机、以及任何其它移动计算机或任何其它移动电信设备。在一些示例中,(多个)设备102,诸如102(3),可以包括嵌入式设备,包括但不限于可穿戴计算机、植入式计算设备、机动车计算机、计算机导航类型设备(诸如基于卫星的导航系统(包括全球定位系统(GPS)设备以及其它基于卫星的导航系统设备))、器具和用于包括在计算设备中的集成组件。在各种示例中,(多个)设备102,诸如102(N),可以包括配置成经由一个或多个网络104通信的任何其它种类的计算设备。

例如,(多个)网络104可以包括诸如互联网之类的公共网络,诸如机构和/或个人内联网之类的私有网络,或者私有和公共网络的某种组合。(多个)网络104还可以包括任何类型的有线和/或无线网络,包括但不限于局域网(LAN)、广域网(WAN)、个域网(PAN)、人体区域网(BAN)、近场通信(NFC)、卫星网络、电缆网络、Wi-Fi网络、WiMax网络、移动通信网络(例如,3G、4G等等)或其任何组合。(多个)网络104可以利用通信协议,包括基于分组和/或基于数据报的协议,诸如互联网协议(IP)、传输控制协议(TCP)、用户数据报协议(UDP)或者其它类型的协议。此外,(多个)网络104还可以包括数个设备,其促进网络通信和/或形成用于网络的硬件基础,诸如交换器、路由器、网关、接入点、防火墙、基站、中继站、骨干设备等。

在一些示例中,(多个)网络104还可以包括使得能够连接到无线网络的设备,诸如无线接入点(WAP)。支持通过WAP的连接性的示例在各种电磁频率(例如,射频)之上发送和接收数据,包括支持电气与电子工程师协会(IEEE 802.11)标准(例如,802.11g、802.11n等等)以及其它标准的WAP。

(多个)设备102可以包括具有一个或多个处理单元106的任何计算设备,一个或多个处理单元106诸如经由总线110可操作地连接到计算机可读介质108,总线110在一些实例中可以包括以下中的一个或多个:系统总线、数据总线、地址总线、PCI总线、Mini(微型)-PCI总线、以及任何各种局部、外围和/或独立的总线。存储在计算机可读介质108上的可执行指令可以包括例如操作系统112、连续性框架114、以及由(多个)处理单元106可加载和可执行的其它模块和程序。

(多个)设备102上的操作系统112可以是任何操作系统,包括但不限于MICROSOFT WINDOWS、WINDOWS PHONE、QNXTM、IBM z/OSTM、LINUX、ANDROID、iOSTM、OS XTM、NETBSDTM、或者能够管理计算机硬件和软件资源的任何其它操作系统。在一些示例中,设备102(1)和102(2)可以包括操作系统112,诸如Microsoft Windows。在各种示例中,设备102(1)可以包括操作系统112(1),诸如MICROSOFT WINDOWS,而设备102(2)可以包括操作系统112(2),诸如ANDROID。

可替换地或者此外,本文描述的功能性可以至少部分地通过一个或多个硬件逻辑组件(诸如,加速器)来执行。例如但不作为限制,可以使用的说明性类型的硬件逻辑组件包括现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、片上系统的系统(SOC)、复杂可编程逻辑器件(CPLD)等。例如,加速器可以表示混合设备,诸如来自ZYLEX或ALTERA的一个,其包括嵌入在FPGA构造物中的CPU进程(course)。

(多个)设备102还可以包括一个或多个网络接口116以使得能够实现设备102(1)和牵涉在任务连续性中的其它联网设备(诸如设备102(2)-102(N))之间的通信。这样的(多个)网络接口116可以包括一个或多个网络接口控制器(NIC)或者通过网络发送和接收通信的其它类型的收发器设备。例如,(多个)网络接口116可以包括(多个)接近接口118以进一步使得能够实现(多个)设备102(1)和牵涉在任务连续性中的其它联网设备(诸如设备102(2)-102(N))之间的通信。这样的(多个)接近接口118可以包括一个或多个接近网络接口控制器或者通过接近网络发送和接收通信的其它类型的收发器设备。

图2图示了包括跨设备和/或跨操作系统任务连续性系统的示例设备200,诸如来自图1的设备102。在设备200中,(多个)处理单元202可以例如表示CPU类型的处理单元、GPU类型的处理单元、现场可编程门阵列(FPGA)、另一种分类的数字信号处理器(DSP)、或者其它硬件逻辑组件,其在一些实例中可以由CPU驱动。例如但不作为限制,可以使用的说明性类型的硬件逻辑组件可以包括专用集成电路(ASIC)、专用标准产品(ASSP)、片上系统的系统(SOC)、复杂可编程逻辑器件(CPLD)等。

在一些示例中,设备200可以是作为分布式服务平台(例如,云)的部分的多个设备之一,诸如设备102(1)、102(2)和102(N)。在一些示例中,设备200可以是能够经由接近网络连接的多个设备之一。在至少一个示例中,设备200可以是既作为分布式服务平台的部分又能够经由接近网络连接的多个设备之一。

在一些示例中,计算机可读介质204可以是计算机可读介质108,可以存储由(多个)处理单元202可执行的指令。计算机可读介质204还可以存储指令,该指令由诸如外部CPU、外部GPU之类的外部处理单元可执行,和/或由诸如FPGA型加速器、DSP型加速器之类的外部加速器、或者任何其它内部或外部加速器可执行。在一些示例中,至少一个CPU、GPU和/或加速器并入在设备200中,而在其它示例中,CPU、GPU和/或加速器中的一个或多个可以在设备200外部。

在所图示的示例中,计算机可读介质204还包括数据仓库206。在一些示例中,数据仓库206包括数据存储装置,诸如数据库、数据库房、或者其它类型的结构化或非结构化数据存储装置。在一些示例中,数据仓库206包括具有一个或多个表格、索引、存储的工序等等的语料库和/或关系数据库,以使得能够实现包括以下中的一个或多个的数据访问:例如超文本标记语言(HTML)表格、资源描述框架(RDF)表格、web本体论语言(OWL)表格和/或可扩展标记语言(XML)表格。数据仓库206可以存储数据,用于存储在计算机可读介质204中和/或由(多个)处理单元和/或(多个)加速器202执行的过程、应用、组件和/或模块的操作。可替换地,以上引用的数据中的一些或全部可以存储在一个或多个处理单元202机载的分离存储器208上,诸如CPU型处理器、GPU型处理器、FPGA型加速器、DSP型加速器和/或另一个加速器机载的存储器。

设备200还可以包括一个或多个输入/输出(I/O)接口210以允许设备200与输入/输出设备通信,输入/输出设备诸如是包括外围输入设备(例如,键盘、鼠标、笔、游戏控制器、语音输入设备、触摸输入设备、手势输入设备等)的用户输入设备和/或包括外围输出设备(例如,显示器、打印机、音频扬声器、触觉输出等)的输出设备。此外,在设备200中,(多个)网络接口212可以是(多个)网络接口116,可以例如表示网络接口控制器(NIC)或者通过网络发送和接收通信的其它类型的收发器设备。(多个)网络接口212还可以包括一个或多个接近接口214,其可以进一步包括经由接近网络通信的硬件和软件,以便进一步使得能够与牵涉在任务连续性中的其它设备(诸如设备102(1)-102(N))通信。

在所图示的示例中,设备200可以经由总线216可操作地将(多个)处理单元202连接到计算机可读介质204、(多个)I/O接口210和(多个)网络接口212,总线216对应于总线110。在一些示例中,总线216可以包括以下中的一个或多个:系统总线、数据总线、地址总线、PCI总线、Mini(微型)-PCI总线、以及任何各种局部、外围和/或独立总线。

在所图示的示例中,计算机可读介质204还包括操作系统218,其可以是操作系统112。操作系统可以是任何操作系统,包括但不限于MICROSOFT WINDOWS、WINDOWS PHONE、QNXTM、IBM z/OSTM、LINUX、ANDROID、iOSTM、OS XTM、NETBSDTM、或者能够管理设备200上的计算机硬件和软件资源的任何其它操作系统。计算机可读介质204还包括连续性框架220,其可以是连续性框架114。连续性框架220可以包括一个或多个模块和/或API,其被图示为框222、224、226、228、230、232、234、236、238、240和242,但是这仅仅是示例,并且数目可以变化得更高或更低。

与框222、224、226、228、230、232、234、236、238、240和242相关联地描述的功能性可以组合以由更少数目的模块和/或API执行,或者其可以被分割并且由更大数目的模块和/或API执行。例如,框222可以表示具有对设备200的处理单元202编程以用于数据的提取的逻辑的应用储存库模块,该数据包括但不限于任务上下文数据以及来自数据仓库206或外部数据仓库的特定于应用和/或网站的数据。在一些示例中,应用储存库模块222可以进一步包括在与设备200相关联的任务上下文数据和/或与诸如设备102(1)-102(N)之类的其它设备相关联的任务上下文数据之间进行区分的逻辑。在各种示例中,应用储存库模块222可以进一步包括在之前已经在设备200上呈现和/或修改的任务之间进行区分的逻辑。

在所图示的示例中,连续性框架220可以包括应用处理模块224。在一些示例中,应用处理模块224包括对设备200的处理单元202编程以用于从数据存储装置提取兼容性数据的逻辑,该数据存储装置诸如是应用储存库模块222、数据仓库206和/或外部数据仓库。兼容性数据包括但不限于,与多个其它应用中的至少一个的应用兼容性使得应用可以共享上下文数据,和/或与多个对应网站中的至少一个的应用兼容性。在一些示例中,应用处理模块224可以包括对处理单元202编程以用于特定于其它应用和/或网站的数据的提取的逻辑,特定于其它应用和/或网站的数据包括但不限于应用建议的用户动作、应用提升(promotion)、或者编程在应用中以从数据存储装置提供的任何其它数据,所述数据存储装置诸如是应用储存库模块222、数据仓库206和/或外部数据仓库。

连续性框架220可以进一步包括排名模块226,其具有对(多个)处理单元202编程以用于从数据存储装置提取应用和/或网站使用数据的逻辑,所述数据存储装置诸如是应用储存库模块222、数据仓库206和/或外部数据仓库。应用和/或网站使用数据可以至少包括多个应用和/或网站中的至少一个的流行度(使用频率)、查看和/或修改多个应用和/或网站中的一个或多个任务的时间、查看多个应用和/或网站中的至少一个的持续时间、以及应用和/或网站的类型。排名模块226还可以包括对(多个)处理单元202编程以用于从数据存储装置提取用户偏好数据(即,设备设置、应用设置、网站设置等等)的逻辑。

排名模块226还可以包括至少部分地基于应用和/或网站使用数据和/或用户偏好(即,设备设置、应用设置、网站设置等等)对应用、网站、应用中的任务和/或网站中的任务中的至少一个进行排名的排名逻辑。排名模块226还可以包括将排名保存到数据存储装置中的用户简档的逻辑,所述数据存储装置诸如是应用储存库模块222、数据仓库206和/或外部数据仓库。在一些示例中,排名模块226中的排名逻辑可以基于以下中的一个或多个来排名:自最后查看和/或修改起的时间、查看和/或修改的频率、应用和/或网站的类型和/或用户偏好。

在所图示的示例中,连续性框架220还可以包括输出模块228,其具有对处理单元202编程以从以下中的至少一个提取数据的逻辑以用于从应用和/或应用中的任务向显示模块230输出相关上下文数据:排名模块226、应用处理模块224或者诸如应用储存库模块222、数据仓库206和/或外部数据仓库之类的数据存储装置。输出模块228还可以包括基于以下中的至少一个来从应用和/或任务确定最相关的上下文数据的逻辑:用户偏好、应用排名、网站排名、任务排名、应用建议的用户动作和应用提升。基于这种见解,任务连续性可以向显示模块230提供最相关的上下文数据,其可以告知用户的选择。

在一些示例中,显示模块230包括在一个或多个交互式显示缩略图232、234、236和238上呈现相关任务上下文数据、特定于应用和/或网站的数据、应用建议的用户动作和/或应用提升的逻辑,但是这仅仅是示例,并且数目可以变化得更高或更低。在一个示例中,交互式显示缩略图232可以在第一应用中显示最近查看和/或修改的任务,而交互式显示缩略图234可以在第二应用中显示最近查看和/或修改的任务。附加地,交互式显示缩略图234和236可以分别显示用于第一和第二应用的应用提升。

连续性框架220还可以包括图形用户接口240和活动馈送引擎242。图形用户接口可以包括经由(多个)I/O接口210对输入进行响应的逻辑。图形用户接口240还可以包括对活动馈送引擎242编程以启动应用和/或网站中的任务的逻辑。在一些示例中,任务启动可以至少部分地基于一个或多个交互式显示缩略图232、234、236和238上的用户输入。图形用户接口240可以由触摸输入、笔输入、鼠标点击、键盘选择或者任何其它输入机构中的至少一个激活。响应于接收到诸如交互式显示缩略图232之类的交互式显示缩略图的选择的指示,图形用户接口240使得能够经由活动馈送引擎242启动所显示的应用和其中的任务,并且对任务的呈现和/或修改可以继续。

图形用户接口240还可以包括这样的逻辑,其对活动馈送引擎编程以在显式推送中跨任何数目的设备发送数据和/或向分布式服务平台中的跨设备活动模块发送数据。图形用户接口240可以进一步包括对活动馈送引擎编程以至少部分地基于经由(多个)I/O接口210的输入以显式保存的方式保存数据的逻辑。

活动馈送引擎242可以包括这样的逻辑,其对(多个)处理单元202编程以保存用于应用和/或网站中的任务的任务上下文数据而同时在设备200上查看和/或修改任务。活动馈送引擎可以将任务上下文数据保存到数据存储装置,诸如应用储存库模块222、数据仓库206和/或外部数据源。任务上下文数据可以保存到数据存储装置中的用户简档,由此更新用户简档数据。在一些示例中,活动馈送引擎242还可以包括这样的逻辑,其对(多个)处理单元202编程以从数据存储装置提取用户简档数据并且向另一个设备和/或分布式服务平台发送用户简档数据。

在一些示例中,用户简档数据可以保存在一个设备上的数据存储装置中。在一些示例中,用户简档数据可以跨至少两个设备而保存。在各种示例中,用户简档数据可以保存在分布式服务平台中的参考用户简档中。在至少一个示例中,用户简档数据可以保存在跨一个或多个设备的数据存储装置中以及保存在分布式服务平台中的参考用户简档中。

在一些示例中,活动馈送引擎242可以经由图形用户接口240在显式更新中保存用户简档数据,包括任务上下文数据。在显式更新中,响应于接收到推送数据的信号,活动馈送引擎从数据存储装置提取用户简档数据并且经由(多个)网络接口212向诸如设备102(N)之类的另一个设备发送它。在各种示例中,用户简档数据的更新可以是隐式更新,使得响应于第一设备和第二设备在接近网络中连接,诸如设备102(N)之类的第二设备的活动馈送引擎可以经由(多个)网络接口212从第一设备的数据存储装置拉取用户简档数据。

图3图示了包括跨设备和/或跨操作系统任务连续性系统的设备(诸如来自图1的设备102(1))上的示例显示模块。设备300可以包括用于呈现数据的显示器302。呈现在显示器302上的数据可以至少由诸如显示模块230之类的显示模块生成。显示器302可以使得能够实现应用、网站、应用和/或网站上的任务、或者特定于应用的活动(包括但不限于应用建议的用户动作和应用提升)的富参与或再参与。

在所图示的示例中,显示器302可以包括交互式显示缩略图304、306、308、310、312、314、316、318和320,但是这仅仅是示例,并且数目可以变化得更高或更低。显示器302可以可操作地连接到在诸如连续性框架220之类的连续性框架中的诸如显示模块230之类的显示模块。在一些示例中,显示模块302从输出模块接收用于显示的数据以用于在交互式显示缩略图304、306、308、310、312、314、316、318和320上显示。在这样的示例中,输出模块可以至少部分地基于用户偏好、应用和/或任务排名、应用建议的用户动作和/或应用提升而从应用和/或网站确定最相关的任务上下文数据。响应于确定最相关的任务上下文数据,输出模块可以将任务上下文数据发送给显示模块以用于呈现。基于这种见解,显示器302可以显示最相关的上下文数据和/或涉及用户可能想要参与或再参与的应用和/或任务的其它应用数据。显示在每一个交互式显示缩略图上的任务上下文数据和/或其它应用和/或网站数据可以提供关于任务、应用和/或网站的充足数据以使得用户能够做出知情选择。

在所图示的示例中,框304、306、308、310、312和314可以表示用户简档中的经排名的任务。跨设备和/或跨操作系统任务连续性可以基于以下中的一个或多个来排名:自最后查看和/或修改起的时间、查看和/或修改的频率、查看和/或修改的持续时间、应用和/或网站的类型和/或用户偏好。作为说明书示例,如果用户花费两个小时编写电子邮件而没有发送它并且随后花费五分钟查阅新闻文章,则可以至少部分地基于花费在编写中的时间而将电子邮件排名成高于新闻文章。

在一些示例中,显示器302可以包括具有应用和/或网站中的经排名的任务的更高或更低数目的交互式显示缩略图,诸如交互式显示缩略图304。在一些示例中,显示器302可以包括具有特定于应用的数据的更高或更低数目的交互式显示缩略图,诸如交互式显示缩略图316。

框304可以表示用户简档上的最高排名的任务。例如,框304可以表示配置用于用户简档的任何设备(诸如设备102(1)-102(N))上的应用Z中的最近查看和/或修改的任务。在另一个示例中,框304可以表示如由使用频率标识和/或如由用户在用户偏好中指定的最喜爱任务。

框312可以表示用户简档中的第五个最近查看和/或修改的任务,以及诸如网站C之类的网站上的最近查看和/或修改的任务。

在所图示的示例中,框306、308、310、312和314可以表示用户简档中排名第二到第六的任务。在一些示例中,所显示的任务可以表示不同应用和/或网站中的最近呈现和/或修改的任务。在一些示例中,所显示的任务可以表示相同网站和/或不同网站中的最近呈现和/或修改的任务。例如,框306,应用A中的任务1,可以表示用户简档上第二个最近呈现和/或修改的任务,以及应用A中最近呈现和/或修改的任务。框310,应用A中的任务2,可以表示用户简档上第四个最近呈现和/或修改的任务,以及应用A中第二个最近呈现和/或修改的任务。框314,应用A中的任务3,可以表示用户简档上第六个最近呈现和/或修改的任务,以及应用A中第三个最近呈现和/或修改的任务。在一些示例中,应用A可以表示电子邮件应用,并且任务1、2和3可以表示三个不同的电子邮件编写。经由图形用户接口,显示器302可以使得能够选择电子邮件中的哪些以便进一步查看和/或修改。

作为另一个说明性示例,应用A可以表示视频服务,并且任务1、2和3可以表示最近通过视频服务在用户简档上呈现的三个不同电影。显示器302可以使得能够选择这三个电影之一以用于连续的呈现。可以提供建议的用户动作,如在框316中所图示的。建议的用户动作可以例如是在用户简档上的由视频服务建议的第四个电影、针对用户简档上的这三个最近查看的电影中的每一个的用户调查的请求、或者用户简档上的任何其它特定于应用的动作。

在一些示例中,交互式显示缩略图306、310和314可以显示充足的任务上下文数据以用于在应用A中的任务1、任务2和任务3之间进行区分以便允许用户就选择做出知情决策。在各种示例中,为显示而呈现的任务上下文数据可以包括应用标题、任务标题和/或最后查看任务的时间。

在说明性示例中,框316、318和320可以包括特定于应用的数据,诸如,如在交互式显示缩略图316中图示的来自应用A的建议的用户动作、如在交互式显示缩略图318中图示的来自应用B的建议的用户动作、以及如在交互式显示缩略图320中图示的用于应用A的应用提升。特定于应用的数据可以包括建议的用户动作和/或应用提升,以使用户参与到涉及使用的任务或者最近查看的应用和/或网站中。作为说明书示例,智能电视上的应用可以显示直播或录制的节目,并且智能电话或另一个辅助设备上的应用可以提供关于节目的信息。在一些示例中,智能电话或者另一个辅助设备上的应用可以提供涉及节目的建议的用户动作,诸如针对才艺表演上的最佳歌手的现场投票等。

在一些示例中,交互式显示缩略图304、306、308、310、312、314、316、318和320可以允许通过诸如图形用户接口240之类的图形用户接口来选择任务、应用和/或网站中的至少一个以用于任务的参与或再参与。响应于接收到多个交互式显示缩略图中的至少一个的选择,设备300可以启动所选应用和/或网站以用于任务参与或再参与。

图4图示了与之前各图一致的跨设备和/或跨操作系统任务连续性系统的示例网络环境。网络环境400可以包括分布式服务平台402和/或接近网络404。

分布式服务平台402可以包括一个或多个分布式计算资源406,诸如分布式计算资源406(1)-406(N)。示例支持其中(多个)分布式计算资源406可以包括一个或多个计算设备(诸如,(多个)设备102)的情形,所述一个或多个计算设备在簇或其它组配置中操作以共享资源,均衡负载,改善性能,提供容错(fail-over)支持或冗余性,或者用于其它目的。(多个)分布式计算资源406可以属于各种类目或分类的设备,诸如传统服务器型设备、桌面计算机型设备、移动型设备、专用型设备、嵌入型设备和/或可穿戴型设备。因而,尽管图示为桌面型计算机,但是(多个)分布式计算资源406可以包括品种多样的设备类型并且不限于特定类型的设备。(多个)分布式计算资源406可以表示但不限于瘦客户端、桌面型计算机、服务器计算机、web服务器计算机、个人计算机、移动计算机、膝上型计算机、平板计算机、可穿戴计算机、植入式计算设备、电信设备、机动车计算机、启用网络的电视、终端、个人数据助手(PDA)、游戏操控台、游戏设备、工作站、媒体播放器、个人视频记录器(PVR)、机顶盒、相机、用于包括在计算设备中的集成组件、器具、或者能够经由网络连接410连接到(多个)其它设备408(诸如,(多个)设备102)的任何其它种类的计算设备。

在一些示例中,网络连接410可以是有线或无线的,并且响应于(多个)设备408经由网络连接410可发现,网络连接410可以能够从(多个)设备408向分布式服务平台402以及从分布式服务平台402向(多个)设备408进行数据传送。

在所图示的示例中,分布式服务平台402可以包括至少一个参考用户简档412。在一些示例中,参考用户简档412可以存储用户简档数据,包括但不限于特定于应用的数据、特定于网站的数据、任务上下文数据、用户偏好和/或与用户的简档相关联的任何其它数据。参考用户简档412可以存储来自配置到用户简档的多个设备中的至少一个的用户简档数据。在一些示例中,参考用户简档412可以充当用于任务连续性系统中的多个设备中的至少一个的用户简档数据的中心参考点。

在所图示的示例中,参考用户简档412可以包括(多个)应用414,诸如应用414(a)-(N)。(多个)应用414可以进一步存储任务上下文数据416,诸如任务上下文数据416(a)-(N)。参考用户简档412还可以包括跨设备活动模块418,其配置成通过(多个)设备408和分布式服务平台402之间的数据传送来更新用户简档。基于(多个)设备408的可发现性,跨设备活动模块418可以规律地或者周期性地更新参考用户简档412。更新可以至少基于(多个)设备408上的应用使用、网站使用和/或用户偏好改变。从(多个)设备408到参考用户简档412的更新可以使得分布式服务平台402能够维持最新参考用户简档数据。在一些示例中,最新参考用户简档数据可以涵盖跨配置到参考用户简档的任何数目的设备的用于应用和/或网站中的任务的最新的任务上下文数据。

跨设备活动模块418可以经由网络连接410可操作地连接到(多个)设备408。在一些示例中,响应于一个或多个设备408可发现(即,设备通电,设备从低电力状态转变出来,设备的飞行模式被禁用,或者使设备对于网络而言变得可发现的任何其它输入),跨设备活动模块418可以从一个或多个设备408上的数据存储装置拉取用户简档数据。在一些示例中,跨设备活动模块418可以基于从一个或多个设备408中的活动馈送引擎接收到任务完成信号而从一个或多个设备408上的数据存储装置拉取用户简档数据。

在各种示例中,跨设备活动模块418可以在周期性间隔处从一个或多个设备408上的数据存储装置拉取用户简档数据。在这样的示例中,应用414(a)中的任务416(a)可以在设备408(1)上修改。在修改期间,应用储存库模块可以将用于任务416(a)的任务上下文数据保存到设备408(1)中的数据存储装置。周期性地遍及任务416(a)的修改,跨设备活动模块418可以通过网络连接410从设备408(1)中的活动馈送引擎420(1)(诸如,活动馈送引擎242)拉取经更新的用户简档数据以包括任务416(a)的任务上下文数据。跨设备活动模块418可以在参考用户简档412的应用414(a)中保存经更新的用户简档数据,因而使得能够实现最为最新的参考用户简档数据。在一些示例中,周期性间隔可以是任何时间段,诸如5秒钟或10秒钟,或者被确定对于更新而言是合理的任何其它时间段。在一些示例中,周期性间隔可以是用于更新的用户所指定的时间,如至少在参考用户简档中的用户偏好中所设定的。

在一些示例中,响应于(多个)设备408可发现,跨设备活动模块418可以向其发送参考用户简档数据。在这样的示例中,响应于诸如设备408(2)之类的设备通过网络连接410可发现,跨设备活动模块418可以检测它。跨设备活动模块418可以比较设备上的用户简档与参考用户简档412。跨设备活动模块418可以将参考用户简档数据推送给设备上的用户简档数据以更新设备上的用户简档。附加地,跨设备活动模块可以从设备拉取用户简档数据以更新参考用户简档412。

跨设备活动模块418在另一个示例中可以基于经由图形用户接口(诸如图形用户接口240)推送更新的命令而向(多个)设备408(诸如,设备408(1)和设备408(2))显式地推送任务上下文数据。例如,任务416(a)可以在设备408(1)上修改,并且可以经由活动馈送引擎420(1)和网络连接410向跨设备活动模块418给予命令以向设备408(2)推送用户简档数据,包括用于任务416(a)的经更新的任务上下文数据。在这样的示例中,任务416(a)可以在设备408(1)和/或设备408(2)上单独地或者同时地继续。

网络环境400还可以包括接近网络404以使得能够实现(多个)设备408之间的数据传送。在一些示例中,包括但不限于特定于应用的数据、特定于网站的数据、任务上下文数据、用户偏好以及与应用和/或网站使用相关联的任何其它数据的用户简档数据可以经由接近网络连接424而在设备之间共享。接近网络连接424可以是安全的有线或无线连接并且可以能够在诸如设备408(1)和408(2)之类的(多个)设备408之间进行双向数据传送。在接近网络中,(多个)设备408至少在附近对于彼此而言可发现。接近网络中的可发现性可以通过设备内的接近接口(诸如,接近接口214)来确定。接近接口可以包括接近传感器和/或有线连接。在一些示例中,设备之间的数据共享可以是显式的。在一些示例中,设备之间的数据共享可以是隐式的。

在显式传送中,相应设备中的活动馈送引擎可以至少部分地基于图形用户接口(诸如,图形用户接口240)上的输入在设备408(1)和408(2)之间推送用户简档数据。例如,如果任务416(a)在设备408(1)上修改,并且用户想要在设备408(2)上修改任务416(a),则包括任务416(a)的任务上下文数据的经更新的用户简档数据可以经由图形用户接口上的输入而推送给设备408(2)。在这样的示例中,设备408(1)和408(2)中的(多个)相应活动馈送引擎420将使用户简档数据跨相应设备同步。

在隐式传送中,响应于(多个)设备408对于彼此而言可发现,(多个)设备408可以在(多个)设备408之间自动地传送经更新的用户简档数据。例如,设备408(2)可以是移动设备,并且设备408(1)可以是静止设备。在进行中时,设备408(2)上的应用储存库模块可以将任务416(a)的经更新的任务上下文数据存储在设备408(2)上的数据存储装置中以更新用户简档。然后,响应于设备408(2)处于设备408(1)附近,设备408(2)的活动馈送引擎420可以通过接近网络连接424向设备408(2)传送包括任务416(a)的任务上下文数据的经更新的用户简档数据,由此使得能够实现经更新的用户简档。

在各种示例中,设备408(1)和408(2)中的相应应用储存库模块可以在分别在设备408(1)和408(2)上查看和/或修改任务416(a)和416(b)时保存任务416(a)和416(b)的任务上下文数据。变得对于彼此而言可发现的设备408(1)和设备408(2)可以使活动馈送引擎420(1)传送来自设备408(1)的经更新的用户简档数据(包括任务416(a)的任务上下文数据)并且接收来自设备408(2)的经更新的用户简档数据(包括任务416(b)的任务上下文数据)。并发地,活动馈送引擎420(2)可以传送来自设备408(2)的经更新的用户简档数据(包括任务416(b)的任务上下文数据)以及接收来自设备408(1)的经更新的用户简档数据(包括任务416(a)的任务上下文数据)。

在所图示的示例中,网络环境400包括分布式服务平台402和接近网络404。在这样的环境中,可以使用分布式服务平台402和接近网络404二者在设备之间共享用户简档数据,其包括特定于应用的数据、特定于网站的数据、任务上下文数据、用户偏好和/或与应用和/或网站使用相关联的任何其它数据。由此,确保了参考用户简档数据和跨任何数目的设备的用户简档数据包含相同数据。

例如,如果设备408(1)和408(2)接近,但是不能够经由网络连接410连接到分布式服务平台402,则设备408(1)和408(2)可以通过接近网络连接424而经由相应活动馈送引擎传送和接收更新的用户简档数据。在稍后的时间处,设备408(1)能够经由网络连接410连接到分布式服务平台402。响应于连接,跨设备活动模块418可以认识到设备408(1)的可发现性,并且拉取用户简档数据(包括但不限于特定于应用的数据、特定于网站的数据、任务上下文数据、用户偏好以及与应用和/或网站使用相关联的任何其它数据),并且更新分布式服务平台402中的参考用户简档412。在另一个示例中,用户可以在获得网络连接410之后从设备408(1)向分布式服务平台402推送用户简档数据。用户然后可以拾取任何(多个)设备408并且在参考用户简档412中的任何应用和/或网站上继续任务。

说明性过程

图5图示了与之前各图一致的跨设备和/或跨操作系统任务连续性系统的示例过程。

在说明性示例中,可以在时间T=0处在设备506(1)(诸如设备102(1))上的应用504(1)中呈现和/或修改任务502。可以继续呈现和/或修改任务502直至时间T=N为止。在时间T=N处,可以在设备506(1)上的应用504(1)中停止任务502。而且在T=N处,可以在设备506(2)(诸如设备102(2))上的应用504(2)中呈现和/或修改任务502。

在一些示例中,设备506(1)上的应用504(1)可以是与设备506(2)上的应用504(2)相同的应用。在各种示例中,设备506(1)上的应用504(1)可以是与设备506(2)上的应用504(2)不同的应用。

在说明性示例中,可以在设备506(1)上呈现和/或修改任务502直至时间T=N为止。在设备506(2)上,可以从时间T=N起呈现和/或修改任务502直至任务502完成为止。任务502的完成可以通过经由输入接口的用户输入和/或通过应用和/或网站来指定。在一些示例中,响应于任务502的完成,设备506(2)中的活动馈送引擎可以经由网络508而跨多个设备和/或向分布式服务平台中的参考用户简档发送任务完成信号。网络508可以包括分布式服务平台和/或接近网络。在各种示例中,数据可以经由任何其它网络平台进行传送。

在各种示例中,任务完成信号可以更新多个设备中的每一个中的用户简档和/或参考用户简档,使得可以从多个最近查看和/或修改的任务中移除任务。任务从多个最近查看和/或修改的任务中的移除可以至少部分地基于任务的类型、应用和/或网站的类型、和/或用户设置。例如,任务502可以是一个电子邮件,针对其的编写在设备506(1)上开始,而编写在设备506(2)上完成。一旦电子邮件的编写完成并且电子邮件被发送,则可以由电子邮件提供商保存所发送的版本。因此,可以从多个最近呈现和/或修改的任务中移除电子邮件而对任务连续性没有任何劣化。

在一些示例中,完成任务可以使任务转变到另一个状态中。在说明性示例中,应用504(1)可以是设备506(1)上的地图绘制应用,设备506(1)可以是桌面型计算机。任务502可以是行车指引(driving direction)的集合。设备506(2)可以是智能电话,并且可以在地图绘制应用上显示任务502。响应于到达目的地,用户和/或应用504(2)可以指定任务的完成。响应于任务完成,设备506(2)上的活动馈送引擎可以跨多个设备和/或向参考用户简档发送任务完成信号。任务完成信号然后可以促使任务502转变到新指引集合,诸如在设备506(1)和/或设备506(2)中的一个或二者上的返程指引。

在各种示例中,任务的完成和/或设备506(2)上的活动馈送引擎跨多个设备和/或向参考用户简档发送任务完成信号可以促成与在设备506中的一个或多个上完成的任务相关联的新任务502。响应于任务完成,设备506(2)上的活动馈送引擎可以促成在相同或不同应用中的涉及所完成的任务和/或所完成的任务的上下文的新任务。例如,响应于如在上文中讨论的,到达目的地,用户和/或应用504(2)可以指定任务的完成。响应于任务完成,设备506(2)上的活动馈送引擎可以促成新任务502,其可以是与目的地相关联的活动或商家列表的呈现。在一些示例中,可以在设备506(2)上呈现新任务502而不是在设备506(1)上呈现,直至设备506(1)接近设备506(2)为止。

图6图示了与图1-4一致的跨设备和/或跨操作系统任务连续性系统的另一个示例过程。

在所图示的示例中,可以在设备606(1)(诸如设备102(1))上的应用604(1)中呈现和/或修改任务602。同时地,可以在设备606(2)上的应用604(2)中呈现和/或修改任务602,由此使得能够实现任务602在至少两个设备606上的呈现和/或修改。

在一些示例中,设备606(1)上的应用604(1)可以是与设备606(2)上的应用604(2)相同的应用。在各种示例中,设备606(1)上的应用604(1)可以是与设备606(2)上的应用604(2)不同的应用。

在一些示例中,可以经由诸如分布式服务平台402和/或接近网络404之类的网络608来传送用户简档数据,其包括特定于应用的数据、特定于网站的数据、任务上下文数据、用户偏好和/或与应用和/或网站使用相关联的任何其它数据。

图7和8是描绘了用于跨设备和/或跨操作系统任务连续性系统的示例过程的流程图。示例过程的操作在独立的框中图示并且参照那些框进行概括。过程被图示为逻辑框流,其中每一个框可以表示可以实现在硬件、软件或其组合中的一个或多个操作。

图7图示了与之前各图一致的跨设备和/或跨操作系统任务连续性系统上的过程流。图7图示了其中存在一个源设备和一个目标设备的过程流,但是这仅仅是示例,并且可以存在多于一个源设备和/或多于一个目标设备。

在框702处,活动馈送引擎参与源设备上的任务,源设备诸如是设备102、200、408、506和/或606。

在框704处,活动馈送引擎将任务上下文数据保存到至少在源设备上的用户简档。在一些示例中,分布式服务平台中的跨设备活动模块,诸如跨设备活动模块418,可以从源设备拉取经更新的用户简档数据并且将其保存在参考用户简档中。

在框706中,I/O接口发现目标设备连接到网络。在一些示例中,使设备在网络中可发现可以包括,给设备通电,设备从低电力状态转变出来,设备的飞行模式被禁用,或者使设备变得对于网络而言可发现的任何其它输入。在各种示例中,设备可以是可发现的,并且设备中的相应活动馈送引擎可以在源和目标设备之间传送和接收用户简档数据。在至少一个示例中,响应于可发现性,相应活动馈送引擎可以在源和目标设备以及跨设备活动模块之间传送和接收用户简档数据。

在一些示例中,用户简档数据从源设备到目标设备和/或跨设备活动模块的传送可以是隐式的。在各种示例中,任务上下文数据从源设备到目标设备和/或跨设备活动模块的传送可以是显式的。

在框708中,显示模块可以使得在目标设备上的交互式缩略图显示器上显示之前呈现的任务。在一些示例中,显示模块可以显示之前呈现和/或修改的任务的一个或多个相关任务上下文数据、特定于应用和/或网站的数据、应用建议的用户动作以及应用提升。

在框710中,图形用户接口经由I/O接口输入可以接收之前呈现的任务的选择。在一些示例中,选择可以是应用建议的用户动作或应用提升中的至少一个。

在框712中,响应于框710中的任务选择,活动馈送引擎启动目标设备上的应用。在一些示例中,活动馈送引擎可以启动在源设备上在其中最后呈现和/或修改任务的相同应用。在一些示例中,活动馈送引擎可以启动不同应用,其与在源设备上在其中最后呈现和/或修改任务的应用兼容。在各种示例中,活动馈送引擎可以启动网站,其与在源设备上在其中最后呈现和/或修改任务的应用兼容。

在框714中,应用储存库模块从数据存储装置中的用户简档检索相关任务上下文数据,以使得能够无缝地再参与在目标设备上的应用和/或网站上的任务,诸如在框716中。

图8图示了用于利用与之前各图一致的跨设备和/或跨操作系统任务连续性系统进行跨应用任务修改的过程流。

在框802中,活动馈送引擎经由向与图形用户接口相关联的I/O接口的输入而参与第一应用中的文档1,第一应用诸如是用于使显示模块引起文档的显示以用于在源设备上查看和/或修改的应用A,源设备诸如是设备102(1)、200、408、506和/或606。在一些示例中,活动馈送引擎可以参与源设备上的网站上的文档1。

在框804中,在各种示例中,活动馈送引擎可以隐式地和/或显式地使文档1保存到源设备中的用户简档,源设备诸如是设备102(1)或者任何之前描述的设备。在一些示例中,源设备中的活动馈送引擎可以隐式地和/或显式地使文档1经由接近网络而保存到目标设备中的用户简档,目标设备诸如是设备102(2)或者任何其它之前描述的设备。在一些示例中,活动馈送引擎可以隐式地和/或显式地使文档1经由跨设备活动模块而保存在参考用户简档中。在各种示例中,活动馈送引擎可以隐式地和/或显式地使文档1保存到源设备中的用户简档,目标设备中的用户简档,以及分布式服务平台中的参考用户简档。

在框806中,活动馈送引擎经由图形用户接口在第二应用(诸如应用B)中再参与文档1,并且显示模块可以显示文档1以用于在第二应用中查看和/或修改。响应于再参与,可以呈现文档1任务上下文数据,包括从第一应用添加的任务内容数据。在一些示例中,活动馈送引擎可以在源设备上的第二应用中再参与文档1。在各种示例中,活动馈送引擎可以在目标设备上的第二应用中再参与文档1。

在框808中,在一些示例中,活动馈送引擎可以隐式地和/或显式地将文档1保存到源设备中的用户简档,源设备诸如是设备102(1)或者任何之前描述的设备。在一些示例中,源设备中的活动馈送引擎可以经由接近网络隐式地和/或显式地将文档1保存到目标设备中的用户简档,目标设备诸如是设备102(2)或者任何其它之前描述的设备。在一些示例中,活动馈送引擎可以经由跨设备活动模块而隐式地和/或显式地将文档1保存在参考用户简档中。在各种示例中,活动馈送引擎可以隐式地和/或显式地将文档1保存到源设备中的用户简档,目标设备中的用户简档,以及分布式服务平台中的参考用户简档。

在框810中,活动馈送引擎经由图形用户接口在第三应用(诸如,应用C)中再参与文档1,并且显示模块可以使得显示文档1以用于在第三应用中查看和/或修改。响应于再参与,可以呈现文档1任务上下文数据,包括从第一和第二应用添加的任务内容数据。在一些示例中,活动馈送引擎可以在源设备上的第三应用中再参与文档1。在各种示例中,活动馈送引擎可以在目标设备上的第三应用中再参与文档1。在一些示例中,目标设备可以是如在框806中使用的相同设备,或者其可以是不同设备,诸如设备102(N)。

在框812中,在一些示例中,活动馈送引擎可以隐式地和/或显式地将文档1保存到源设备中的用户简档,源设备诸如是设备102(1)。在一些示例中,源设备中的活动馈送引擎可以经由接近网络隐式地和/或显式地将文档1保存到目标设备中的用户简档,目标设备诸如是设备102(2)。在一些示例中,活动馈送引擎可以经由跨设备活动模块隐式地和/或显式地将文档1保存在参考用户简档中。在各种示例中,活动馈送引擎可以隐式地和/或显式地将文档1保存到源设备中的用户简档,目标设备中的用户简档,以及分布式服务平台中的参考用户简档。

在框814中,活动馈送引擎经由图形用户接口在第一应用中再参与文档1。响应于再参与,可以呈现文档1任务上下文数据,包括从第一、第二和第三应用添加的任务内容数据。在一些示例中,活动馈送引擎可以在源设备上的第一应用中再参与文档1,源设备诸如是设备102(1)或者任何之前描述的设备。在各种示例中,活动馈送引擎可以在目标设备上的第一应用中再参与文档1,目标设备诸如是设备102(2)-102(N)或者任何其它之前描述的设备。

在软件的上下文中,操作表示存储在一个或多个计算机可读存储介质上的计算机可执行指令,其在由一个或多个处理器执行时使得一个或多个处理器执行所陈述的操作。一般地,计算机可执行指令包括执行特定功能或者实现特定抽象数据类型的例程、程序、对象、模块、组件、数据结构等。过程还可以在分布式计算环境中实践,其中由通过通信网络链接的远程处理设备来执行功能。在分布式计算环境中,计算机可执行指令可以位于本地和/或远程计算机存储介质中,包括存储器存储设备中。

在硬件的上下文中,一些或全部框可以表示执行所陈述的操作的专用集成电路(ASIC)或其它物理组件。

据以描述操作的次序不旨在被解释为限制,并且任何数目的所述操作可以以任何次序执行,以任何次序组合,被细分成多个子操作,和/或并行地执行以实现所述过程。

示例条款

A:一种方法,包括:将配置到用户简档的第一设备和配置到用户简档的第二设备连接到一个或多个网络;在第一设备上的应用上运行第一任务,应用包含至少部分地包括在最近用户输入上的第一任务上下文数据;将第一任务上下文数据作为第一用户简档更新保存在第一设备上的数据存储装置中;在第二设备上显示包括第一任务的多个最近查看的任务;在第二设备上选择第一任务;至少部分地基于选择第一任务而启动第二设备上的应用;在第二设备上的应用上运行第一任务,第二任务上的应用包括第一上下文数据;以及将第二上下文数据作为第二用户简档更新存储在第二设备上的数据存储装置中。

B:如段落A描述的方法,其中第一设备上的应用和第二设备上的应用是相同应用。

C:如段落A描述的方法,其中第一设备上的应用被配置为应用并且第二设备上的应用被配置为web浏览器。

D:如段落A描述的方法,其中第一设备被配置在操作系统上并且第二设备被配置在相同操作系统上。

E:如段落A描述的方法,其中第一设备被配置在第一操作系统上并且第二设备被配置在第二操作系统上,第二操作系统不同于第一操作系统。

F:如段落A-E中任一项描述的方法,其中一个或多个网络至少包括分布式服务平台。

G:如段落F描述的方法,其中分布式服务平台进一步包括:参考用户简档;以及跨设备活动模块,该跨设备活动模块被配置成传送和接收来自被配置为用户简档的多个设备中的至少一个的用户简档数据。

H:如段落A-E中任一项描述的方法,其中一个或多个网络至少包括接近网络架构。

I:如段落A-H中任一项描述的方法,其中多个最近查看的任务中的至少一个的显示还包括特定于应用的数据,特定于应用的数据至少部分地基于在第一设备上的应用上运行第一任务并且包括以下中的至少一个:应用建议的用户动作;和/或应用提升。

J:如段落A-I中任一项描述的方法,其中在第一设备上的应用上运行第一任务与在第二设备上的应用上运行第一任务接连地发生。

K:一种在其上具有计算机可执行指令的计算机可读介质,计算机可执行指令响应于执行而配置计算机执行如段落A-J中任一项描述的方法。

L:一种设备或系统,包括:处理器;以及耦合到处理器的计算机可读介质,计算机可读介质包括用于配置一个或多个设备以执行如段落A-J中任一项描述的方法的指令。

M:一种设备或系统,包括:用于处理的部件;以及耦合到用于处理的部件的用于存储的部件,用于存储的部件存储用于配置一个或多个设备以执行如段落A-J中任一项描述的方法的指令。

N:一种方法,包括:将第一设备和第二设备配置到分布式服务平台中的参考用户简档;在第一设备上的应用上运行第一任务,应用包含第一任务上下文数据,第一任务上下文数据至少包括最近用户输入;将第一任务上下文数据保存到第一设备上的数据存储装置中的第一用户简档;经由网络连接将第一设备连接到分布式服务平台中的参考用户简档;将第一用户简档更新发送给参考用户简档;更新参考用户简档,使得第一用户简档和参考用户简档包含相同数据;将第二设备连接到分布式服务平台中的参考用户简档;将参考用户简档发送给第二设备上的数据存储装置中的第二用户简档;更新第二用户简档,使得第二用户简档和参考用户简档包含相同数据;在第二设备上显示多个最近查看的任务中的至少一个,该多个最近查看的任务至少包括第一任务;在第二设备上选择第一任务;至少部分地基于选择第一任务而启动第二设备上的应用;在第二设备上的应用上运行第一任务,该应用包含第一任务上下文数据;以及至少部分地基于第二设备上的用户输入而更新第二用户简档。

O:如段落N描述的方法,其中在第二设备上显示多个最近查看的任务中的至少一个被配置在排名结构中,排名结构至少基于最后由用户在其处查看多个最近查看的任务中的每一个的时间。

P:如段落N或O描述的方法,其中排名结构进一步基于以下中的至少一个:用户偏好;应用使用频率;应用查看持续时间;网站使用频率;网站查看持续时间;应用用户建议的动作;和/或应用提升。

Q:如段落N-P中任一项描述的方法,还包括:将第三设备配置到用户简档;经由接近网络连接将第二设备和第三设备连接到接近网络;经由接近网络连接将第二用户简档更新从第二设备发送给第三设备;更新第三设备上的用户简档,使得第二设备上的用户简档和第三上的用户简档包含相同数据;在第三设备上显示多个最近查看的任务中的至少一个,该多个最近查看的任务至少包括第一任务;在第三设备上选择第一任务;至少部分地基于选择第一任务而启动第三设备上的应用;在第三设备上的应用上运行第一任务上下文数据;以及更新第三设备上的用户简档。

R:如段落N-Q中任一项描述的方法,还包括:在第二设备上完成第一任务;将任务完成信号发送给参考用户简档、第一设备上的用户简档和/或第二设备上的用户简档;响应于接收到任务完成信号而从参考用户简档、第一设备上的用户简档和/或第二设备上的用户简档删除任务。

S:在其上具有计算机可执行指令的计算机可读介质,计算机可执行指令响应于执行而配置计算机执行如段落N-R中任一项描述的方法。

T:一种设备或系统,包括:处理器;以及耦合到处理器的计算机可读介质,计算机可读介质包括配置一个或多个设备以执行如段落N-R中任一项描述的方法的指令。

U:一种设备或系统,包括:用于处理的部件;以及耦合到用于处理的部件的用于存储的部件,用于存储的部件存储用于配置一个或多个设备以执行如段落N-R中任一项描述的方法的指令。

V:在其上具有计算机可执行指令的计算机可读介质,计算机可执行指令响应于执行而配置设备执行包括以下各项的操作:标识用户简档中的多个应用上的多个任务,用户简档包括用户简档数据;标识在其处由用户最后在设备上查看多个任务中的每一个的时间;至少部分地基于在其处由用户最后查看多个任务中的每一个的时间来对多个应用上的多个任务排名;至少部分地基于排名而提供多个任务中的至少一个进行显示;接收来自所显示的多个任务中的特定任务的选择;修改特定任务;将用于特定任务的任务上下文数据保存到数据存储装置,任务上下文数据至少包括特定任务的修改;以及利用特定任务的任务上下文数据来更新用户简档数据。

W:如段落V描述的计算机可读介质,其中排名进一步基于以下中的至少一个:用户偏好、应用使用频率、应用查看持续时间、网站使用频率、网站查看持续时间、应用用户建议的动作,和/或应用提升。

X:如段落V或W描述的计算机可读介质,动作还包括:将设备连接到分布式服务平台,该分布式服务平台至少包括配置成存储参考用户简档数据的参考用户简档以及跨设备活动模块;将用户简档数据从设备发送给参考用户简档以利用用户简档数据更新参考用户简档数据,使得参考用户简档和用户简档包含相同数据。

Y:如段落V-X中任一项描述的计算机可读介质,动作还包括:将第二设备连接到分布式服务平台,其中第二设备被配置到参考用户简档,并且包含在配置成存储用户简档数据的第二数据存储装置中的第二用户简档;将参考用户简档数据发送给第二用户简档;以及利用参考用户简档数据更新第二用户简档数据,使得第二用户简档数据至少包括用于特定任务的任务上下文数据。

Z:如段落V-Y中任一项描述的计算机可读介质,动作还包括:将设备连接到接近网络中的第二设备;将用户简档数据从设备发送给第二设备中的数据存储装置;以及利用来自设备的用户简档数据更新第二设备上的第二用户简档数据。

AA:一种设备或系统,包括:处理器;以及如段落V-Z中任一项描述的耦合到处理器的计算机可读介质。

AB:一种设备,包括:参考用户简档,参考用户简档配置成至少存储任务上下文数据和用户偏好的集合;跨设备活动模块,跨设备活动模块:通过网络连接到一个或多个设备;从多个设备中的至少一个接收任务上下文数据;将任务上下文数据保存到参考用户简档;以及将任务上下文数据发送给多个设备中的至少一个。

AC:一种设备,包括:用户简档,用户简档被配置成至少存储任务上下文数据和用户偏好的集合;多个应用,应用被配置成存储特定于应用的数据;活动馈送引擎,活动馈送引擎:通过网络连接到一个或多个设备;从多个设备中的至少一个接收任务上下文数据;将任务上下文数据保存到数据存储装置中的用户简档;以及将任务上下文数据发送给第二设备。

AD:如段落AC描述的设备,活动馈送引擎进一步:接收任务完成信号;以及响应于接收到任务完成信号,从数据存储装置中的用户简档移除任务上下文数据。

AE:如段落AC或AD描述的设备,活动馈送引擎进一步:接收任务完成信号;以及响应于接收到任务完成信号,至少部分地基于接收到任务完成信号而启动应用上的新任务;以及在设备上的应用上运行新任务。

总结

尽管已经以特定于结构特征和/或方法动作的语言描述了主题,但是要理解到,在随附权利要求中限定的主题未必限于所描述的特定特征或动作。相反,特定特征和动作是作为实现权利要求的说明性形式而公开的。

除其它之外,诸如“可以”、“能够”、“可能”或“也许”之类的条件性语言,除非特别地以其它方式陈述,否则在本上下文内被理解为一般地用于表示,某些示例包括而其它示例不包括某些特征、元件和/或步骤。因而,这样的条件性语言一般不旨在暗示,特征、元件和/或步骤以任何方式被要求用于一个或多个示例或者一个或多个示例必然地包括这样的逻辑:其用于在具有或没有用户输入或促进的情况下决定是否包括这些特征、元件和/或步骤或者要在任何特定示例中执行它们。

诸如短语“X、Y或Z中的至少一个”之类的连接性语言应被理解为表示物品、项目等可以是X、Y或Z或其组合,除非特别地以其它方式陈述。

本文中描述和/或附图中描绘的任何例程描述、流程图中的框或元件应当理解为潜在地表示代码的部分、片段或模块,其包括用于实现例程中的特定逻辑功能或元件的一个或多个可执行指令。在本文中描述的示例的范围内包括可替换示例,其中可以删除元件或功能,或者与示出或讨论的次序不同地执行元件或功能,包括基本上同步地或者以相反次序,这取决于所牵涉的功能性,如本领域技术人员所将理解到的那样。

应当强调的是,可以对以上描述的示例做出许多变形和修改,其中的元件要理解为处于其它可接受的示例之中。所有这样的修改和变形旨在在本文中包括在本公开的范围内并且受以下权利要求所保护。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1