CN106716356B - 在具有至少两个呈现组件的设备上呈现应用的方法 - Google Patents

在具有至少两个呈现组件的设备上呈现应用的方法 Download PDF

Info

Publication number
CN106716356B
CN106716356B CN201580051897.3A CN201580051897A CN106716356B CN 106716356 B CN106716356 B CN 106716356B CN 201580051897 A CN201580051897 A CN 201580051897A CN 106716356 B CN106716356 B CN 106716356B
Authority
CN
China
Prior art keywords
application
presentation
component
history
presentation component
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
Application number
CN201580051897.3A
Other languages
English (en)
Other versions
CN106716356A (zh
Inventor
E.F.思雷尔克尔德
W.S.斯陶伯
P.米科拉
K.K.莫兰
I.Y.霍里
D.R.戴维斯
K.A.施普利
R.巴拉苏布拉马尼安
P.德克斯
R.C.彭莱
D.J.伍兹
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Technology Licensing LLC
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Publication of CN106716356A publication Critical patent/CN106716356A/zh
Application granted granted Critical
Publication of CN106716356B publication Critical patent/CN106716356B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction 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
    • G06F3/0482Interaction with lists of selectable items, e.g. menus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • User Interface Of Digital Computer (AREA)
  • Stored Programmes (AREA)

Abstract

在许多计算场景中,设备的计算环境可以通过各种呈现组件诸如显示器、扬声器和耳机来呈现应用,然而,对于用户来说,在计算环境内当前呈现的应用之间导航可能是困难的;例如,对于在共享应用堆栈的许多显示器上呈现许多应用的设备来说,用户希望选择的应用可能被深埋在共享的应用堆栈内。根据在本文呈现的技术,设备可以为每一个呈现组件生成应用呈现历史,其指示先前已通过呈现组件呈现的应用。通过识别在选择呈现组件的应用呈现历史中具有应用呈现的第二应用并将选择呈现组件转移到第二应用,可以履行将选择呈现组件转移离开当前应用呈现的请求。

Description

在具有至少两个呈现组件的设备上呈现应用的方法
相关申请
这个申请要求通过参考引入在本文的题为“COMPONENT-SPECIFIC APPLICATIONPRESENTATION HISTORIES”并于2014年9月24日提交的美国专利申请第14/495,181号的优先权。
背景技术
在计算的领域内,许多场景牵涉利用具有至少两个呈现(presentation)组件的设备的应用的呈现。作为第一这样的示例,设备可以包括两个或更多显示器,并且可以跨越这两个或更多显示器来呈现计算环境。作为第二这样的示例,显示器可以包括显示器和一副耳机,并且可以在显示器上在视觉上呈现应用和/或通过耳机在听觉上呈现应用。作为第三这样的示例,设备可以访问一个或多个其他设备的远程显示组件,诸如远程终端对话、投影仪或远程扬声器组,并且可以将应用呈现发送到一个或多个远程显示组件,以便呈现。
挑选在其上面呈现应用的呈现组件的方式时常被委托给用户。作为第一这样的示例,在设备可访问的若干显示器之间,视觉应用的用户可以指定选择显示器(例如将窗口移动到具体显示器),并且该设备在选择显示器上显示应用。作为第二这样的示例,用户可以请求播放音乐,并且该设备可以呈现该设备可访问并且能够为用户渲染音乐的音频设备的列表。用户随后可以选择音频设备,并且该设备可以通过选择音频设备来播放音乐。
附加地,许多这样的设备维持已在设备的计算环境内呈现的应用的历史。例如,应用切换器或“Alt-Tab”列表可以指示最近呈现的应用的集合,其可选地包括已向用户呈现应用和/或由用户激活应用(例如当前应用和先前应用)的应用呈现顺序。在接收到从当前应用转移(transition)到第二应用的请求(诸如应用顺序中的“下一个”应用)时,设备可以将计算环境转移到第二应用(例如在设备的显示器上呈现的窗口堆栈中提升该应用的窗口的“Z轴次序(Z-order)”,以便在计算环境的前景中呈现第二应用)。
发明内容
提供这个概要部分来以简化形式介绍下面在详细描述部分中进一步描述的概念的选择。这个概要部分并不旨在识别所请求保护的主题的关键因素或基本特性,也不旨在用于限制所请求保护的主题的范畴。
在设备的计算环境中应用的呈现部分由于现代设备的复杂性和/或鲁棒性、尤其对于访问各种各样的呈现组件的设备而言可能展示出各种限制。
作为第一这样的示例,设备可以具有相对大量的呈现组件,并且用户可以借此执行相对大量的应用。选择用户希望转移至的第二应用由于在应用呈现历史中可能包括的大量应用而可能是困难的。例如,如果用户希望在应用呈现历史(诸如应用堆栈)中向后导航,个人希望激活的应用可能位于应用呈现历史内的深处,并且用户可能需要一段时间才能找到用户希望呈现的应用。
作为第二这样的示例,设备的呈现组件在各方面可能有所不同;例如,一些设备可能与各种输入/输出形态(modality)、位置或用户上下文相关联。此外,用户可能打算请求应用在特定呈现组件上的呈现,但是可能没有指定哪一个呈现组件。然而,识别用于特定应用的呈现的呈现组件可能难以确定。
在本文呈现的是用于使得设备能够促进(facilitate)用户在设备上的应用的呈现之间导航的技术。根据这些技术,对于设备可访问的相应的呈现组件,该设备可以生成识别已通过该呈现组件呈现的应用的应用呈现的应用呈现历史。响应于通过选择呈现组件的选择应用的应用呈现,该应用可以将应用呈现记录在选择呈现组件的应用呈现历史中;以及响应于接收到将选择呈现组件转移离开当前应用的请求,该设备可以从选择呈现组件的应用呈现历史中选择第二应用并将选择呈现组件从当前应用转移到第二应用。
作为一个这样的示例,应用可以为每一个呈现组件生成应用切换列表(例如“Alt-Tab”列表或应用堆栈),其指示已在设备上呈现的应用呈现。当用户指定将选择显示组件转移离开当前应用的请求(例如“Back(后退)”操作)时,设备可以识别已在选择显示器上特别显示的应用并且可以在显示器上呈现应用呈现历史中的第二或“下一个”应用。以这种方式,在本文呈现的技术可以使得设备能够促进用户在设备的各种呈现组件上的应用呈现之间的导航。
为了完成前述和相关目的,以下描述和附图阐述某些说明性方面和实现方式。这些只是指示其中可以采用一个或多个方面的各种方式之中的一些方式。当结合附图考虑时,从以下详细描述中,本公开的其他方面、优势和新颖特性将变得显而易见。
附图说明
图1是表征(feature)应用在设备的各种呈现组件上的呈现的示例场景的图解。
图2是根据在本文呈现的技术表征应用在设备的各种呈现组件上的呈现的示例场景的图解。
图3是根据在本文呈现的技术在具有至少两个呈现组件的设备上呈现应用的示例方法的流程图。
图4是根据在本文呈现的技术提供来在具有至少两个呈现组件的设备上呈现应用的示例系统的组件框图。
图5是被配置成收录(embody)在本文阐述的一个或多个规定的包括处理器可执行指令的示例计算机可读介质的图解。
图6是根据在本文呈现的技术表征根据任务流的呈现组件从当前应用呈现到第二应用呈现的转移的示例场景的图解。
图7是根据在本文呈现的技术表征根据呈现能力和表示策略在各种呈现组件上的呈现条款(article)的格式化的示例场景的图解。
图8是根据在本文呈现的技术表征在设备的呈现组件上的应用呈现的管理的示例场景的图解。
图9是根据在本文呈现的技术表征针对用户的用于选择呈现组件用于应用呈现的推荐的示例场景的图解。
图10是其中可以实现在本文阐述的一个或多个规定的示例计算环境的图解。
具体实施方式
现在参考附图来描述所请求保护的主题,其中相似的参考数字始终指的是相似的元素。在以下描述中,出于解释的目的,阐述许多具体细节,以便提供所请求保护的主题的彻底理解。然而,可能明显的是:所请求保护的主题可以在没有这些具体细节的情况下来实践。在其他情况中,结构和设备以框图的形式来显示,以便促进描述所请求保护的主题。
A.引言
图1呈现表征用户102与利用一组呈现组件106的设备104进行交互以便呈现一组应用108的示例场景100的图解。在这个示例场景100中,设备104的呈现组件106包括:两个不同的显示器;一对扬声器;和一副耳机。利用设备104的计算环境所呈现的应用108包括各种各样的功能,诸如:用于创建报告的文本编辑器;消息传送(messaging)客户端,诸如电子邮件客户端,其呈现一组消息;网络(web)浏览器,其通过网络与网络服务器交互并且渲染网页;媒体播放器,其渲染各种形式的媒体,诸如音乐、视频和音频书;警报应用,其向用户102呈现与诸如突发新闻、天气或邮件的到达之类的各种话题有关的警报;和语音化身(avatar),其通过语音接口与用户102交互。
如在这个示例场景100中进一步举例说明的,为了能够访问各种应用108,设备104可以允许用户102指定将用于每一个应用108的呈现组件106。作为第一示例,用户102可能希望在第一显示器上呈现文本编辑器应用108,并因此可以实例化文本编辑器应用108且将包含应用108的窗口安置在第一显示器的特定区域中。作为第二示例,用户102可能希望在第一显示器和第二显示器二者上查看邮件,并因此可以请求电子邮件客户端应用108在每一个显示器上渲染不同的消息。作为第三示例,用户102可以请求通过媒体播放器来向不同的音频设备播放不同类型的音频输出(例如通过扬声器播放音乐,同时通过耳机播放音频书),并因此可以请求媒体播放器108将每一个音频流定向至恰当的音频设备。
如在这个示例场景100中进一步举例说明的,当用户102利用应用108时,设备104可以生成和维持具有根据由用户针对应用108进行的最近的按时间顺序访问、以降序方式排序的堆栈(stack)顺序112的应用堆栈110。例如,如果用户102选择文本编辑器应用108,设备104可以将文本编辑器应用108移动到应用堆栈110的顶部114(例如,指示文本编辑器应用108当前具有输入焦点和/或是在设备104的所有应用108之中具有用户激活的最新日期的“顶端(topmost)”应用108)。设备104可以采用各种方式来渲染应用堆栈110中的应用108;例如,使用应用108的Z轴次序,设备104可以在前景位置中在应用堆栈110的顶部114呈现应用108,并且可以在越来越多的背景位置中以较低Z轴次序呈现相继应用108。此外,用户102可以请求应用108同时利用多个呈现组件106;例如,电子邮件客户端应用108可以在两个设备中的每一个设备上同时呈现消息,并且网络浏览器108可以在显示器呈现组件106上呈现网页并通过扬声器呈现组件106来播放与网页相关联的音频。尤其,如在图1的示例场景100中所举例说明的,设备104利用共享应用堆栈110,其中任何应用108的实例化和/或调用导致在应用堆栈110上条目的插入,而不论在哪里呈现应用108。
设备104也可以使用应用堆栈110来使得用户102能够在应用108之间导航。作为第一这样的示例,如果用户102发起请求设备104离开在应用堆栈110的顶部114上的当前应用108的转移的“后退”操作116,则设备104可以识别在应用堆栈110中较低的第二应用108并且可以重新排序应用堆栈110的顺序114,以便将第二应用108放置在以前在应用堆栈110的顶部114的当前应用108的上方。作为第二这样的示例,设备104可以向用户102呈现当前正在设备上运行的所有应用108的完整列表(例如,进程列表),以便选择特定应用108;以及响应于用户102发起这样的应用108的选择,设备104可以将选择应用108放置在应用堆栈110的顶部114。作为第三这样的示例,设备104可以向用户102呈现可用于设备104并且可以在设备104上执行的所有应用108的列表或菜单118。响应于从用户102接收到这样的应用108的选择,设备104可以在应用108不是已在运行时实例化应用108(或者可以在应用108已在运行时创建附加的实例),可以将选择应用108插入应用堆栈110的顶部114,并且可以向用户102呈现应用实例。以这种方式,设备104可以使得用户102能够利用各种各样的技术来使得用户102能够在执行在设备104上的应用108之间导航。
然而,图1的示例场景100也举例说明在这样的应用选择技术的实现中可能出现的许多缺点。
作为第一这样的示例,设备104可以包括相对较大组的呈现组件106。这样的呈现组件106甚至可以远离设备104的物理位置,诸如位于另一房间、建筑物或城市中的投影仪或扬声器。用户102可能由于必须为每一个应用108选择在其上面可以呈现应用108的呈现设备106而感到沮丧。如果设备104包括大量的显示器,则对于用户102挑选和管理在其上面呈现应用108的特定呈现组件104的选择而言可能是令人沮丧的。例如,呈现应用堆栈110中的应用108的完整列表和/或所有应用菜单118在该列表包括潜在大量的应用108时可能使用户102沮丧和/或在视觉上压倒(overwhelm)用户102。
作为第二这样的示例,设备104可以包括相对大量的执行和/或潜在可执行的应用108。管理这样的大量应用108的呈现可能变得困难。例如,如果用户102通过同一电子邮件客户端应用108打开许多电子邮件消息,在这些消息全部在同一显示器上打开而其他显示器可能尚未使用的情况下可能是令人沮丧的。相反,用户102可能由于电子邮件消息跨越众多显示器的分布而感到沮丧,并且可能难以找到和管理打开电子邮件消息的选集(collection)。此外,即使用户102能够找到该批(batch)相关的电子邮件消息,用户102也可能必须重新安排在相应显示器上呈现的电子邮件消息的位置和大小,以便一起阅读这些消息。
作为第三这样的示例,由用户102进行的特定应用108的选择由于相对大量的呈现组件106和/或应用108而可能是复杂的。作为第一这样的示例,为了选择用于交互的特定应用108,用户102可以尝试逐页浏览应用堆栈110。然而,如果应用108被深埋在应用堆栈110的顺序112内,用户可能难以定位应用108。此外,虽然用户102根据堆栈顺序112在应用堆栈102的应用108之间切换,但是各种呈现组件106可以接收和/或失去输入和输出焦点,这可能向用户102创建紊乱的计算环境的外观。
作为第四这样的示例,当用户实例化和/或激活应用108时,设备104可以激活应用堆栈110中的应用108,但是可能没有充分地通知用户102用于应用108的呈现组件106。例如,“后退”操作116可以被执行而不将应用108通知用户102,和/或呈现组件106已被选择用于新的顶端呈现。用户102因此可能必须个别地并且有可能在长度上(at length)探测呈现设备106,以便确定用户输入和输出的当前焦点。这样的混乱也可能出现在用户102请求打开新应用108的时候;设备104可以选择呈现组件106并在选择呈现组件106上实例化应用108,但是可能无法通知用户102有关已选择哪一个呈现组件106。实际上,用户102甚至可能不理解实例化应用108的请求已被设备104履行。在一些场景中,这样的选择可以被任意执行,或者至少可以对用户102而言似乎是任意的,从而加剧用户102在与设备104上的众多应用108交互时的沮丧。例如,用户102可以理解在应用堆栈110上的顶端应用108和第二应用108二者被呈现在第一显示器上,但是可能不理解在第二显示器上呈现的第三应用108在应用堆栈110中位于这样的应用之间。在请求“后退”操作116中,用户102可以预料到设备102至第二应用108的转移并且可以为了响应而观看第一显示器,而且可能没有注意到第三应用108在第二显示器上的激活。此外,用户102可以给设备104提供打算与第二应用108交互的输入(例如在键盘上输入打算用于第二应用108的文本),但是用户输入可能不经意地被定向至第三应用108而非第二应用108。
作为第五这样的示例,这样的应用108的呈现在视觉上压倒性的后果可能由于提供各种各样的应用视图的应用108而加剧;例如,如果电子邮件客户端为每一个消息呈现不同的应用窗口110,应用列表在用户102同时在查看一打或更多电子邮件消息时可能变得难处理的。相反,应用堆栈110可以将同一应用108的应用视图一起组合在应用堆栈110中,和/或可以将选择应用108的多个视图的呈现合并(consolidate)为应用堆栈110中的一个条目,但是这样的应用堆栈110内的组合和/或合并可能干扰个人访问具体应用视图的能力。例如,在一些场景中,应用108可以通过制止插入特定应用视图的条目来制止过度利用应用堆栈110(例如,媒体播放器可以制止插入通过不同的音频组件播放的音乐的不同条目),但是这样的制止可能使得寻求经由应用堆栈110来激活特定应用视图并与之交互的用户102感到沮丧。这些和其他困难可能出现在以图1的示例场景100中呈现的方式使用共享应用堆栈110的设备104的计算环境的应用108的呈现中。
B.呈现的技术
在本文呈现的是用于将设备104配置成向具有至少两个呈现组件108的设备104的用户102呈现应用108的技术。根据这样的技术,设备104可以为每一个呈现组件106生成和维持不同的应用呈现历史,其指示已在呈现组件106上呈现的应用108的应用呈现。当用户102请求离开在选择呈现组件上的当前应用呈现的转移(例如在特定显示器上请求“后退”操作)时,设备104可以限制从当前应用呈现到同一呈现组件106上的其他应用呈现的转移。以这种方式,用户102在特定于每一个呈现组件106的应用呈现之间切换的意图可以以直观且有效的方式来履行。
图2呈现根据在本文呈现的技术表征用户102与在设备104的各种呈现组件106上呈现的应用108进行的交互的示例场景200的图解。在这个示例场景200中,设备104执行各种各样的应用108,每一个应用在设备104的各种呈现组件106诸如一对显示器、一对扬声器和耳机设备上呈现一个或多个应用呈现204(例如窗口、全区域或部分区域显示、图像、用户控制、应用图标、菜单栏图标、媒体流和游戏对话)。相应应用108也可以呈现一个或多个应用视图,诸如针对若干电子邮件消息中的每一个呈现不同的应用视图的电子邮件客户端,其可以被呈现在相同的或不同的呈现组件106上。
根据在本文呈现的技术,设备104为每一个呈现组件106生成不同的应用呈现历史202,其指示已呈现在呈现组件106上的应用108的应用呈现208。响应于在选择呈现组件106上呈现应用呈现204,设备104将应用呈现204记录在呈现组件106的应用呈现历史202中。这样的特定于每个呈现组件106的应用呈现204的记录可以促进由用户102进行的在设备104的计算环境的应用呈现204之间的导航。例如,响应于从用户102接收到将选择呈现组件106转移离开当前应用呈现206的请求(例如,应用呈现204在呈现组件106的应用呈现历史202中具有顶端位置),设备104从选择呈现组件106的应用呈现历史202中选择第二应用呈现208,并将选择呈现组件106从当前应用呈现206转移到第二应用呈现208。以这种方式,根据在本文呈现的技术,设备104可以允许用户102为选择显示器发起“后退”操作116,以便只在选择显示器上提供的应用呈现108之间导航、切换和/或转移。
C.技术效果
在本文呈现的用于在设备104上的相应应用108的应用呈现204之间转移的技术的使用可以导致各种各样的技术效果。
作为可以利用在本文呈现的技术可实现的技术效果的第一示例,利用在本文呈现的技术的设备104可以允许用户102以直观方式在应用呈现208之间转移。这样的设备104可以将导航集合(set)之中的应用呈现208的集合约束至位于选择呈现组件106的应用呈现历史202内的应用呈现,而不是导航通过在任一呈现组件106上提供的整个集合的应用呈现204。计算环境的应用转移和导航功能因此可以为用户102提供更有效的且可理解的用户界面和用户体验。
作为可以利用在本文呈现的技术可实现的技术效果的第二示例,利用在本文呈现的技术的设备104可以呈现更大的可扩展性,以使得用户102能够与较大数量的应用108和呈现组件106进行交互。例如,呈现大量显示器(例如超过二十显示器)的设备104可以向寻求与跨越所有这样的显示器呈现的应用108交互的用户102、尤其在这样的应用108是同一计算环境的一部分的情况下呈现比较令人沮丧的用户体验。在本文呈现的技术可以促进由用户102进行的这样的访问,从而降低针对添加呈现组件106至设备104的用户界面和管理障碍,并使得用户102能够同时与跨越许多这样的呈现组件106所呈现的大量应用108交互,同时利用更大的流畅性和速度在其之间快速切换。
作为可以利用在本文呈现的技术可实现的技术效果的第三示例,允许用户102在针对特定呈现组件106的应用呈现204之间转移的用户界面可以降低用户混乱(例如其中用户102不确定哪一个应用108当前具有焦点,或甚至是否实例化和/或激活特定应用呈现204的请求已被接收并被履行)的发生率。这样的技术也可以减少用户输入的错误,例如其中用户102打算激活特定应用呈现204并与之交互,但是不经意地激活和提供用户输入至不同的呈现组件106上不同的应用呈现204。通过启用根据在本文呈现的技术的应用呈现转移,可以避免许多这样的用户输入错误、不一致性和用户误解的情况。
作为可以利用在本文呈现的技术可实现的技术效果的第四示例,在用于相应的呈现组件106的不同的应用呈现历史202中相应应用108的应用呈现204的记录可以启用通过其他技术不容易实现的各种各样的特性。作为第一这样的示例,记录特定应用108的应用呈现历史204可以针对同一应用204;针对同一应用204的不同应用呈现204;和/或针对不同的但是相似的应用204启用同一呈现组件106的后续选择和利用。例如,当用户102请求收听语音邮件消息时,可以检查相应的呈现组件106的应用呈现历史202来确定用户102为这样的消息的呈现频繁选择哪一个呈现组件106和/或确定哪一个呈现组件106适合于特定的应用呈现204(例如基于当前和/或以前在相应的呈现组件106上提供的其他应用呈现204)。此外,记录相应的呈现组件106的应用呈现历史202的设备104的配置可以在设备104上执行的所有应用108之间协商一致的应用行为,而不是将呈现组件106之间的选择委托给应用108。这些和其他的技术效果可以通过用于根据在本文呈现的技术在设备104上的相应应用108的应用呈现204之间转移的设备104的配置而是可实现的。
D.示例实施例
图3呈现在本文呈现的技术的第一示例实施例,其被举例说明为将设备104配置成在至少两个呈现设备105上呈现应用108的示例方法300。示例方法300可以例如被实现为指令集,其被存储在设备104的存储组件诸如存储电路、硬盘驱动器的盘片、固态存储设备或者磁盘或光盘中并被组织,以致当在设备的处理器上被执行时导致设备104根据在本文呈现的技术来操作。
示例方法300开始于302并牵涉在设备的处理器上执行304这些指令。具体地,在处理器上执行304这些指令导致设备104为相应的呈现组件106生成306应用呈现历史202,其识别应用108通过呈现组件106的应用呈现204。在处理器上执行304这些指令也导致设备104响应于通过选择呈现组件106呈现选择应用108的应用呈现204而将应用呈现204记录在选择呈现组件106的应用呈现历史202中。在处理器上执行304这些指令也导致设备104响应310于接收到将选择呈现组件106转移离开当前应用呈现206的请求而从选择呈现组件106的应用呈现历史202中选择312第二应用呈现208;以及将选择呈现组件106从当前应用呈现206转移314到第二应用呈现208。以这种方式,这些指令导致设备104根据在本文呈现的技术在相应的呈现组件106上呈现应用102,并因此结束于316。
图4呈现在本文呈现的技术的第二示例实施例,其被举例说明为在表征处理器404、存储器406和至少两个呈现组件106的示例设备402上实现的示例系统408,其中示例系统408导致设备402根据在本文呈现的技术来呈现应用108。示例系统408可以例如被实现为分别包括存储在设备402的存储器406中的指令集的一组组件,其中相应组件的指令当被执行在处理器404上时导致设备402根据在本文呈现的技术来操作。
示例系统408包括用于相应的呈现组件106的应用呈现历史202,其识别应用108通过呈现组件106的应用呈现204。示例系统408也包括应用历史记录器410,其响应于通过选择呈现组件106来呈现选择应用108的应用呈现204而将应用呈现204记录在选择呈现组件106的应用呈现历史202中。示例系统408也包括应用切换器412,其响应于接收到将选择呈现组件106转移离开当前应用呈现206的请求而从选择呈现组件106的应用呈现历史202中选择第二应用呈现208,并将选择呈现组件106从当前应用呈现206转移到第二应用呈现208。以这种方式,示例系统408使得设备402能够根据在本文呈现的技术在至少两个呈现组件106上呈现应用108。
还一实施例牵涉计算机可读介质,其包括被配置成应用在本文呈现的技术的处理器可执行指令。这样的计算机可读媒体可以包括各种类型的通信媒体,诸如可以通过各种物理现象并且在各种有线场景(例如经由以太网或光纤电缆)和/或无线场景(例如无线局域网(WLAN)诸如WiFi、个人区域网(PAN)诸如Bluetooth(蓝牙)或者蜂窝或无线电网络)中传播并且编码计算机可读指令集的信号(例如电磁信号、声波信号或光信号),这些指令当被设备的处理器执行时导致设备实现在本文呈现的技术。这样的计算机可读媒体也可以包括(作为将通信媒体排除在外的技术的类别)计算机可读存储设备,诸如半导体存储器(例如利用静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)和/或同步动态随机存取存储器(SDRAM)技术的半导体)、硬盘驱动器的盘片、闪存设备或者磁盘或光盘(诸如CD-R、DVD-R或软盘),其编码计算机可读指令集,这些指令在被设备的处理器执行时导致设备实现在本文呈现的技术。
在图5中举例说明可以采用这些方式来设计的计算机可读介质的示例,其中实现方式500包括在其上面编码计算机可读数据504的计算机可读存储设备502(例如CD-R、DVD-R或硬盘驱动器的盘片)。这个计算机可读数据504又包括计算机指令506的集合,这些指令当在具有至少两个呈现组件106的设备510的处理器404上被执行时导致设备510根据在本文阐述的原理来操作。在第一这样的实施例中,处理器可执行指令506可以导致设备510执行在具有至少两个呈现组件106的设备104上呈现应用108的方法,诸如图3的示例方法300。在第二这样的实施例中,处理器可执行指令506可以导致设备510呈现应用108,诸如图4的示例系统408。本领域普通技术人员可以设计许多这样的被配置成根据在本文呈现的技术来操作的计算机可读媒体。
E.变异
在本文讨论的技术可以利用许多方面的变异(variation)来设计,并且其中一些变异可以呈现附加的优势和/或减少针对这些和其他技术的其他变异的劣势。此外,一些变异可以在组合中进行实现,并且一些组合可以表征通过协同合作的附加的优势和/或减少的劣势。这些变异可以被引入各种实施例(例如图3的示例方法300;图4的示例系统408;和图5的示例存储设备502)中,以便在这样的实施例上赋予个别和/或协同优势。
E1.场景
可以在这些技术的实施例之间改变的第一方面涉及其中可以利用这样的技术的场景。
作为这个第一方面的第一变异,在本文呈现的技术可以被利用来实现各种各样的设备104的配置,诸如工作站、膝上型计算机、平板计算机、移动电话、游戏机、便携式游戏设备、便携式或非便携式媒体播放器、媒体显示设备诸如电视、电器、家庭自动化设备、与集成诸如目镜或手表的可穿戴设备相集成的计算组件以及监控与数据采集(SCADA)设备。
作为这个第一方面的第二变异,在本文呈现的技术可以利用具有应用呈现204的各种应用108来加以利用,其中这些应用诸如是:办公室生产率(productivity)应用;媒体呈现应用,诸如音频和视频播放器;通信应用,诸如网络浏览器、电子邮件客户端、聊天客户端和IP上语音(VoIP)客户端;导航应用,诸如地理定位、映射和路由选择应用;实用程序,诸如向用户102呈现警报的天气与新闻监视应用;以及游戏。此外,应用108的应用呈现204可以牵涉一个或多个呈现形态,诸如文本、图像、直播和/或预先记录的视频、音效、音乐、语音、触觉反馈、三维渲染与交互式和/或非交互式用户界面以及用于从用户102接收用户输入诸如文本输入、指向输入、触觉输入、手势输入、语言输入和视线追踪输入的各种技术。
作为这个第一方面的第三变异,在本文呈现的技术可以利用设备104和呈现组件106的各种各样的架构来加以利用。作为第一这样的示例,设备104可以利用一个或多个直接地且物理地连接到设备104的呈现组件106,诸如有线显示器、扬声器和耳机。作为第二这样的示例,设备104可以利用经由无线连接诸如射频而可访问的一个或多个呈现组件106。作为第三这样的示例,设备104可以利用通过网络而可访问的一个或多个呈现组件106,诸如设备104通过因特网流式传输(stream)视频至的显示器。作为第四这样的示例,设备104可以利用通过第二设备104而可访问的诸如在客户端/服务器或对等架构中的一个或多个呈现组件106。此外,这样的设备104和/或呈现组件106可以由一个用户102或一组用户102来利用,和/或可以由至少一个第一用户102代表至少一个第二用户102来控制。这些和其他场景可能适合于根据在本文呈现的技术在设备104的呈现组件106上的应用108的呈现。
E2.应用呈现和应用呈现历史
可以在本文呈现的技术的实施例之间改变的第二方面涉及应用108在一个或多个呈现组件106上的应用呈现204的性质以及应用呈现204在相应的呈现组件106上的应用呈现历史202的记录。
作为这个第二方面的第一变异,相应的呈现组件的应用呈现历史202进一步代表其中已通过呈现组件206呈现应用呈现204的应用顺序历史。作为一个这样的示例,应用呈现历史202可以展示出其中已通过呈现组件206呈现应用呈现204和/或其中用户102已选择应用呈现204和/或已与之交互的堆栈顺序112。在转移离开当前应用呈现208的上下文中选择第二应用呈现208因此可以包括:选择在用于选择呈现组件106的应用呈现历史202的应用顺序历史中在当前应用呈现206之前的第二应用呈现208。替换地或附加地,应用呈现历史202可以采用其他方式来存储,诸如应用呈现204的调用顺序(例如在不太最近实例化的应用202之前呈现最近实例化的应用202);用户对于相应的应用呈现206的偏好(例如,用户102可以请求:媒体应用诸如视频的应用呈现204将在其他应用108的应用呈现204之前被选择和/或在其他应用108的应用呈现204上方以Z轴次序来呈现);优先级和/或紧迫性(例如,与例程或不太重要的应用呈现204相比,紧迫的信息消息可以利用较高位置被插入应用呈现历史202中);和/或资源利用(例如,牵涉重要计算资源诸如网络带宽和/或处理器容量的应用呈现204可以被呈现在牵涉不太重要计算资源的其他应用呈现204上方)。替换地或附加地,应用呈现历史202可以合并、组合和/或以其他方式关联与特定应用108相关联的应用呈现历史202的应用呈现204。作为一个这样的示例,选择应用108可以进一步包括至少两个应用视图。应用呈现204的记录因此可以包括:响应于通过选择呈现组件106来呈现选择应用108的选择应用视图,将选择应用的选择应用视图的应用呈现记录到选择呈现组件106的应用呈现历史202中。例如,电子邮件客户端在同时且不同地呈现许多电子邮件消息,并且在选择呈现组件106上呈现一个这样的消息时,设备104可以将相应电子邮件消息的应用呈现204组合到选择呈现组件106的应用呈现历史202中。
作为这个第二方面的第二变异,设备104可以使用相应呈现组件106的应用呈现历史202来帮助用户102选择特定应用呈现204,用于在选择呈现组件106上的呈现。例如,设备104可以在选择呈现组件106上向用户102呈现在应用呈现历史202中具有至少一个应用呈现108的应用108的列表,并且响应于从用户102接收到第二应用108的选择,设备104可以将选择呈现组件106从当前应用呈现206转移到从应用呈现204之间选择的第二应用呈现208。
图6呈现表征用于从呈现组件106的应用呈现历史202中的应用呈现204之中选择第二应用呈现208的一种这样的技术的示例场景600的图解。在这个示例场景600中,应用呈现历史202指示呈现组件106当前正在呈现包括当前应用呈现206的若干应用呈现204。此外,当前应用呈现204与任务流602相关联,其中任务流牵涉将通过各种应用108根据任务顺序来执行的任务的许多步骤。例如,用户102可以通过跟随任务流602频繁地生成客户端的报告,其中任务流牵涉:利用数据分析应用108执行的数据分析步骤;利用报告编辑器应用108执行的报告编辑步骤;利用公布器(publisher)应用108执行的公布步骤;和利用电子邮件客户端108执行的报告步骤。此外,应用呈现历史202中的相应应用呈现204可以与任务流602的步骤相关,并且设备104可以促进用户102根据任务顺序来完成任务。相应地,在从用户102接收到从与任务流602的第一应用108相关联的当前应用呈现206转移的请求(例如检测到用户102已完成任务流602的第一步骤)时,设备104可以选择按照任务流602的任务顺序跟随在当前应用呈现206后面的第二应用呈现208。
作为这个第二方面的第三变异,选择呈现组件106上的应用呈现204可以采用各种方式来实现。作为第一这样的示例,在选择呈现组件106进一步包括显示器的情况下,应用顺序历史可以与呈现在显示器上的应用呈现204的Z轴次序相关联;并且将选择呈现组件106从当前应用呈现206转移到第二应用呈现208可以通过按照显示器的Z轴次序将第二应用呈现208重新排序在当前应用呈现206上方来实现。作为第二这样的示例,设备104可以将当前应用呈现206呈现为全显示器(full-display)呈现,并且可以通过利用第二应用呈现208替代全显示器当前应用呈现206(可选地使用视觉转移,诸如淡入淡出、擦拭、滑动或溶解转换)来转移到第二应用呈现208。作为第三这样的示例,设备104可以将布局应用于呈现组件106;例如,应用呈现204可以根据应用呈现历史202在视觉上被安排在显示器上,诸如将当前应用呈现206呈现在显示器的顶部垂直位置上,并且通过垂直向下移动当前应用呈现206和将第二应用呈现208垂直插入在当前应用呈现206上方而转移到第二应用呈现208。作为第四这样的示例,设备104可以包括呈现队列,诸如优先化音频应用呈现204的音频设备(例如扬声器),以致只有应用呈现历史202中的当前应用呈现206可以在当前时间利用扬声器或者可以在同时呈现的音频应用呈现204之间具有最高音量。相应地,音频呈现组件106可以通过以有利于第二应用呈现208的音频的方式暂停或减弱当前应用呈现206(例如淡出和/或减小当前应用呈现204的音频的音量)而转移到第二应用呈现208。许多这样的技术可以被利用来代表应用呈现历史202并且根据在本文呈现的技术来呈现应用呈现204和在其之间转移。
E3.应用呈现类型
可以在本文呈现的技术的实施例之间改变的第三方面牵涉在选择呈现组件106上提供的应用呈现204的类型。
根据在本文呈现的技术,相应的应用呈现204可能与应用呈现类型相关联。例如,应用呈现204可以不同地包括:用户交互式或非用户交互式呈现;利用各种输入形态(例如键盘、指针、语音和/或手势)和/或输出形态(例如文本、图像、视频、声音、语音和/或触觉)的呈现;和牵涉各种量的用户关注(user attention)的呈现(例如牵涉深度卷入的(involved)和/或持久的(protracted)用户关注参与(engagement)的应用呈现204以及牵涉偶然的、肤浅的和/或短暂的用户关注参与的应用呈现204)。替换地或附加地,相应的呈现组件106可以与应用呈现类型相关联;例如,用户102可以利用桌面显示器呈现组件106来从事卷入的且持久的应用呈现204,利用移动显示器呈现组件106来从事偶然的应用呈现204,并且仅利用给应用呈现204提供车辆界面的仪表安装的呈现组件106来从事选择性的且面向车辆的交互。相应地,在本文呈现的技术的实施例可以在将选择呈现组件106转移到第二应用呈现208的同时调整第二应用呈现208,以适合于与第二应用呈现208和/或选择呈现组件106相关联的应用呈现类型。
图7呈现表征在应用呈现204的调整中的若干变异以实现应用呈现类型706的示例场景700的图解。在这个示例场景700中,应用呈现204牵涉用户102希望在若干呈现组件106中的一个呈现组件上体验的文本条款。因为每一个呈现组件106展示出不同的属性和/或不同的上下文,所以应用呈现204的应用呈现类型704可以鉴于选择呈现组件106来选择。作为这个第三方面的第一这样的变异,相应的呈现组件106可以根据呈现能力来呈现应用呈现204。例如,包括显示器的呈现组件106可以被确定成支持视频和/或静态图像,并且包括扬声器的呈现组件106可以被确定成支持音频。设备104因此通过为利用选择呈现组件106的呈现能力702的应用呈现204选择应用呈现类型702来呈现应用呈现204。例如,如果选择桌面显示器呈现组件106,则文本条款的完整文本和图像可以被选择作为应用呈现类型706;如果选择表征小型显示器和有限计算资源的移动设备呈现组件106,则文本条款的概要可以被选择作为应用呈现类型706;而如果选择耳机呈现组件106,则文本条款的音频转录可以被选择作为应用呈现类型706。
图7的示例场景700也举例说明这个第三方面的第二这样的变异,其中相应的呈现组件106与呈现组件策略704相关联。例如,车辆呈现组件106可以表征包括呈现音频和视频的呈现能力702,但是可以实现在车辆正在移动的同时限制文本的显示的呈现组件策略704。相应地,设备104可以选择与选择呈现组件106的呈现组件策略704相一致的应用呈现204的应用呈现类型706(例如呈现文本条款的只有音频概要)。
作为这个第三方面的第三变异,应用历史记录器可以接收将应用呈现204从当前呈现组件106重新定位到选择呈现组件106的请求。设备104可以在重新定位应用呈现204的同时将应用呈现204从通过当前呈现组件106与应用呈现204相关联的当前应用呈现类型706重新格式化为选择呈现组件106的应用呈现类型706。例如,在接收到将应用108的应用呈现204从显示器呈现组件106移动到只有音频呈现组件106的请求时,设备104可以将应用呈现204从基于文本的应用呈现类型706重新格式化为只有音频应用呈现类型706。许多这样的技术可以被利用来根据在本文呈现的技术为特定呈现组件106适配应用呈现204。
E4.应用呈现状态和呈现组件的选择
可以在本文呈现的技术的实施例之间改变的第四方面牵涉选择用于应用108的应用呈现204的呈现的呈现组件106的方式。
作为这个第四方面的第一变异,特定呈现组件108上的应用呈现204可以展示出来自相同或相似应用呈现204的先前呈现的特定呈现细节的持续性(persistence)。作为第一这样的示例,其中选择呈现组件进一步包括显示器,应用呈现类型702可以进一步包括其中先前已呈现应用呈现204的显示器的区域。设备104因此可以通过安置在其中先前已呈现第二应用呈现204的显示器的区域中来呈现第二应用呈现208。作为第二这样的示例,在先前应用呈现204牵涉到特定应用状态诸如用户102最后已消费的文本、视频或音频记录中的位置的情况下,设备104可以使用最后已知的应用状态来重新开始应用呈现204。
图8呈现表征这个第四方面的若干变异的示例场景800的图解,其中各种呈现组件106的应用呈现历史202被利用来识别用于各种应用108的应用呈现204的选择呈现组件106。在这个示例场景800中,设备104的用户102与具有一个或多个应用呈现204的各种各样的应用108交互,并且根据在本文呈现的技术,设备104将这样的应用呈现204记录在相应的呈现组件106的应用呈现历史202中。此外,这样的记录可以促进针对这样的应用108的进一步应用呈现204的呈现组件106的选择。
作为这个第四方面的第二变异,图8举例说明同一应用108的第一应用视图802和第二应用视图802可以同时被呈现在不同的呈现组件106上。当用户102请求第一呈现组件106的转移来呈现第二应用视图802时,设备104可以将第二应用呈现从先前呈现组件106的应用呈现历史202移动到选择呈现组件106的应用呈现历史202。这样的移动可以促进第二应用视图802的呈现细节和/或应用状态的保存和/或相同或相似应用108的多个应用视图802在同一呈现组件106上的合并。
作为这个第四方面的第三变异,图8举例说明:当设备104接收到暂停具有在选择呈现组件106的应用呈现历史202中的应用呈现204的应用108的请求时,设备104可以从选择呈现组件106的应用呈现历史204中移除应用108的应用呈现204。替换地,设备104可以制止从应用呈现历史202中移动应用108的应用呈现204,但是可以标记为不活动的和/或去优先化(de-prioritize)应用呈现历史202中的应用呈现204。
作为这个第四方面的第四变异,图8举例说明:在接收到在暂停应用108之后转移到选择应用108的第二应用呈现208的请求时,设备104可以重新实例化应用108。作为特定示例,其中该请求在暂停第二应用108的较早应用呈现204之后被接收到并且没有指定其中将呈现重新实例化的应用108的第二应用呈现208的选择呈现组件106,设备104可以识别在其上面呈现过应用108的较早应用呈现202的选择呈现组件106。
图9呈现表征这个第四方面的还进一步变异的示例场景900的图解,其牵涉在设备104的呈现组件106之间针对应用108的应用呈现204的选择呈现组件106的推荐。在这个示例场景900中,用户102请求设备104呈现应用108的应用呈现204,诸如将通过视频播放器播放的电影,但是没有指定哪一个呈现组件106将被选择用于应用呈现204。设备104可以基于可用呈现组件106的评估来执行选择和/或推荐。作为第一这样的示例,其中相应呈现组件106根据呈现能力702(例如呈现视频和/或音频的相应呈现组件106的能力)来呈现应用呈现204,设备104可以识别具有被应用108的应用呈现204利用的呈现能力702的呈现组件106(例如由于不能播放视频而排除(rule out)耳机呈现组件106)。作为第二这样的示例,设备104可以评估每一个呈现组件106的应用呈现历史202并因此可以排除展示不适合于应用呈现204的应用呈现历史202的呈现组件106(例如,显示器呈现组件106因为它当前正在显示另一电影而可以被排除在外)。作为第三这样的示例,如果多个呈现组件106被识别为适合于应用呈现204,设备104可以比较评估这样的呈现组件(例如与不能显示高清视频的第三显示器呈现组件106相比而言,选择能够显示高清视频的第二显示器呈现组件106)。设备可以自动地选择和利用通过这样的比较评估来识别的呈现组件106,和/或可以向用户102呈现这些结果,以便选择(例如可选地与基于比较评估的推荐一起向用户102呈现适合于应用呈现204的至少两个呈现组件106的选项904的列表902)。响应于从用户102接收到用户选择的呈现组件106的选项904的列表选择906,设备104可以选择用户选择的呈现组件106作为选择呈现组件106用于第二应用204的第二应用呈现204。设备104随后可以记录应用呈现204作为选择呈现组件106的应用呈现历史202中的第二应用呈现208,并且可以将选择呈现组件106转移到第二应用呈现208。以这种方式,设备104可以根据在本文呈现的技术在用于应用呈现204的呈现组件106的选择中引导用户104。
E5.应用呈现历史灵活性和适应性
可以在本文呈现的技术的实施例之间改变的第五方面牵涉在设备104可以发起或允许相应呈现组件106的应用呈现历史202的适应性时的环境。
作为这个第五方面的第一变异,用户102可以请求在第一呈现组件106上查看第二呈现组件106的应用呈现历史202(例如已发生在另一监视器上的应用呈现206的列表)。响应于接收到列表中的选项的选择,设备104或者可以在第二呈现组件106上呈现相关联的应用呈现206(例如将选择应用呈现206识别为第二呈现组件106的当前应用呈现206)。替换地,设备104可以将选择应用呈现206从第二呈现组件106的应用呈现历史202移动到第一呈现组件106的应用呈现历史202(例如将应用108从第二监视器移动到第一监视器)。
作为这个第五方面的第二变异,第一应用呈现204可以与同一应用108或不同应用108的第二应用呈现204具有某种关系。例如,在选择呈现组件106上呈现的第一应用108可能已利用也被呈现在选择呈现组件106上的第二应用108(例如在用户102选择利用网络浏览器呈现的网页内的“mailto:”链接时被实例化的电子邮件客户端)来实例化。设备104可以存储这样的关系作为应用呈现204的一部分。相应地,如果或者应用呈现204被重新定位到新的呈现组件106,相关的应用呈现204也可以被重新定位到新的呈现组件106,从而维持可以一起用于特定任务的应用108的逻辑连接和接近度(proximity)。
作为这个第五方面的第三变异,设备104可以发起和/或允许相应呈现组件106的应用呈现历史108的组合呈现。作为第一这样的示例,用户102可能希望在若干或所有的呈现组件106上查看完整集合的应用呈现历史202(例如,用户102可能难以在潜在大集合的呈现组件106之间找到正在设备104上执行的应用108)。设备104因此可以呈现至少两个呈现组件106的应用呈现历史202的并集(merged set),并且可以采用各种各样的方式来实现这样的合并呈现(例如按呈现组件106或呈现组件类型来组合,按应用类型来组合,和/或按年表和/或应用名称的字母顺序来排序)。作为第二这样的示例,用户102可能希望将一些或所有的应用108从第一呈现组件106重新定位到第二呈现组件106。设备102因此可以将相关联应用108的应用呈现204从第一呈现组件206的应用呈现历史202合并到第二呈现组件206的应用呈现历史202。
作为这个第五方面的第四变异,设备104可以发起和/或允许第一呈现组件106的应用呈现历史202至一个或多个其他呈现组件106的分裂(splitting)或分发。例如,设备104可以检测和/或用户102可以指示:第一呈现组件106被过载(例如在显示器上呈现的窗口的数量可能超出可用阈值)。设备104因此可以分裂第一呈现组件106的应用呈现历史202并且可以将各种子集的应用呈现历史202重新分发到其他呈现组件106。例如,这样的重新分发可以牵涉审查相应的应用呈现202的历史,诸如在哪里先前已呈现相应的应用108。
作为这个第五方面的第五变异,在新的呈现组件106被添加到可用于设备104的呈现组件106的集合时,设备104可以为新的呈现组件106生成新的应用呈现历史202。替换地,如果新的呈现组件106先前已被连接到设备104并且在断开周期(disconnection period)之后现在已被重新连接,设备104可以为新的呈现组件106加载先前的应用呈现历史202并且可以重新实例化与这样的(例如响应于新的呈现组件106从设备104中的断开)临时已被终止的应用呈现历史202相关联的应用108。可选地,这样的应用108可以利用最新的应用状态来重新实例化,其可能在呈现组件106的断开和/或应用108的终止时已被存留(persist)。
作为这个第五方面的第六变异,新的呈现组件106至可用于设备104的呈现组件106的集合的添加可以提示应用108至呈现组件106的分配的重新评估,并且可以将一个或多个应用106从第一呈现组件106重新定位到新的呈现组件106。这样的重新定位可以牵涉将应用呈现204从第一呈现组件106的应用呈现历史202移动到新的呈现组件106的应用呈现历史202。这样的重新评估可以包括负载平衡考虑(例如,将应用呈现204从展示拥挤的应用呈现历史202的第一呈现组件106移动到新的呈现组件106)和/或每一个呈现组件204对于每一个应用108的适当性的评估(例如将应用呈现204从第一呈现组件106移动到能够以更高质量来渲染应用108的新的呈现组件106,诸如较高分辨率显示器或高保真扬声器组)。重新定位可以牵涉应用呈现204的历史的审查;例如,应用108可能先前已被呈现在新的呈现组件106上,并且可能在断开周期之后被移动返回到新的呈现组件106。在一个这样的实施例中,是否执行这样的重新定位的确定可以基于断开周期的时长;例如,简短的断开周期可以提示设备108自动返回应用108,而更长的断开周期可以使得应用108能够保持在替代呈现组件106上,除非用户102发起重新定位。在另一这样的实施例中,是否执行这样的重新定位的确定可以基于用户102与应用108进行的交互;例如,如果用户102已在替代呈现组件106上与应用108进行了交互,则该应用可以保持,但是如果用户102还没有与替代呈现组件106上的应用进行交互,可以发起自动的重新定位。
作为这个第五方面的第七变异,当呈现组件106被从设备104中断开时,设备104可以采用各种方式来响应。作为第一这样的示例,设备104可以丢弃断开的呈现组件106的应用呈现历史202,或者可以在稍后重新连接的情况下存留应用呈现历史202。作为第二这样的示例,例如通过将应用呈现204从断开的呈现组件106的应用呈现历史202移动到另一呈现组件106的应用呈现历史202,设备104可以将在断开的呈现组件106上呈现过的一个或多个应用1098重新定位到其他的呈现组件106。替换地,设备104可以终止仅在断开的呈现组件106上呈现过的应用108。可选地,设备104可以存留这样的应用108的应用状态,并且可以在应用108在同一呈现组件108的重新连接上或者在不同的呈现组件108上被重新实例化时利用最新的应用状态来恢复这样的应用108。许多这样的变异可以被包括在应用呈现历史102的适配中来根据在本文呈现的技术反映用户102和设备104的计算环境的动态性质。
F.计算环境
图10和以下讨论提供用于实现在本文阐述的一个或多个规定的实施例的合适计算环境的简明的一般描述。图10的操作环境只是合适操作环境的一个示例并且不打算建议关于操作环境的使用或功能的范畴的限制。示例计算设备包括但不限于个人计算机、服务器计算机、手持式或膝上型设备、移动设备(诸如移动电话、个人数字助理(PDA)、媒体播放器等等)、多处理器系统、消费电子产品、微型计算机、大型计算机、包括任何的上面系统或设备的分布式计算环境等等。
虽然不是必需的,但是在由一个或多个计算设备执行的“计算机可读指令”的一般上下文中描述实施例。计算机可读指令可以经由(下面讨论的)计算机可读媒体来分发。计算机可读指令可以被实现为执行特定任务或实现特定抽象数据类型的程序模块,诸如功能、对象、应用编程接口(API)、数据结构等等。典型地,在各种环境中可以根据需要来组合或分发计算机可读指令的功能。
图10举例说明包括被配置成实现在本文提供的一个或多个实施例的计算设备1002的系统1000的示例。在一种配置中,计算设备1002包括至少一个处理单元1006和存储器1008。取决于计算设备的确切配置和类型,存储器1008可以是易失性的(例如,诸如RAM)、非易失性的(例如,诸如ROM、闪存等)或这二者的某种组合。在图10中利用虚线1004来举例说明这种配置。
在其他实施例中,设备1002可以包括附加的特性和/或功能。例如,设备1002也可以包括附加的(例如可移除的和/或不可移除的)储存器,其包括但不限于磁储存器、光储存器等等。在图10中利用储存器1010来举例说明这样的附加储存器。在一个实施例中,用于实现在本文提供的一个或多个实施例的计算机可读指令可以在储存器1010中。储存器1010也可以存储其他的计算机可读指令来实现操作系统、应用程序等等。例如,计算机可读指令可以被加载到存储器1008中,以便由处理单元1006执行。
如在本文使用的术语“计算机可读媒体”包括计算机可读存储设备,其排除其他形式的包括通信媒体的计算机可读媒体,诸如信号。这样的计算机可读存储设备可以是易失性的和/或非易失性的、可移除的和/或不可移除的,并且可以牵涉各种类型的存储计算机可读指令或其他数据的物理设备。存储器1008和储存器1010是计算机存储媒体的示例。计算机存储设备包括但不限于RAM、ROM、EEPROM、闪存或其他存储技术、CD-ROM、数字多用盘(DVD)或其他光储存器、磁带盒、磁带和磁盘储存器或其他磁存储设备。
设备1002也可以包括允许设备1002与其他设备通信的(多个)通信连接1016。(多个)通信连接1016可以包括但不限于调制解调器、网络接口卡(NIC)、集成网络接口、射频发射机/接收机、红外端口、USB连接或用于将计算设备1002连接到其他计算设备的其他接口。(多个)通信连接1016可以包括有线连接或无线连接。(多个)通信连接1016可以发射和/或接收通信媒体。
术语“计算机可读媒体”可以包括通信媒体。通信媒体典型地将计算机可读指令或其他数据收录在“调制数据信号”诸如载波或其他传输机制中,并且包括任何的信息递送媒体。术语“调制数据信号”可以包括使得其特征之中的一个或多个特征以在信号中编码信息的方式来设置或改变的信号。
设备1002可以包括(多个)输入设备1014,诸如键盘、鼠标、笔、语音输入设备、触摸输入设备、红外摄像机、视频输入设备和/或任何其他输入设备。在设备1002中也可以包括(多个)输出设备1012,诸如一个或多个显示器、扬声器、打印机和/或任何其他输出设备。(多个)输入设备1014和(多个)输出设备1012可以经由有线连接、无线连接或其任何组合而被连接到设备1002。在一个实施例中,来自另一计算设备的输入设备或输出设备可以被用作用于计算设备1002的(多个)输入设备1014或(多个)输出设备1012。
计算设备1002的组件可以通过各种互连诸如总线来连接。这样的互连可以包括外围组件互连(PCI),诸如PCI Express、通用串行总线(USB)、火线(IEEE 1394)、光总线结构等等。在另一实施例中,计算设备1002的组件可以利用网络来互连。例如,存储器1008可以包括通过网络互连的位于不同物理位置中的多个物理存储单元。
本领域技术人员将认识到:用于存储计算机可读指令的存储设备可以跨越网络来分布。例如,经由网络1018可访问的计算设备920可以存储计算机可读指令来实现在本文提供的一个或多个实施例。计算设备1002可以访问计算设备1020并下载一部分或所有的计算机可读指令,以便执行。替换地,计算设备1002可以根据需要下载计算机可读指令的片段,或者可以在计算设备1002上执行一些指令并在计算设备1020上执行一些指令。
G.术语的使用
虽然以特定于结构特性和/或方法动作的语言描述了主题,但是将明白:在所附的权利要求书中定义的主题不一定限于上面描述的具体特性或动作。相反,上面描述的具体特性和动作被公开为实现这些权利要求的示例形式。
如在这个申请中所使用的,术语“组件”、“模块”、“系统”、“界面”等等一般旨在涉及计算机相关的实体,或硬件、软件与硬件的组合、软件或执行中的软件。例如,组件可以是但不限于在处理器上运行的进程、处理器、对象、可执行文件、执行线程、程序和/或计算机。通过图解,在控制器上运行的应用和控制器二者能够是组件。一个或多个组件可以驻留在进程和/或执行线程内,并且组件可以被定位在一台计算机上和/或被分布在两个或更多计算机之间。
此外,所请求保护的主题可以使用标准的编程和/或工程技术被实现为方法、设备或制品来生产软件、固件、硬件或其任何组合,从而控制计算机来实现所公开的主题。如在本文使用的术语“制品”旨在涵盖从任何的计算机可读设备、载体或媒体可访问的计算机程序。当然,本领域技术人员将认识到:可以对这种配置进行许多修改而不偏离所请求保护的主题的范畴或精神。
在本文提供实施例的各种操作。在一个实施例中,所描述的操作之中的一个或多个操作可以构成存储在一个或多个计算机可读媒体上的计算机可读指令,其在由计算设备执行时将导致计算设备执行所描述的操作。描述一些或所有操作的顺序不应被解释成暗示:这些操作一定是顺序相关的。在得益于这个描述的情况下,本领域技术人员将意识到可供替换的排序。进一步,将明白:不是所有的操作一定存在于在本文提供的每一个实施例中。
在本文被描述为“示例”的任何方面或设计并不一定被解释为优于其他方面或设计。相反,词“示例”的使用旨在呈现可能涉及在本文呈现的技术的一个可能的方面和/或实现方式。这样的示例对于这样的技术而言并不是必需的或旨在进行限制。这样的技术的各种实施例可以独自或在与其他特性的组合中包括这样的示例和/或可以改变和/或省略所举例说明的示例。
如在这个申请中使用的,术语“或”旨在意味着包容“或”而非异“或”。即,除非另有指定或从上下文中清楚,否则“X采用A或B”旨在意味着任何的自然包容性排列。即,如果X采用A;X采用B;或者X采用A和B二者,则在任何的前述情况下满足“X采用A或B”。另外,在这个申请和所附的权利要求书中使用的冠词“一”和“一个”一般可以被解释成意味着“一个或多个”,除非另有指定或从上下文中清楚其涉及单数形式。
并且,虽然本公开已针对一个或多个实现方式进行显示和描述了,但是基于这个说明书和附图的阅读和理解,本领域的技术人员将想到等效的改变和修改。本公开包括所有这样的修改和改变并且只利用随后权利要求书的范畴来限制。尤其,至于利用上述的组件(例如元素、资源等)执行的各种功能,除非另有指示,否则用于描述这样的组件的术语旨在对应于执行所描述的组件的指定功能的任何组件(例如其在功能上是等效的),即使在结构上并不等效于在本文举例说明的本公开的示例实现方式中的功能的所公开的结构。另外,虽然仅针对若干实现方式之一公开了本公开的特定特性,但是这样的特性可以与其他实现方式的一个或多个其他特性进行结合,这对于任何给定的或特定的应用而言可能是期望的和有利的。此外,至于在或者详细描述或者权利要求书中使用术语“包括”、“具有”、“有”、“利用”或其变异的程度,这样的术语旨在以类似于术语“包括”的方式而是包容性的。

