同步中断的防止的制作方法

文档序号:9476209阅读:430来源:国知局
同步中断的防止的制作方法
【专利说明】同步中断的防止
[0001]背景
[0002]基于云的计算已使跨多个设备复制用户界面的多个方面成为可能。当用户具有与同一在线身份、应用、服务、平台等相关联的多个计算设备时,通常期望在那些设备间同步信息以便为附属装置提供一致或重复的状态。特别是,可能期望用户交互性的用户界面的多个方面在用户的多个设备间保持一致。由于大多数用户界面是或者由用户或者以其他方式可更改的和可定制的,因此这可能是一个问题。用户可以添加用户界面元素、移动元素、改变用户界面的行为或外观特性等等。为了一致性,这种变化可以从它们始发的设备传播至具有用户界面的实例的其他设备。
[0003]例如,假定用户具有两个计算设备。每个设备上已安装了具有用户界面的应用程序的实例。此外,假定存在一个同步机制以使对于任一设备上用户界面的变化被传播至另一个设备。这一机制可以是保持用户界面的状态(例如,哪些元素在用户界面中、那些元素的布局、等等)的对等系统或基于网络的服务(例如,云服务)。无论通过哪一种机制,对一个设备上用户界面的变化被复制到另一个设备。
[0004]然而,正如发明人唯一观察到的,用户界面更新可能是有问题的。正如发明人所观察到的,由于用户界面本质是交互性的,因此在用户界面可能中断被指向所述用户界面的用户的活动时接收到更新。用户可能处在向用户界面输入以执行活动的过程中。如果突然应用对正在使用的用户界面的更新,则该活动可能被中断。例如,如果用户正在拖拽诸如应用图标这样的图形并且更新使得用户界面中断该拖拽,则该图标可能最终以非用户想要的方式被操纵。
[0005]以下描述了与最小化这种用户中断有关的技术。
[0006]概述
[0007]包括以下概述仅仅是为了介绍在以下详细描述中讨论的一些概念。该概述不是完整性的并且不意图划定所要求保护的主题的范围,所述范围由结尾处呈现的权利要求书提出。
[0008]此处描述了由计算设备上执行的应用所执行的技术。应用可以是由计算设备的显示器上显示的图形对象组成的图形用户界面(GUI)。应用也可以具有由所述应用管理和存储的状态数据。状态数据可以指定GUI的特征和布局。图形对象可以根据状态数据来显示。应用可以通过监控经由输入设备与⑶I的用户交互、并且根据与⑶I的用户交互来将阈值设为不同水平,来动态地将阈值调节为不同水平。接收到来自外部源的指向GUI的操作。每个操作具有对所述操作专用的相应优先级。优先级和阈值水平被比较以确定是否实现这些操作。
[0009]以下将参照结合附图考虑的以下详细描述来说明伴随特征中的许多特征。
[0010]附图简述
[0011]从结合附图阅读的以下详细描述将更好地理解本发明的描述,其中相同的附图标记用户指示所附描述中相同的部分。
[0012]图1示出应用以及显示于显示器上的用户界面。
[0013]图2示出使用与所述应用或其主机计算设备的用户交互来确定如何处理影响所述用户界面的外部更新的实施例。
[0014]图3示出用于处理提交操作的过程。
[0015]图4示出用于阈值更新的过程。
[0016]图5示出其上可实现此处描述的实施例的计算设备的示例。
[0017]详细描述
[0018]以下讨论的实施例涉及如何管理用户界面更新,无论是通过与另一实例的同步或者无论这种更新是否本地始发。首先,将总体地讨论用户界面同步。然后讨论着眼于规范如何且何时应用更新的用户活动的体系结构。说明这些实施例的细节,然后讨论替代的实施例和实现方式。
[0019]图1示出应用100以及显示用户界面104的显示器102。显示器102是稍后参照图5讨论的任何任意计算设备的一部分。应用100安装于所述计算设备上并且由所述计算设备执行。应用100具有用户界面(UI)状态106,所述用户界面状态106控制用户界面104的行为和外观。UI状态可能是简单的数据库或标记语言文件的形式。用户界面104具有用户界面元素108,诸如应用瓦片或图标、菜单、可滚动表面、可选项的列表、应用加载元件、信息面板或者任何其他类型的用户界面元素。
[0020]用户界面元素108中的许多可以是交互式的。用户可能经由输入设备提供输入以致动用户界面元素108、以移动用户界面元素108、以将文本键入元素、以平移元素、以删除用户界面元素108、等等。在用户改变诸如布局(哪些元素存在或者在哪里)、外观、功能等用户界面106的特征时,可以相应地更新UI状态106以反映用户界面108的状态。例如,如果用户添加用于加载应用的图标,或如果用户改变用户界面108的背景图像,则更新UI状态106以反映那些变化。如果应用100被关闭,在稍后执行之际,UI状态可以被读取以使应用100重建(例如,实例化用户界面元素108的对象)并且呈现用户界面104。
[0021]如在背景中讨论的,对用户界面104的更新可能从应用100外部的源被接收到。例如,客户机110或云112可能正在异步地向应用100提供UI更新。客户机110可能是在与应用100所在的相同计算设备上执行的另一个应用或过程,或者它可能是在具有应用100的实例的另一个计算设备上执行,在后一情况下经由网络接收到UI更新。类似地,云112可能经由网络向应用100提供更新。
[0022]客户机110、云112或其他源向应用100提供更新,所述更新对应于对用户界面104的语义更改。这种更新可以是对应用100的另一实例的用户变化的结果,或者它们可以是其他发生事件的结果,所述其他发生事件诸如软件开发者发布的软件更新、来自内容提供者的内容更新、等等。几乎任何类型的信息可以潜在地影响用户界面104。
[0023]应用100可以接收这种更新并且用控制器114来处理更新。控制器114可以被设计成处理异步通信、更新UI状态106、以及以其他方式提供直接的管理和同步任务。在一实施例中,控制器114可以处理来自应用100的更新或指令116以及异步的远程更新。在另一实施例中,控制器114仅管理远程更新,而应用100单独地处理其自身的内部UI更新;任一者或两者可以按需写至UI状态106。
[0024]由此可见,在接收到外部影响UI的更新时,应用100在执行且由用户118操作时会受到用户118活动的中断。例如,在用户118正在用输入设备操纵用户界面元素或与用户界面元素交互的同时,如果接收到更新以删除用户界面元素,则用户118的输入可能变得误导向(例如,针对已删除元素的点击可能最终被应用于另一个元素)、有争议的、等等。用户118可能变得困惑或受挫。
[0025]图2示出使用与应用100或其主机计算设备的用户交互来确定如何处理影响用户界面104的外部更新的实施例。应用100可具有用户活动监视器130、定时器132、动态变化的优先级阈值134、输入队列136、应用编程接口(API) 138、同步器140、应用逻辑142、或者稍后要描述的其他组件、以及参照图1讨论的组件。
[0026]外部源144通过API 138将UI更新或操作
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1