Claims (15)

1.一种在具有处理器和至少两个呈现组件的设备上呈现应用的方法,所述方法包括:
在所述处理器上执行导致所述设备执行以下的指令:
针对相应的呈现组件,生成应用呈现历史,所述应用呈现历史识别通过所述呈现组件对应用的应用呈现;
响应于通过被选择的呈现组件来呈现被选择的应用的应用呈现,将所述应用呈现记录在所选择的呈现组件的应用呈现历史中;和
响应于接收到将被选择的呈现组件转移离开当前应用呈现的请求:
从所选择的呈现组件的应用呈现历史中,选择第二应用呈现;和
将所选择的呈现组件从所述当前应用呈现转移到所述第二应用呈现。
2.根据权利要求1所述的方法,其中:
相应的呈现组件的应用呈现历史进一步代表已通过所述呈现组件呈现所述应用呈现的应用顺序历史;和
选择所述第二应用进一步包括:选择在用于所选择的呈现组件的应用呈现历史的应用顺序历史中在所述当前应用呈现之前的第二应用呈现。
3.根据权利要求2所述的方法,其中所述应用顺序历史进一步代表已由所述设备的用户选择所述应用的顺序。
4.根据权利要求2所述的方法,其中:
所选择的呈现组件进一步包括显示器;
所述应用顺序历史与在所述显示器上呈现的应用呈现的Z轴次序相关联;和
转移所选择的呈现组件进一步包括:以所述显示器的Z轴次序在所述当前应用呈现上方重新排序所述第二应用呈现。
5.根据权利要求1所述的方法,其中选择所述第二应用呈现进一步包括:
向用户呈现在所选择的呈现组件的应用呈现历史中具有应用呈现的应用;和
从所述用户接收对第二应用的选择,所述第二应用与来自所述应用呈现的所述第二应用呈现相关联。
6.根据权利要求1所述的方法,其中:
所述当前应用呈现与提供任务顺序的任务流相关联;和
选择所述第二应用进一步包括:选择在所述任务流的任务顺序中跟随在所述当前应用呈现之后的所述第二应用呈现。
7.根据权利要求1所述的方法,其中:
所选择的应用进一步包括至少两个应用视图;和
记录所述应用呈现进一步包括:响应于通过被选择的呈现组件来呈现所选择的应用的被选择的应用视图,将所选择的应用的所选择的应用视图的应用呈现记录在所选择的呈现组件的应用呈现历史中。
8.根据权利要求1所述的方法,其中:
接收所述请求进一步包括:接收在所选择的呈现组件上暂停所述当前应用的请求;和
转移所选择的呈现组件进一步包括:从所选择的呈现组件的应用呈现历史中移除所述当前应用的当前应用呈现。
9.根据权利要求1所述的方法,其中:
接收所述请求进一步包括:接收在暂停所述第二应用之后转移到所述第二应用呈现的请求;和
转移所选择的呈现组件进一步包括:重新实例化所述第二应用。
10.一种呈现应用的设备,包括:
至少两个呈现组件;
处理器;和
存储指令的存储器,所述指令当在所述处理器上被执行时提供:
针对相应的呈现组件,提供应用呈现历史,所述应用呈现历史识别通过所述呈现组件对应用的应用呈现;
应用历史记录器,其响应于通过被选择的呈现组件来呈现被选择的应用的应用呈现,而将所述应用呈现记录在所选择的呈现组件的应用呈现历史中;和
应用切换器,其响应于接收到将被选择的呈现组件转移离开当前应用呈现的请求:
从所选择的呈现组件的应用呈现历史中,选择第二应用呈现;以及
将所选择的呈现组件从所述当前应用呈现转移到所述第二应用呈现。
11.根据权利要求10所述的设备,其中:
相应的应用呈现与应用呈现类型相关联;以及
所述应用切换器通过根据应用呈现类型、通过所选择的呈现组件呈现所述第二应用的应用呈现来转移所选择的呈现组件。
12.根据权利要求11所述的设备,其中:
所选择的呈现组件根据呈现能力来呈现所述应用呈现;以及
所述应用切换器通过为利用所选择的呈现组件的呈现能力的所述第二应用呈现选择所述应用呈现类型来呈现所述第二应用呈现。
13.根据权利要求11所述的设备,其中:
所选择的呈现组件根据呈现组件策略来呈现所述应用;以及
所述应用切换器通过选择与所选择的呈现组件的呈现组件策略相一致的所述第二应用的应用呈现类型来呈现所述第二应用。
14.根据权利要求11所述的设备,其中:
应用历史记录器接收将应用呈现从当前呈现组件重新定位到所选择的呈现组件的请求;和
所述应用切换器通过将所述第二应用从与通过所述当前呈现组件的应用呈现相关联的当前应用呈现类型重新格式化为所选择的呈现组件的应用呈现类型来呈现所述第二应用。
15.根据权利要求11所述的设备,其中:
所选择的呈现组件进一步包括显示器;
所述应用呈现类型进一步包括先前已呈现所述应用呈现的所述显示器的区域;和
所述应用切换器通过将所述应用呈现安置在所述显示器的所述区域中来呈现所述第二应用。
CN201580051897.3A 2014-09-24 2015-09-18 在具有至少两个呈现组件的设备上呈现应用的方法 Active CN106716356B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/495,181 US9860306B2 (en) 2014-09-24 2014-09-24 Component-specific application presentation histories
US14/495181 2014-09-24
PCT/US2015/050866 WO2016048812A1 (en) 2014-09-24 2015-09-18 Component-specific application presentation histories

Publications (2)

Publication Number Publication Date
CN106716356A CN106716356A (zh) 2017-05-24
CN106716356B true CN106716356B (zh) 2020-05-19

Family

ID=54261081

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201580051897.3A Active CN106716356B (zh) 2014-09-24 2015-09-18 在具有至少两个呈现组件的设备上呈现应用的方法

Country Status (11)

Country Link
US (1) US9860306B2 (zh)
EP (1) EP3198413A1 (zh)
JP (1) JP6700259B2 (zh)
KR (1) KR102346571B1 (zh)
CN (1) CN106716356B (zh)
AU (1) AU2015321700B2 (zh)
BR (1) BR112017004026A2 (zh)
CA (1) CA2959733A1 (zh)
MX (1) MX2017003839A (zh)
RU (1) RU2693186C2 (zh)
WO (1) WO2016048812A1 (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10448111B2 (en) 2014-09-24 2019-10-15 Microsoft Technology Licensing, Llc Content projection
US9769227B2 (en) 2014-09-24 2017-09-19 Microsoft Technology Licensing, Llc Presentation of computing environment on multiple devices
US10635296B2 (en) 2014-09-24 2020-04-28 Microsoft Technology Licensing, Llc Partitioned application presentation across devices
US10025684B2 (en) 2014-09-24 2018-07-17 Microsoft Technology Licensing, Llc Lending target device resources to host device computing environment
US10439892B2 (en) * 2016-08-12 2019-10-08 Microsoft Technology Licensing, Llc Optimizing performance based on behavioral and situational signals
US10521187B2 (en) * 2016-08-31 2019-12-31 Lenovo (Singapore) Pte. Ltd. Presenting visual information on a display
CN107438070B (zh) * 2017-07-28 2020-12-04 上海联影医疗科技股份有限公司 一种协议配置方法及装置
CN109569214B (zh) * 2018-12-24 2021-07-16 海信视像科技股份有限公司 分屏模式下的应用显示方法及装置、显示设备

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102866913A (zh) * 2011-02-14 2013-01-09 微软公司 移动设备上的任务切换

Family Cites Families (63)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100005396A1 (en) 2000-02-18 2010-01-07 Nason D David Method and system for controlling a comlementary user interface on a display surface
SE522878C2 (sv) 2000-06-16 2004-03-16 Ericsson Telefon Ab L M Datakommunikationssystem
US6748195B1 (en) 2000-09-29 2004-06-08 Motorola, Inc. Wireless device having context-based operational behavior
US20030055738A1 (en) 2001-04-04 2003-03-20 Microcell I5 Inc. Method and system for effecting an electronic transaction
US6941356B2 (en) 2001-06-29 2005-09-06 International Business Machines Corporation Automated configuration enabled via interrogation over network
FI111494B (fi) 2001-06-29 2003-07-31 Nokia Corp Langaton käyttöliittymän laajennus
US20130024778A1 (en) 2011-07-13 2013-01-24 Z124 Dynamic cross-environment application configuration/orientation
US7010755B2 (en) 2002-04-05 2006-03-07 Microsoft Corporation Virtual desktop manager
US20030214458A1 (en) 2002-05-20 2003-11-20 Vladimir Giemborek Multiple display configuration
CZ294898B6 (cs) 2002-12-16 2005-04-13 České Vysoké Učení Technické Fakulta Elektrotechnická Zapojení pro generování multiplikativní inverze nad konečným tělesem GF(p)
US7840509B1 (en) 2003-03-26 2010-11-23 Edmund Messina Computer-based system for interrogating a user and generating a result
US8504936B2 (en) 2010-10-01 2013-08-06 Z124 Changing stack when swapping
US8150945B2 (en) 2003-09-22 2012-04-03 Broadcom Corporation Host arbitrated user interface resource sharing
US7716273B2 (en) 2003-10-24 2010-05-11 Microsoft Corporation Systems and methods for projecting content from computing devices
US7761800B2 (en) * 2004-06-25 2010-07-20 Apple Inc. Unified interest layer for user interface
US20060203758A1 (en) 2005-03-11 2006-09-14 Samsung Electronics Co., Ltd. Mobile terminal for relaying multimedia data to an external display device
US7340686B2 (en) * 2005-03-22 2008-03-04 Microsoft Corporation Operating system program launch menu search
US20060236255A1 (en) * 2005-04-18 2006-10-19 Microsoft Corporation Method and apparatus for providing audio output based on application window position
JP2006330912A (ja) * 2005-05-24 2006-12-07 Toshiba Corp 情報処理装置およびプログラム
US7523226B2 (en) 2005-11-09 2009-04-21 Microsoft Corporation Controlling an auxiliary display user interface based on usage context
US7620610B2 (en) 2006-06-27 2009-11-17 Microsoft Corporation Resource availability for user activities across devices
US7676761B2 (en) * 2006-06-30 2010-03-09 Microsoft Corporation Window grouping
US7937075B2 (en) 2006-10-06 2011-05-03 At&T Intellectual Property I, L.P. Mode changing of a mobile communications device and vehicle settings when the mobile communications device is in proximity to a vehicle
US20080248834A1 (en) 2007-04-03 2008-10-09 Palm, Inc. System and methods for providing access to a desktop and applications of a mobile device
US9311115B2 (en) 2008-05-13 2016-04-12 Apple Inc. Pushing a graphical user interface to a remote device with display rules provided by the remote device
CN102027450B (zh) 2008-05-20 2015-05-13 思杰系统有限公司 由移动计算装置使用外部显示装置的方法和系统
US20100064228A1 (en) 2008-09-11 2010-03-11 Ely Tsern Expandable system architecture comprising a handheld computer device that dynamically generates different user environments with secondary devices with displays of various form factors
US20110066971A1 (en) 2009-09-14 2011-03-17 Babak Forutanpour Method and apparatus for providing application interface portions on peripheral computing devices
US20110126119A1 (en) * 2009-11-20 2011-05-26 Young Daniel J Contextual presentation of information
KR20110058975A (ko) 2009-11-27 2011-06-02 삼성전자주식회사 슬라이딩형 휴대용 단말기
US8661361B2 (en) * 2010-08-26 2014-02-25 Sitting Man, Llc Methods, systems, and computer program products for navigating between visual components
US20110214162A1 (en) 2010-02-26 2011-09-01 Nokia Corporation Method and appartus for providing cooperative enablement of user input options
US8634873B2 (en) 2010-03-17 2014-01-21 Microsoft Corporation Mobile communication device having multiple, interchangeable second devices
CN102918490B (zh) 2010-04-01 2014-07-23 思杰系统有限公司 与在平板计算装置的虚拟桌面内显示的远程应用交互
US8266551B2 (en) 2010-06-10 2012-09-11 Nokia Corporation Method and apparatus for binding user interface elements and granular reflective processing
US9134799B2 (en) 2010-07-16 2015-09-15 Qualcomm Incorporated Interacting with a projected user interface using orientation sensors
US20120050183A1 (en) 2010-08-27 2012-03-01 Google Inc. Switching display modes based on connection state
US20130145279A1 (en) 2011-11-16 2013-06-06 Flextronics Ap, Llc Removable, configurable vehicle console
US8711552B2 (en) 2010-10-06 2014-04-29 Compal Electronics Inc. Modular system having expandable form factor
US9086839B2 (en) 2010-12-15 2015-07-21 Userful Corporation Multiple user computing method and system for same
US8963799B2 (en) 2011-01-11 2015-02-24 Apple Inc. Mirroring graphics content to an external display
US20120266079A1 (en) 2011-04-18 2012-10-18 Mark Lee Usability of cross-device user interfaces
EP2701044B1 (en) 2011-04-20 2021-08-25 NEC Corporation Information processing device, information processing method, and computer-readable recording medium which records program
US20120282914A1 (en) 2011-05-06 2012-11-08 Lael Andrew Alexander Smart phone companion loop
US9766782B2 (en) 2011-08-19 2017-09-19 Apple Inc. Interactive content for digital books
US9542148B2 (en) 2011-08-24 2017-01-10 Lenovo (Singapore) Pte. Ltd. Adapting a user interface of a remote desktop host
US20130057572A1 (en) 2011-09-07 2013-03-07 Microsoft Corporation Multiple Display Device Taskbars
US9495012B2 (en) 2011-09-27 2016-11-15 Z124 Secondary single screen mode activation through user interface activation
US20130179838A1 (en) 2012-01-05 2013-07-11 Microsoft Corporation Maintanence of terminated applications within the backstack
US9032292B2 (en) 2012-01-19 2015-05-12 Blackberry Limited Simultaneous display of multiple maximized applications on touch screen electronic devices
KR101901720B1 (ko) 2012-04-02 2018-11-13 삼성전자주식회사 더미 장치와의 연동 방법 및 그 전자 장치
KR101952682B1 (ko) 2012-04-23 2019-02-27 엘지전자 주식회사 이동 단말기 및 그 제어방법
GB2502082B (en) 2012-05-15 2014-04-16 Displaylink Uk Ltd A display system
US9003299B2 (en) 2012-06-08 2015-04-07 Apple Inc. Extensible application state preservation architecture
US20130335340A1 (en) 2012-06-19 2013-12-19 International Business Machines Corporation Controlling display of images received from secondary display devices
JP6478181B2 (ja) 2012-09-10 2019-03-06 三星電子株式会社Samsung Electronics Co.,Ltd. 携帯端末と外部表示装置の連結運用方法及びこれを支援する装置
US20140118222A1 (en) 2012-10-30 2014-05-01 Cloudcar, Inc. Projection of content to external display devices
US20140129695A1 (en) 2012-11-02 2014-05-08 Gface Gmbh Connected devices
US20140181715A1 (en) 2012-12-26 2014-06-26 Microsoft Corporation Dynamic user interfaces adapted to inferred user contexts
US9344868B2 (en) 2013-02-25 2016-05-17 Here Global B.V. Method and apparatus for contextual content and service forwarding for mobile devices
KR102179816B1 (ko) * 2014-03-25 2020-11-17 엘지전자 주식회사 히스토리 정보를 제공하는 디스플레이 디바이스 및 그 제어 방법
US20150324067A1 (en) * 2014-05-07 2015-11-12 Honda Motor Co., Ltd. Vehicle infotainment gateway - multi-application interface
US20160070580A1 (en) 2014-09-09 2016-03-10 Microsoft Technology Licensing, Llc Digital personal assistant remote invocation

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102866913A (zh) * 2011-02-14 2013-01-09 微软公司 移动设备上的任务切换

Also Published As

Publication number Publication date
CA2959733A1 (en) 2016-03-31
JP2017529624A (ja) 2017-10-05
JP6700259B2 (ja) 2020-05-27
US20160085416A1 (en) 2016-03-24
AU2015321700B2 (en) 2020-10-29
AU2015321700A1 (en) 2017-03-16
RU2017109690A3 (zh) 2019-04-17
WO2016048812A1 (en) 2016-03-31
KR102346571B1 (ko) 2021-12-31
CN106716356A (zh) 2017-05-24
MX2017003839A (es) 2017-06-29
BR112017004026A2 (pt) 2017-12-05
RU2693186C2 (ru) 2019-07-01
US9860306B2 (en) 2018-01-02
RU2017109690A (ru) 2018-09-24
KR20170062494A (ko) 2017-06-07
EP3198413A1 (en) 2017-08-02

Similar Documents

Publication Publication Date Title
CN106716356B (zh) 在具有至少两个呈现组件的设备上呈现应用的方法
US11062268B2 (en) Presenting favorite contacts information to a user of a computing device
CA2962706C (en) Methods and systems for obscuring text in a conversation
US9432314B2 (en) Quick navigation of message conversation history
EP2883129B1 (en) Unified communications application functionality in condensed and full views
JP6506431B2 (ja) デジタルコンテンツを再生しながらコンテキストをブラウズするためのモバイルユーザインターフェース
US9531815B2 (en) Relevant communication mode selection
US11423073B2 (en) System and management of semantic indicators during document presentations
JP2015531530A (ja) サムネイルおよび文書マップに基づく、文書内ナビゲーション
CA2808993A1 (en) System and method for providing a contact list input interface
US11693553B2 (en) Devices, methods, and graphical user interfaces for automatically providing shared content to applications
EP2731011A1 (en) Shared instant media access for mobile devices
US20230133548A1 (en) Devices, Methods, and Graphical User Interfaces for Automatically Providing Shared Content to Applications
WO2017045652A2 (zh) 一种信息内容的显示方法及相应的终端设备
US10198245B1 (en) Determining hierarchical user interface controls during content playback

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant