CN105183495B - 跨操作系统域来协调活动视图 - Google Patents

跨操作系统域来协调活动视图 Download PDF

Info

Publication number
CN105183495B
CN105183495B CN201510288926.XA CN201510288926A CN105183495B CN 105183495 B CN105183495 B CN 105183495B CN 201510288926 A CN201510288926 A CN 201510288926A CN 105183495 B CN105183495 B CN 105183495B
Authority
CN
China
Prior art keywords
agent
operating system
system domain
application
link
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
CN201510288926.XA
Other languages
English (en)
Other versions
CN105183495A (zh
Inventor
拉维·辛格
丹尼尔·约纳斯·梅杰
凯文·丹尼斯·古德曼
西瓦库玛·纳加拉扬
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.)
BlackBerry Ltd
Original Assignee
BlackBerry Ltd
2236008 Ontario Inc
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 BlackBerry Ltd, 2236008 Ontario Inc filed Critical BlackBerry Ltd
Publication of CN105183495A publication Critical patent/CN105183495A/zh
Application granted granted Critical
Publication of CN105183495B publication Critical patent/CN105183495B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/02Standardisation; Integration
    • H04L41/0246Exchanging or transporting network management information using the Internet; Embedding network management web servers in network elements; Web-services-based protocols
    • H04L41/026Exchanging or transporting network management information using the Internet; Embedding network management web servers in network elements; Web-services-based protocols using e-messaging for transporting management information, e.g. email, instant messaging or chat
    • 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/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • 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]
    • 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
    • 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
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/04Network management architectures or arrangements
    • H04L41/042Network management architectures or arrangements comprising distributed management centres cooperatively managing the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/143Termination or inactivation of sessions, e.g. event-controlled end of session

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (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

跨操作系统域来协调活动视图
技术领域
本公开总体上涉及在设备上管理有关信息的呈现。
背景技术
包括个人计算机、移动设备、智能电话等在内的很多设备利用应用来呈现信息。每个应用包括用于检测用户输入、捕捉用户输入、和/或呈现数据的一个或多个用户界面元素。用户界面元素可以被称为小部件(widgets)、窗口、屏幕、视图、或其他这种术语。设备上的操作系统管理应用,并辅助经由设备来呈现信息。操作系统(OS)为正在设备上运行的应用提供了公共服务。此外,操作系统控制对与应用相关联的用户界面元素的呈现。
附图说明
通过参考附图,可以更好地理解各实施例以及让大量目的、特征和优点对于本领域技术人员显而易见。
图1A和1B是使用代理链接来管理跨域任务的示例说明图。
图2是示出了建立和使用针对多个OS域的代理链接的示例流程图。
图3是呈现与第一OS域相关联的第一应用的活动视图的示例说明图。
图4是呈现与第一OS域相关联的第二应用的活动视图的示例说明图。
图5是在针对设备来激活任务切换器时呈现任务视图的示例说明图。
图6是确定跨域任务的示例说明图。
图7和8是建立和使用针对与多个OS域相关联的跨域任务的代理链接的示例说明图。
图9是呈现跨域任务的任务视图的示例说明图。
图10A和10B是示出了使用响应值来管理跨域任务的示例流程图。
图11是示出了呈现跨域任务的示例流程图。
图12A是检测对与第一OS域相关联的第一应用的选择的示例说明图。
图12B是使用与第一OS域相关联的第一应用的示例说明图。
图12C是检测第一应用的与第二应用有关的活动的示例说明图,第二应用与第二OS域相关联。
图13A是检测与第二OS域相关联的第二应用的活动的性能的示例说明图。
图13B是检测与第二OS域相关联的第二应用的活动的响应值的示例说明图。
图14A是经由设备来接收用户输入的示例说明图。
图14B是呈现多个OS域的跨域任务的任务列表的示例说明图。
图15A和15B是示出了管理跨域任务的示例流程图。
图16A是对发起了针对跨域任务的回退栈特征的操作的用户输入进行检测的示例说明图。
图16B是向第一OS域提供响应值以修订第一OS域中与跨域任务相关联的活动视图的呈现的示例说明图。
图17A是使用响应值以修订第一OS域中与跨域任务相关联的活动视图的呈现的示例说明图。
图17B是终止跨域任务的示例说明图。
图18是示例设备的说明图。
具体实施方式
以下描述包括涉及跨多个操作系统域来管理任务的示例系统、方法、技术、指令序列、计算机程序产品。然而,应当理解:可以在没有这些具体细节的情况下来实现所述实施例。例如,尽管示例可以指代移动设备的操作系统实例,应当理解:相同或实质上相似的技术可以应用于具有操作系统的任何类型设备。在其他实例中,众所周知的指令实例、协议、结构和技术并未被详细示出,以不混淆本描述。
应用可以具有被定义用于呈现数据和/或捕捉输入的多个用户界面。这些用户界面在本文中被称为“活动视图(activity view)”。每个活动视图对应于一个或多个活动(activity)。如本文所使用的“活动”指代应用的一个或多个特定功能,且指代用户可以在该应用内进行的单一事情。例如,拍摄照片是摄像机应用的活动。因此,摄像机应用呈现用于拍摄照片的活动视图。该活动视图可以具有可选择的元素,例如图形“照片按钮”,可以经由用户输入来选择该可选择的元素,以发起拍摄照片的活动。对照片按钮的选择将触发事件,该事件引起经由摄像机来拍摄照片。操作系统可以对该事件进行响应,例如通过提供针对摄像机资源的摄像机应用访问来进行响应。
当具有一个或多个活动视图的组涉及相同的执行处理器线程,该组活动视图在本文中可以被称为任务。若干活动视图可以基于活动视图之间的关系与相同“任务”相关联。这些关系可以在内部定义(例如,相同应用或应用类型的活动视图,例如,图像应用)或在外部定义(例如,基于输入序列相关的活动视图)。例如,当(例如通过第一用户输入)启动摄像机应用时,由于启动了该应用,可以创建任务。摄像机应用可以呈现与该任务相关联的第一活动视图。第一活动视图的可选择元素可以被配置为:在被第二用户输入选择时,打开媒体管理应用(例如,相片或视频图库)。在接收到第二用户输入时,媒体管理应用启动并呈现第二活动视图,例如“图库”活动视图。第二活动视图可以与以摄像机应用为开始的相同任务相关联。操作系统可以根据第一用户输入和第二用户输入发生的顺序将第一活动视图和第二活动视图在任务中成组在一起。这样,可以将相关联的活动视图视为操作系统内相同任务的一部分。即使活动视图来自于不同应用(例如,当应用关联以提供无缝用户体验时),操作系统也可以基于活动视图之间的关系将活动视图成组。
出于各种原因(例如,安全性),设备可以被配置为容宿多个操作系统实例(本文中称为“操作系统域”)。在这种场景下,操作系统域的应用具有针对彼此的数据的受限访问和受限可见性(如果有访问和可见性的话)。例如,第一OS域可以被指定为个人域且第二OS域可以被指定为工作域。第一OS域可以容宿面向消费者的应用(例如,社交网络应用、饭店位置应用)以及被配置用于个人电子邮件账户的电子邮件应用。第二OS域可以容宿各种生产应用和被配置用于工作账户的电子邮件应用。为了约束主机OS域中(配置的)数据,可以在具有多个OS域的设备上配置隔离机制(例如,防火墙)。
有可能让任务将不同OS域中的应用成组。这种任务可以被称为跨域任务,且跨域任务可以包括来自不同域的活动视图。根据一些实施例,可以通过“代理”来沟通(channel)“跨域事件”。跨域事件指代在第一OS域中检测到的跨入另一OS域中的事件(例如,鼠标点击事件、屏幕敲击事件等)。在事件引起执行呈现另一OS域的应用的数据的程序代码时,该事件跨入另一OS域中。例如,在第一OS域中容宿的摄像机应用中的图形按钮上的鼠标点击在该图形按钮引起第二OS域中容宿的媒体管理应用(例如,相片/视频图库)的呈现的情况下跨入第二域。在使用代理的情况下,可以用聚合的方式呈现驻留在不同OS域中的任务,就好像单一任务一样。代理是跨OS域边界通信并作为用于不同OS域中的活动视图的代理来工作的进程或应用。代理处理通信,以协调在不同OS域的活动视图之间的转换。
图1A和1B是使用代理链接来管理跨域任务的示例说明图。在图1A中,设备100运行两个独立的操作系统域(“OS域”):第一OS域101和第二OS域102。第一应用103(例如,摄像机应用)在第一OS域101上运行。第二应用104(例如,图库应用)在第二OS域102上运行。第一应用103呈现第一活动视图105(例如,摄像机应用的主活动视图)。第二应用104呈现第二活动视图106(例如,图库应用的主活动视图)。第二活动视图106可以响应于来自第一活动视图105的用户输入而被启动或打开,或者反之。如果活动视图之一响应于另一活动视图中的输入而被打开,则设备100将来自第一OS域101的第一活动视图105和来自第二OS域102的第二活动视图106成组到跨域任务中。
为了跨第一OS域101和第二OS域102来管理跨域任务,第一OS域101可以向第一活动视图105指派第一代理107。第一代理107在第一OS域101中代表第一活动视图105,且可以在视图中隐藏。第二OS域102向第二活动视图106指派第二代理108。第一代理107与第二代理108相链接。作为示例,可以使用标识符(例如,标识符115,也可以被称为令牌)将代理链接彼此链接。由于一个OS域中的代理被配置为链接到另一个OS域中的代理,且反之亦然,因此本文中代理被称为“代理链接”。因此,第一代理107此后将被称为“第一代理链接107”且第二代理108此后将被称为“第二代理链接108”。第二代理链接108代表第二OS域102中的第二活动视图106,且也可以在视图中隐藏。
在本示例说明图中,当任务变为跨域任务时,形成第一代理链接107和第二代理链接108。第一应用103呈现第一活动视图105,例如通过呈现摄像机活动视图。然后第一应用103检测到第一活动视图105中用于启动与第二活动视图106相关联的活动的选择,例如,检测到对第一活动视图105中用于启动第二应用104的对按钮的选择。由于包括与第一活动视图105相对应的活动在内的任务现在也包括所启动的与第二OS域102的第二活动视图106相关联的活动,该任务变为跨域任务。响应于检测到对按钮的选择,第一OS域101(例如,系统进程,例如应用启动器)确定第二应用104对应于第二OS域102。然后第一OS域101生成第一代理链接107并向第二OS域102发送消息,以生成第二代理链接108。第一OS域101向第一代理链接107指派标识符115。第一OS域101还向第二OS域102提供标识符115,使得第二OS域102可以向第二代理链接108指派标识符115。第二代理链接108引起第二应用104使用第二活动视图106来启动。因此,OS域已形成了统一的跨域任务120。换言之,跨域任务是统一的,使得第一活动视图105和第二活动视图106可以经由设备100的显示器以好像它们术语一起的方式来呈现(例如,好像它们都源自于第一应用103)。
第一OS域101和第二OS域102可以协作管理统一跨域任务120。例如,使用标识符115,第一OS域101和第二OS域102彼此就第一代理链接107和第二代理链接108来通信。例如,当第二OS域102确定应当终止第二活动视图106时(例如,响应于对回退按钮的选择),第二OS域102确定第二活动视图106与第二代理链接108和标识符115相关联。然后,第二OS域102引起第二代理链接108进入显示的前台。第二代理链接108检测到其进入前台并发起指示标识符115的消息。该消息针对第一OS域101中的代理链接(其与标识符115相关联)进入前台。第二OS域102向第一OS域101发送该消息。第一OS域101确定所接收的标识符115与第一代理链接107相关联。因此,第一OS域引起第一代理链接107进入前台。第一代理链接107检测到其进入前台,并引起第一活动视图105代之以来到前台以被显示。因此,当第一OS域101和第二OS域102彼此就第一代理链接107和第二代理链接108(使用标识符115)来通信时,OS域可以与使用代理链接一起来管理具有来自两个应用的活动视图的栈(“统一活动视图栈”)的统一呈现顺序。换言之,当关闭第二活动视图106时(例如,经由按压设备100上的“返回”按钮),通过使用代理链接107和108,自动呈现第一活动视图105。
在图1B中,将来自图1A的设备100的示例描绘为移动设备125。移动设备125包括图1A所示的所有组件。移动设备125还包括可以经由显示器130来呈现任务列表的任务切换器,该任务列表包括统一跨域任务120。例如,任务切换器呈现正在设备100上运行的所有任务的视图。然而,取代呈现统一跨域任务120的由第一OS域101管理的部分的第一任务视图和统一跨域任务120的由第二OS域102管理的部分的第二任务视图,任务切换器呈现单个统一任务视图(“统一任务视图140”)。统一任务视图140可以仅示出统一活动视图栈上的最上方或活跃活动视图。例如,当第二活动视图106活跃时,可以经由用户输入(例如,经由设备按钮135的双击或某种其他用户界面命令)来发起任务切换器。响应于用户输入,第二OS域102确定第二活动视图106经由代理链接与第一活动视图105链接(例如,确定第二代理链接108链接到第一代理链接107)。因此,任务切换器在统一任务视图140中仅呈现第二活动视图106的缩略图图像136,且不呈现第一活动视图105的缩略图图像。任务切换器还确定统一跨域任务120是从第一应用103发起的。任务切换器可以示出与作为发起任务的应用的第一应用103相关联的图标137。从而,即使第二活动视图106实际上来自第二OS域102的第二应用104,通过呈现第二活动视图106的缩略图图像136以及图标137作为相同统一任务视图140的一部分,任务切换器也使得第二活动视图106表现得像来自第一应用103。
图2是示出了建立和使用多个OS域的代理链接的示例流程图(“流程”)200。图3、4、5、6、7、8和9(“图3~9”)是帮助说明图2的流程的概念图。本描述将以与图3~9相呼应的方式来呈现图2。
在图2中,流程200开始于步骤202,在步骤202中,设备在设备的第一操作系统(OS)域中执行第一应用。第一应用与至少第一活动视图相关联。例如,如图1A和1B中所提到的,第一应用可以是摄像机应用且第一活动视图可以是在摄像机启动时呈现的主视图。
流程200在步骤204处继续,在步骤204中,设备检测到与第一应用相关联的用户输入,该用户输入与激活第二应用的第二活动视图相关联。与第一应用相关联的用户输入可以激活启动第二应用的活动视图的命令。例如,启动第二应用活动视图的命令可以是对为用户输入事件(例如,图形按钮选择)定义的回调函数的调用。为了说明,呈现了摄像机应用的第一活动视图。该第一活动视图可以具有与使用设备中包括的摄像机来拍摄照片和/或视频有关的用户输入元素(例如,按钮、滑块控制等)。此外,第一活动视图还可以包括在被选择时将引起第二活动视图出现的用户输入元素(例如,图形按钮),该第二活动视图是例如第二应用的图库活动视图,该第二应用呈现与查看、编辑和删除经由摄像机应用拍摄的照片和视频有关的用户输入元素。
流程200在步骤206处继续,在步骤206中,设备确定第二应用对应于设备的第二OS域。第一应用不同于第二应用。第一OS域不同于第二OS域(例如,OS的分别并发运行的实例)。设备可以处于仅运行一个OS域的模式下。这样,设备将不确定第二应用是否对应于不同的OS域。作为步骤206的描述的上下文,本公开将首先经由图3~5来描述管理仅一个OS域的任务的示例。然后本描述将经由图6~9来描述管理多个OS域的任务的示例。
参见图3,示出了第一OS域301。第一OS域301具有已安装的各种应用302,例如第一应用310和第二应用320。应用302具有经由显示器可呈现的各种活动视图(“视图”)。各种视图可以与单独的活动类型相关联,以执行给定应用。例如,第一应用310包括视图312、视图314、以及视图316。作为示例,第一应用310可以是摄像机应用。视图312例如可以是用于为摄像机应用拍摄照片的主视图。视图314可以是用于拍摄视频的第二视图。视图316可以是用于控制摄像机应用的设置和首选项的第三视图。第二应用320也包括多个视图,例如视图322、视图324、和视图326。作为示例,第二应用320可以是用于查看、编辑、和删除照片和视频的图库应用。视图322可以是图库应用的用于查看照片和视频的主视图。视图324可以是图库应用的用于编辑照片和视频的第二视图。视图326可以是用于控制图库应用的设置和首选项的第三视图。
第一OS域301还包括系统元素330。系统元素330管理应用302的某些元素。例如,系统元素330可以管理任务和与任务关联的视图的呈现。系统元素330的一些示例包括任务切换器331和应用启动器333。应用启动器333被配置为管理操作系统域中安装的应用,且可以在一个应用启动来自另一个应用的活动视图时被调用。任务切换器331被配置为呈现任务列表,并可以经由设备的显示器将特定任务的表示呈现为“任务视图”。任务视图可以被表示为每个任务的活跃的最上方活动视图的缩略图图像。
在图3中,视图312被描绘为作为设备的显示器的活跃视图来呈现。例如,视图312具有非虚轮廓。视图314、316、322、324和326具有虚轮廓,以描绘它们并未正在经由显示设备来呈现。活跃视图指代经由显示器可见的视图。例如,相对于较大计算设备的显示屏幕,一些设备(例如,移动设备)具有小显示屏幕。从而,一些设备利用经由显示器将一次仅呈现一个视图的操作系统。活跃视图是所呈现的视图。活跃视图通常将比其他视图占据更多的显示区域,且可以占据全部显示区域。若干应用可以在设备上运行。在该示例说明图中,第一应用310和第二应用320都正在运行,但是应用之一的视图是活跃的。设备的任务切换器331在被激活时可以呈现设备上运行的任何应用的上一次访问的视图。对于具有与不同应用相关联的视图的任务,任务切换器331将呈现来自给定任务的视图栈的上一次访问视图的缩略图。
图4示出了在响应于与视图312相关联的用户输入而激活视图322之后视图将看起来什么样子的示例。例如,视图312可以包括图形按钮,该图形按钮可被选择以启动第二应用320。当选择图形按钮时,用于启动第二应用320的操作系统过程可以包括:应用启动器333确定是否安装了第二应用320且确定第二应用320的位置。响应于图形按钮,第二应用320启动并自动呈现视图322。应用启动器333现在跟踪在第一应用310和第二应用320上跨(span)的任务。例如,应用启动器333将在数据库记录中存储视图322和视图312的标识符。该记录还可以包括任务的标识符。该记录还可以规定视图322和312的栈顺序。从而,由应用启动器333将用于在有序栈中维护视图322和312的信息封装在记录中。当激活任务切换器331时,任务切换器331从应用启动器333获得与任务有关的数据404。数据404描述了在设备上运行的所有任务以及任何给定的任务的视图栈。任务切换器331可以使用数据404来呈现任何给定任务的视图栈的视觉描绘。例如,数据404包括在设备上运行的两个单独任务(第一任务410(即,“任务1”)和第二任务420(即,“任务2”))的信息。第一任务410包括与第一应用310和第二应用320相关的任务的视图栈,其中,上一个访问视图是视图322。第二任务420包括组合电子邮件任务的视图栈。
图5示出了示例设备525。设备525在激活任务切换器331时呈现任务视图540。为了该说明,任务切换器331在视图322是活跃视图时激活。因此,任务视图540仅示出了第一任务410的视图322的表示。例如,任务切换器331呈现表示视图322的第一缩略图图像536。任务切换器331还根据数据404来确定第一任务410是从第一应用310发起的。因此,任务切换器331示出了表示第一应用310的第一图标537。从而,即使视图322实际来自第二应用320,通过呈现第一缩略图图像536和图标537作为第一任务410的相同表示的一部分,任务切换器331也引起视图322表现得像来自第一应用310。任务视图540还呈现了第二任务420的表示,其包括第二任务420的上一次访问视图的缩略图图像538。此外,图标539指示了第二任务420的来源应用。
现在,使用图6、7和9(“图6~8”)作为示例,本描述将描述与跨域任务有关的步骤206、208和210。在图6中,示出了第一OS域601。第一OS域601具有已安装在第一OS域601中的各种应用602。例如,第一OS域601可以关于设备的第一类型应用,例如移动设备的“核心”应用(例如,摄像机应用、电话应用、地图应用等)。第一应用610在第一OS域601中实例化。应用602具有经由显示器可呈现的各种活动视图(“视图”)。各种视图可以与不同类型的活动相关联,以针对给定应用来执行。例如,第一应用610包括视图612、视图614和视图616。
第一OS域601还包括系统元素630,系统元素630包括任务切换器631、第一应用启动器632(“应用启动器1”)和代理管理器633。应用启动器632被配置为启动并跟踪在第一OS域601中包含的活动视图和任务。代理管理器633被配置为跟踪跨域任务并管理第一OS域601和第二OS域603之间的代理链接。任务切换器631被配置为经由设备的显示器来呈现任务列表中特定任务的表示。
在图6中,视图612被描绘为作为设备的显示器的活跃视图来呈现。当视图612活跃时,可以选择视图612的图形按钮,以启动第二应用620。然而第二应用620不在第一OS域601中,而是代之以在第二OS域603中。第二OS域603具有已安装在第二OS域603中的各种应用605。例如,第二OS域603可以关于设备的第二类型应用,例如移动设备的“个人”或“私人”应用(例如,图像图库应用、文本消息收发应用、个人电子邮件应用等)。第二应用620已在第二OS域603中实例化。应用605具有经由显示器可呈现的各种活动视图(“视图”)。各种视图可以与不同类型活动相关联,以针对任何给定应用来执行。例如,第二应用620包括视图622、视图624和视图626。此外,第二OS域603还包括系统元素660,系统元素660包括第二应用启动器662(“应用启动器2”)。第二应用启动器663被配置为启动并跟踪第二OS域603内包含的活动视图和任务。
暂时回到图2,步骤206指示:设备确定第二应用对应于与第一应用不同的设备的不同OS域。例如,在图6中,当视图612活跃时,且在选择按钮以启动第二应用620之后,第一应用启动器633访问应用数据650。应用数据650规定第一OS域601和第二OS域603,且针对第一OS域601和第二OS域603中每一个,还包括在每个域中实例化的每个应用的列表。第一应用启动器633检测到第二应用620安装在第二OS域中。例如,第一应用启动器633可以搜索或解析应用数据650,以找到与第二应用620相关联的指示符680。第一应用启动器633还可以确定第二应用620的指示符680与应用数据650中指示的第二OS域603的指示符681相关联。在其他示例中,第一应用启动器633可以仅具有对应用数据650的一部分的访问权限,例如仅关于第一OS域601的部分。第一应用启动器633可以查询其他OS域,以确认第二应用620在哪个域中实例化。例如,在一些实施例中,每个OS域具有跟踪在该特定域中实例化的应用的OS元素。在其他OS域无可见性或其他OS域的有限可见性的情况下,OS域可以利用负责域间通信的进程。例如,该进程(“域间协调器”)继承了特殊内核许可,以穿过OS域隔离机制(例如,OS域防火墙)。当未在第一OS域的应用跟踪数据中发现第二应用时,域间协调器查询其他OS域。具有第二应用的实例的OS域响应以对该OS域的指示。该指示可以是隐式的(例如,当设备上仅存在2个OS域时)或显式的(例如,在响应中指示的OS域标识符)。在一些实施例中,每个OS域可以访问对于应用来说不可见的全局目录,以确定应用的主机OS域。在应用被实例化时,主机OS域更新该全局目录。可以通过向不同OS域预配置不同的段或不同的结构,可以避免锁定。在一些实施例中,可以在不同OS域配置有不同应用指派时创建目录。
由于视图612已接收到与启动第二应用620相关联的选择,且第二应用620安装在第二OS域603中,则第二OS域603中的新任务将变为也包括第一OS域601中的现有任务在内的跨域任务。如前所述,在建立两个域之间的代理链接时涉及代理管理器633。
暂时回到图2,流程200在步骤208处继续,在步骤208中,设备在第一OS域中建立与第二OS域内的第二代理链接相对应的第一代理链接。第一代理链接与引起第二代理链接调用第二OS域内的第二应用的第二活动视图相关联。
图7和8示出了在第一OS域内建立与第二OS域内的第二代理链接相对应的第一代理链接的一个示例。在图7中,第一应用启动器632已确定了(例如,经由访问图6中的应用数据650)第二应用620与第二OS域603相关联。当视图612被作为第一任务来启动时,第一应用启动器632将视图612与第一任务的第一任务ID 760相关联。第一任务ID 760的记录包括与视图612相关联的视图标识符762(“视图1ID”)。由于从视图612中选择用于启动第二应用620的按钮且第二应用620与第二OS域603相关联,则将建立跨域任务。
作为视图612接收到用于打开第二应用620的视图622的选择的结果,向第一应用启动器632发送命令,以启动第二应用620。第一应用启动器632确定第二应用620和与第一OS域602不同的域相关联,第一应用启动器632启动第一代理链接711(“代理1”)。第一代理链接711可以是不可见的活动视图。应用启动器760可以生成第一代理链接711的对象引用(object reference)。针对第一代理链接711的对象引用将被称为第一代理引用761(“代理1ref”),且其与第一任务的第一任务ID 760一起存储。第一应用启动器632通过将第一代理引用761排序在视图标识符762之上,来跟踪第一任务的堆叠顺序(或“视图栈”)。在生成第一代理链接711之后,第一应用启动器632可以尝试将第一代理链接711带到显示器的前台,使得其堆叠在视图612上。
第一代理链接711生成唯一标识符(即,令牌721)并向代理管理器633提供该令牌721。代理管理器633生成数据存储器中的条目(例如,代理管理器633生成数据库701中的记录702)。表701包括关于第一OS域601中绑定到不同OS域中任务的代理的信息,包括关于跨域任务的信息710。例如,记录702可以包括令牌721和第一代理引用761。记录702还可以包括识别不同域中与第一代理链接711相关的第二任务的信息,这将在图8中进一步详细描述。
在图8中,在从第一代理链接711接收到令牌721之后,代理管理器633指示第二OS域603中对第二代理链接811的创建。例如,代理管理器633向第一应用启动器632传输令牌721,并请求第一应用启动器632向第二OS域603中的第二应用启动器662发送指令。从而,第一应用启动器632向第二应用启动器662发送具有生成第二代理链接811的指令的消息813。消息813包括令牌721的拷贝,该拷贝用于生成第二代理链接811。响应于生成第二代理链接811的指令,启动第二代理链接811,且由第二代理链接811的第二应用启动器662创建第二任务ID 860。第二任务的任务标识符将被称为第二任务ID 760(“任务2ID”)。第二任务涉及第二代理链接811。第二应用启动器662可以向第一应用启动器632发送消息814,以指示第二任务ID 860的值。
第二代理链接811可以是不可见且包括关于自己和视图622的特定指令在内的活动视图。第二代理链接811请求第二应用启动器662启动第二应用620(如果尚未运行)且将视图622带到前台。第二应用启动器662可以将视图622与第二任务ID 760相关联。第二任务是跨域任务的第二部分,因为其涉及第二OS域603。第二应用启动器662在第二OS域603中的数据存储器的条目中存储信息。例如,第二应用启动器662存储第二任务ID 760。第二应用启动器662还存储针对第二代理链接811的对象引用。针对第二代理链接811的对象引用将被称为第二代理引用861(“代理2ref”)。视图662的标识符将被称为视图标识符862。第二应用启动器662通过将视图标识符862排序在第二代理引用861之上来跟踪第二任务的堆叠顺序或视图栈。
代理管理器633可以在记录702中存储第二任务ID 860。由于第一代理链接711和第二代理链接811都具有与它们相关联的相同唯一ID(即,令牌721),则他们唯一地链接或绑定在一起。此外,由于代理管理器633包括第二任务ID 860的拷贝、令牌721、以及第一代理引用761,代理管理器633具有可以由任务切换器631用来将第一任务链接到第二任务作为跨域任务的信息。
依然参见图8,第二代理链接811包括被限制为管理视图622的呈现的指令和/或信息(例如,在关闭视图622时,将第二代理链接811带到显示器的前台)。如前所述,当生成第二代理链接811时,其可以来到前台。然而,第二代理链接811可以不变为可见。相反,调用经由视图612来选择的活动,其引起第二应用620启动并引起视图622来到前台。此外,第一代理管理器633将设备的域视图切换到第二OS域603。由于视图622在前台,当将域视图切换到第二OS域603时,视图622在设备的显示器上变为可见。因此,跨域任务的跨域视图栈的顺序具有作为最低级别的视图612、高于视图612的第一代理链接711、高于第一代理链接711的第二代理链接811、以及高于第二代理链接811的视图622。视图622是跨域视图栈中的最高级别,因为其在前台。在一些实施例中,跨域视图栈由两个部分构成。第一部分是由第一OS域601管理的与视图612和第一代理链接711相关的视图栈。例如,在第一代理链接711和视图612被分别带到前台时,第一应用启动器632跟踪第一代理链接711的状态以及视图612的状态。第一应用启动器632在后入先出队列(例如,第一“回退栈”队列)中存储状态信息,如图7和8所示,其中,第一代理引用761和视图标识符762是有序的。第一回退栈队列中的顺序指示了第一代理链接711高于视图612。跨域视图栈的第二部分是由第二OS域603管理的第二任务的视图栈。例如,在第二代理链接811和视图622被分别带到前台时,第二应用启动器662跟踪第二代理链接811的状态以及视图622的状态。第二应用启动器662在单独的后入先出队列(例如,第二“回退栈”队列)中存储状态信息,如图8所示。第二回退栈队列中的顺序指示了第一代理链接711高于视图612。在一些实施例中,不合并第一回退栈队列和第二回退栈队列。相反,借助代理链接711和811(例如,经由令牌721)将它们加以链接,且由代理管理器633来管理。代理链接711和811可以被配置为就何时将一个或另一个带到前台而彼此通信(例如,使用令牌721作为引用)。由于代理链接711和811具有以这种方式通信的能力,则以正确顺序维护了跨域任务的视图栈的整体回退栈序列。
暂时回到图2,流程200在步骤210处继续,在步骤210中,设备使用第一OS域中的第一代理链接来表示第二OS域中第二应用的第二活动视图。图9示出了使用第一OS域中的第一代理链接来表示第二OS域中第二应用的第二活动视图的一个示例。在图9中,在设备925上启动任务列表940。设备925包括图6~8中描述的组件。任务列表940由任务切换器631来启动。任务切换器631被配置为与第一应用启动器632和第二应用启动器662通信,以获得其正确呈现跨域任务列表所需的信息。例如,当启动任务列表940时,任务切换器631将向第一应用启动器632和第二应用启动器662查询它们正在跟踪的所有任务。第一应用启动器632向任务切换器发送第一任务的信息的列表。例如,第一应用启动器632可以发送第一任务ID760、第一代理引用761、以及视图标识符762。任务切换器631检测到第一代理引用761在第一任务的视图栈的最上方。任务切换器631则向代理管理器633查询(使用第一代理引用761),以确定在第一代理引用761的表701中是否存在条目。代理管理器633检测到记录702中的第一代理引用761。然后代理管理器633向任务切换器631返回第二任务ID 860。由于代理管理器633返回第二任务ID 860,任务切换器631确定第一任务是跨域任务的一部分。任务切换器631使用第二任务ID 860来查询第二应用启动器662。第二应用启动器662向任务切换器662返回第二任务860的视图栈。从而,如图9所示,任务切换器631确定跨域任务的堆叠顺序。换言之,任务切换器631确定视图612在跨域任务的视图栈内。然而,由于视图612与跨域任务相关联,且由于视图612不是活跃视图,则第二任务切换器661在任务列表940不呈现视图612的缩略图图像。取而代之地,由于视图622是活跃视图(即,在跨域任务的视图栈上最高),则第二任务切换器661仅呈现视图622的缩略图图像936。然而,由于视图612在跨域任务的视图栈上最低,且由于视图612与第一应用610相关联,则任务切换器631可以呈现将第一应用610识别为跨域任务的来源应用的图标937。此外,任务切换器631可以检测正在运行的其他任务。例如,任务切换器631检测到第三任务920正在第一OS域601中运行。任务切换器631从第一应用启动器接收关于第三任务920的信息。然后任务切换器631在任务列表940中呈现第三任务920的表示(例如,第三任务中上一次访问视图的缩略图图像938,并呈现用于第三任务920的来源应用的图标939)。
暂时回到步骤210,使用第一OS域中第一代理链接来表示第二OS域中第二应用的第二活动视图的另一示例包括:终止第二OS域中第二活动视图并引起第一活动视图再次变为活跃视图。例如,参见图8,当关闭视图622时,第二应用启动器662向第二代理链接811通知以来到前台。第二代理链接811发起与代理管理器633的通信(使用令牌721),以将第一代理链接711带到前台。第二代理链接811关闭视图622,且第二代理链接811删除自身。在从第二代理链接811接收到通信以来到前台之后,代理管理器633将使用令牌721在表701中进行查找,以识别第一代理链接711。然后代理管理器633指示第一代理链接711来到前台。由于第一代理链接711开始来到前台,第一代理链接711将代之以引起视图612来带前台。显示器的焦点可以切换回第一OS域601。由于视图612在前台,视图612变为活跃视图。然后第一代理链接711删除自身。结合图15A、15B、16A、16B、17A和17B来描述该过程的更详细解释。
图10A是示出了使用响应值来管理跨域任务的示例流程图(“流程”)1000。图10B是示出了使用响应值来管理跨域任务的示例流程图(“流程”)1001。图12A、12B、12C和13A是根据一些实施例的帮助说明图10A和10B的流程的概念图。本描述将将以与图12A、12B、12C和13A相呼应的方式来呈现图10A和10B。在一些实施例中,图10A和10B所示的操作可以串行执行,同时在其他实施例中,可以并行执行一个或多个操作。
现在参见图10A,流程1000开始于步骤1002,在步骤1002中,设备检测对第一应用的选择。例如,在图12A中,设备1225呈现设备选择屏幕1280。设备1225检测对与摄像机应用有关的图标1237的选择。
回到图10A,流程1000在步骤1004处继续,在步骤1004中,设备呈现第一活动视图。例如,在图12B中,在选择图标1237之后,设备1225呈现摄像机应用的第一活动视图1212。向第一OS域1201指派摄像机应用。第一活动视图1212提供了用于使用设备1225的摄像机来拍摄照片的特征。例如,设备1225检测到选择了照片按钮1242,在图12C中这引起示出照片的预览图像1243。
回到图10A,流程1000在步骤1006处继续,在步骤1006中,设备经由第一活动视图来检测引起第二应用激活的用户输入。例如,在图12C中,第一活动视图1212呈现针对图库应用的链接1244。该链接1244可以经由用户输入来选择。链接1244被配置为引起在第二OS域1203中启动图库应用。
回到图10A,流程1000在步骤1008处继续,在步骤1008中,设备生成具有标识符(例如,令牌)的第一代理链接(“代理1”)。例如,在图12C中,第一OS域1201生成第一代理链接1211。第一OS域1201可以根据图7中的描述来生成第一代理链接1211。
回到图10A,流程1000在步骤1010处继续,在步骤1010中,设备向第二OS域发送消息以激活第二应用。该消息包括令牌和针对响应值的请求。例如,在图12C中,当选择链接1244时,第一代理链接1211发起针对第二OS域1203的消息1213。消息1213包括令牌的拷贝和用于返回在关闭图库应用之后拍摄的上一张照片的拷贝的请求。例如,图库应用可以包括用于编辑所拍摄的上一张照片的特征。从而,摄像机应用请求所拍摄的上一张图片的拷贝,以将其再次呈现为预览图像1243。
现在参见图10B,流程1001开始于以下步骤:设备从第一域接收消息,并在步骤1014,设备基于该消息使用令牌来生成第二代理链接(“代理2”)。设备还链接到第二活动视图。例如,在图13A中,第二OS域1203接收消息1213并生成第二代理链接1311。将第二代理链接1311和第一代理链接1211相链接,例如,类似于图2和图6、7、8和9中描述的。
回到图10B,流程1001在步骤1016处继续,在步骤1016中,设备启动第二应用并将第二活动视图带到前台。例如,在图13A中,第二代理131启动图库应用并指示第二活动视图1322来到前台。第二活动视图1322、第二代理链接1311、第一代理链接1211和第一活动视图1212被呈现为在跨域视图栈中,例如类似于图7、8和9中描述的视图栈。在跨域视图站中,(前台的)第二活动视图1322高于第二代理链接1311。在跨域视图站中,第二代理链接1311高于第一代理链接1211。在跨域视图站中,第一代理链接1211高于第一活动视图1212。
回到图10B,流程1001在步骤1018处继续,在步骤1018中,设备呈现第二活动视图。例如,在图13A中,在设备1225启动图库应用并将第二活动视图1322带到前台之后,设备将设备1225的视图焦点切换到第二OS域1203。然后,第二视图1322变为经由设备1225的显示器可见。
图11是示出了呈现跨域任务的示例流程图(“流程”)1100。图13A、13B、14A和14B是根据一些实施例帮助说明图11的流程的概念图。本描述将以与图13A、13B、14A和14B相呼应的方式来呈现图11。在一些实施例中,图11所示的操作可以串行执行,同时在其他实施例中,可以并行执行一个或多个操作。例如,可以并行执行步骤1102和1108。此外,流程1100可以与图15A和15B中描述的流程并行执行。
在图1中,流程1100开始于步骤1102,在步骤1102中,设备确定针对跨域任务是否激活了附加视图。如果是,则流程1000在步骤1104处继续,在步骤1104中,设备呈现附加活动视图。例如,在图13A中,设备1225检测对用于编辑从摄像机应用拍摄的上一张照片的编辑特征1345的选择。一旦选择,则如图13B所示呈现附加活动视图1324。
回到图11,流程1100在步骤1106处继续,在步骤1106中,设备将附加活动视图包括在跨域任务在激活了该附加活动视图的相应域中的视图栈中。例如,在图13B中,附加活动视图1324被定位在视图栈的最上方(例如,在第二OS域1203的回退栈队列的前面)。此外,在图13B中,附加活动视图1324提供了用于编辑拍摄的上一张照片的特征。例如,特征之一是用于水平翻转照片的控制1350。在编辑照片之后(例如,在水平翻转照片之后),关闭附加活动视图1324,且第二OS域1203从视图栈中移除附加活动视图1324,使得再次显示第二活动视图1322。
回到图11,流程1100在步骤1108处继续,在步骤1108中,设备确定是否选择了任务列表特征。如果是,则过程在步骤1110处继续,在步骤1110中,设备确定第一代理链接与第二代理链接相关联。例如,在图14A中,在再次呈现第二活动视图1322之后,设备1225接收附加用户输入(例如,对设备1225上的导航按钮的双击)。
回到图11,流程1100在步骤1112处继续,在步骤1112中,设备在任务列表中呈现第二活动视图。设备还避免将第一活动视图呈现为任务列表中的单独任务。例如,在图14B中,响应于图14A中描述的附加用户输入,设备1225在任务列表1340中呈现第二活动视图1322的缩略图图像1436。设备1225可以用类似于图9所描述的方式来呈现任务列表1340。缩略图图像1436表示跨域任务之处在于:其仅示出了第二活动视图1322的表示(在跨域任务的视图栈的最上方)且未示出第一活动视图1212的表示(其在跨域栈的视图栈中低于第二活动视图1322)。如果从任务列表1340中选择缩略图图像1436,则显示器返回该任务的最近访问的视图,该最近访问的视图是第二活动视图1322。
图15A是示出了管理跨域任务的示例流程图(“流程”)1500。图15B是示出了管理跨域任务的示例流程图(“流程”)1501。图16A、16B、17A和17B是根据一些实施例的帮助说明图15A和15B的流程的概念图。本描述将将以与图16A、16B、17A和17B相呼应的方式来呈现图15A和15B。
在图15A中,流程1500开始于步骤1502,在步骤1502中,设备经由第二活动视图来检测用于终止第二活动视图的用户输入。例如,在图16A中,设备1225接收附加用户输入(例如,对设备1225上的导航按钮的单击或对图形“后退”按钮的选择),该附加用户输入发起了用于关闭第二活动视图1322并呈现跨域任务的次低视图的请求。
回到图15A,流程1500在步骤1504处继续,在步骤1504中,设备将第二代理链接带到设备的显示器的前台。例如,在图16B中,在检测到附加用户输入(例如,对导航按钮的单击或对图形“后退”按钮的选择)之后,第二代理链接1311来到设备1225的显示器的前台。
回到图15A,流程1500在步骤1506处继续,在步骤1506中,设备指示第一代理链接来到显示器的前台。设备还向第一应用传递响应值。例如,在图16B中,第二代理链接1311检测到其正在来到前台并发起要向第一OS域1201发送的消息1613。消息1613包括针对与令牌相关联的无论哪个代理链接要来到前台的请求。消息1613包括令牌的拷贝,以向第一OS域1201传递。此外,第二OS域1203还在消息1613中包括与第一应用1210所请求的第二活动视图1322的一个或多个活动相关联的响应值。例如,如前面在图12C中描述的,摄像机应用在消息1213中请求图库应用返回拍摄的上一张照片的值,使得其可以将其呈现为预览图像1243。因此,在图16B中,消息1613包括与所请求的响应值有关的数据。例如,消息1613可以包括如图13B所述的被修改过(例如,水平翻转)的编辑图像的拷贝。第一OS域1201接收该消息1613,并基于消息1613中包括的令牌来确定第一代理链接1211与令牌相关联。然后第一OS域1201指示第一代理链接1211来到前台。
回到图15A,流程1500在步骤1508处继续,在步骤1508中,设备关闭第二应用和第二活动视图,并删除第二代理链接。例如,在图17A中,在第二代理链接1311发起消息1631并指示第二活动视图1322关闭之后,第二代理链接1311删除自身。例如,在图8所述示例中,如果第二代理链接811要删除自身,其将指示第二应用启动器662删除第二任务ID 860、和与第二代理链接811相关联的第二代理引用861。返回图17A,然后第二OS域1203将设备1225的显示器的焦点转移回第一OS域1201。
现在参见图15B,流程1501开始于步骤1512,在步骤1512中,设备检测用于将第一代理链接带到前台的指令。例如,在图17A中,第一OS域1201从消息1613中接收令牌,并确定该令牌与第一代理链接1211相关联。例如,参见图8,如果代理管理器633要接收用于将第一代理链接711带到前台的消息,则代理管理器633将在记录702中查找令牌721,并由于记录702中的标识符761而确定其与第一代理链接711相关联。
回到图15B,流程1501在步骤1514处继续,在步骤1514中,设备将第一代理链接带到前台。例如,在图17A中,在第一OS域1201接收到消息1613之后,其指示第一代理链接1211来到前台。当第一代理链接1211来到前台时,其并不变得可见。相反,第一代理链接1211发起让第一活动视图1212来到前台的指令。如图17A中所示,第一活动视图1212现在在视图栈的最上方处的前台。
回到图15B,流程1501在步骤1516处继续,在步骤1516中,设备使用响应值来呈现作为活跃视图的第一活动视图。例如,在图17A中,设备1225呈现第一活动视图1212。第一活动视图1212使用在图13B中修改的照片的拷贝而示出了预览图像1243。此外,第一OS域1201接收由第二OS域1203发送的用于让设备1225将焦点切换到第一OS域1201的消息。焦点返回第一OS域1201。由于第一活动视图1212在前台,第一活动视图1212在设备1225的显示器上变得可见。
回到图15B,流程1501在步骤1518处继续,在步骤1518中,设备删除第一代理链接。例如,在图17B中,第一代理链接1211删除自身。在图8所示示例中,第一代理链接711可以指示代理管理器633删除记录702,因为第一代理链接711将不再与跨域任务相关联。
在一些实施例中,图15A和15B所示的操作可以串行执行,同时在其他实施例中,可以并行执行一个或多个操作。例如,可以与步骤1512~1518中的任何步骤并行执行步骤1508。
在一些实施例中,操作系统可以被配置为使得:活动视图将不接受用于在相同任务标识符下成组的指令。例如,在第一OS域发送用于生成第二代理链接的指令之后,第二代理链接可以尝试调用第二OS域中的第二应用。然而,调用第二应用的活动可以被配置为(例如,定义或声明)使得其将不接受用于与第二代理链接成组在跨域任务中的指令。该活动可以强制在第二OS域中的新的单独任务中给出第二应用。在这种情况下,将创建第二代理链接,但是其不与第二应用的第二活动视图相关联。在这种示例中,第二代理链接可以被配置为销毁自身并向第一代理链接发送指令以销毁自身。然后第一代理链接将销毁自身。在创建第一代理链接之前,第一OS域中的第一活动视图将是该任务的最后一个活动视图。如果要激活任务列表,则将存在列出的两个单独任务,一个用于第一OS域中的第一应用,且一个用于第二OS域中的第二应用。
此外,在一些实施例中,任何域可以包括让任务(具体地,构成该任务的进程)在该任务不在前台且存储器较低时被终止的特征。当该任务来到前台时重新发起该进程。例如,如果跨域任务不在第一OS域或第二OS域的前台时,则第一OS域和第二OS域可以被配置为独立终止跨域任务在第一OS域和第二OS域中的部分的进程。各个域上的各个进程中的任何进程在该任务的该部分在该域中被带到前台时可以被重新发起。
尽管按特定顺序示出了示例流程图的操作以帮助理解本公开,实施例不一定受限于所示顺序。实施例可以按不同顺序来执行操作,并行执行至少一些操作,可以执行不同操作等。例如,步骤1102和1108的操作可以并行执行。此外,流程1100可以与图15A和15B中描述的流程并行执行。此外,步骤1508的操作可以与步骤1512、1514、1516和1518的任何操作并行执行,或在步骤1512、1514、1516和1518的任何操作之后执行。
实施例可以采用完全硬件实施例、完全软件实施例(包括固件、驻留软件、微代码等等)、或合并软件和硬件方案的形式,它们在本文中可以总体上都被称为“电路”、“模块”或“系统”。此外,创造性主题的实施例可以采用在具有表达的任何有形介质上体现的计算机程序产品的形式,该任何有形介质具有在该介质中体现的计算机可用程序代码。所述实施例可以提供为计算机程序产品、或软件,其可以包括其上存储有指令的机器可读介质,该指令可以用于将计算机系统(或其他电子设备)编程为执行根据实施例的过程,不管是否是当前描述的,因为本文中并未枚举每一种可想到的变型。及机器可读介质包括用于以机器(例如,计算机)可读的形式(例如,软件、处理应用)来存储或发送信息的任何机制。机器可读介质可以包括(但不限于)磁存储介质(例如,软盘)、光存储介质(例如,CD-ROM)、磁光存储介质、只读存储器(ROM)、随机存取存储器(RAM)、可擦除可编程存储器(例如,EPROM和EEPROM)、闪存、或适用于存储电子指令的其他类型介质。此外,实施例可以用电、光、声、或其它形式传播信号、或有线线路、无线或其他通信介质来体现。
用于执行实施例的操作的计算机程序代码可以用一种或多种编程语言的任何组合来编写,包括面向对象的编程语言(例如Java、Smalltalk、C++等)以及传统的程序化编程语言(例如“C”编程语言或类似编程语言)。程序代码可以完全在用户的计算机上执行,部分在用户的计算机上执行,作为孤立软件包来执行,部分在用户计算机且部分在远程计算机或完全在远程计算机或服务器上执行。在后一场景中,远程计算机可以通过任何类型网络连接到用户计算机,包括局域网(LAN)、个域网(PAN)、或广域网(WAN),或者可以进行对外部计算机的连接(例如,通过使用互联网服务提供商的互联网)。
图18示出了示例设备1800。设备1800包括处理器单元1801(可能包括多个处理器、多个核、多个节点和/或实现多线程等等)。设备1800包括存储器1807。存储器1807可以是系统存储器(例如,高速缓存、SRMA、DRAM、零电容RAM、双晶体管RAM、eDRAM、EDO RAM、DDR RAM、EEPROM、NRAM、RRAM、SONOS、PRAM等中的一项或多项)或者上面已经描述的机器可读介质的可能实现中的任意一项或多项。设备1800还包括总线1803(例如,PCI、ISA、PCI-Express、总线、总线、NuBus等)。存储器1807体现了用于实现上述实施例的功能。存储器1807可以包括便于管理任务的一个或多个功能。这些功能中的任何一个功能可以部分(或完全)用硬件实现和/或实现在处理器单元1801上。例如,功能可以用专用集成电路来实现,用处理器单元1801中实现的逻辑来实现,在外围设备或卡上的协处理器中实现等等。此外,实现可以包括更少的组件或图18中未示出的附加组件(例如,视频卡、音频卡、附加网络接口、外围设备等)。处理器单元1801、存储设备1809和网络接口1805耦合到总线1803。尽管示出为耦合到总线1803,存储器1807可以耦合到处理器单元1801。
在一些实施例中,存储器1807可以包括操作系统的单独示例,例如第一操作系统实例1831和第二操作系统实例1835。第一操作系统实例1831可以包括本文描述的与第一OS域相关联的任何组件。第二操作系统实例1835可以包括本文描述的与第二OS域相关联的任何组件。此外,设备1800包括显示单元1821,例如触摸屏显示器、视网膜显示器、自动立体3D显示器等。第一操作系统实例1831和第二操作系统实例1835被配置为针对任务(例如跨域任务)经由显示单元1821来呈现视图。此外,设备1800包括用户输入检测单元1822,该用户输入检测单元1822被配置为检测对内置到设备中的用户输入设备(例如,触摸屏、“后退”按钮、导航按钮、音量按钮、生物特征读取设备、眼球跟踪设备等)的激活。显示单元1821也可以被配置为接收用户输入。
尽管参考了各种实现和开发描述了实施例,应当理解:这些实施例是说明性的且本创造性主题的范围不受限于此。一般而言,如本文描述的用于管理任务(特别是跨域任务)的技术可以使用与一个或多个任何硬件系统一致的设施来实现。很多变型、修改、添加和改进是可能的。
可以为本文描述的组件、操作或结构提供复数实例作为单一实例。最终,各种组件、操作和数据存储器之间的边界在某种程度上是随意的,且特定操作是在具体说明性配置的上下文中说明的。可以设想对功能的其他分配,且该其他分配可以落入本创造性主题的范围内。一般而言,在示例配置中呈现为分离组件的结构和功能可以实现为组合结构或组件。类似地,呈现为单一组件的结构和功能可以实现为分离组件。这些和其他变型、修改、添加和改进可以落入本创造性主题的范围内。

Claims (30)

1.一种方法,包括:
在设备的第一操作系统域中执行第一应用,所述第一应用与至少第一活动视图相关联;
检测与所述第一应用相关联的用户输入,其中,所述用户输入激活第二应用的第二活动视图;
响应于确定所述第二应用对应于所述设备的第二操作系统域,在所述第一操作系统域中生成第一代理链接;
在生成第一代理链接之后,向第二操作系统域发送消息以生成第二代理链接;以及
建立所述第一操作系统域中的第一代理链接与所述第二操作系统域中的第二代理链接之间的链接,所述第一代理链接与引起所述第二代理链接在所述第二操作系统域中调用所述第二应用的所述第二活动视图相关联。
2.根据权利要求1所述的方法,其中,确定所述第二应用对应于所述设备的第二操作系统域包括:根据所述第一操作系统域中存储的应用列表来确定所述第二应用与所述第二操作系统域相关联且不与所述第一操作系统域相关联。
3.根据权利要求1所述的方法,其中,所述方法包括:
针对所述第一代理链接在所述第一操作系统域中存储标识符;
向所述第二操作系统域发送所述标识符以生成所述第二代理链接;以及
响应于发送所述标识符,引起所述第二操作系统域生成所述第二代理链接。
4.根据权利要求3所述的方法,其中,在所述第一操作系统域中存储标识符包括:
在所述第一操作系统域中的数据库记录中存储所述标识符,其中,所述数据库记录还包括针对所述第一代理链接的对象的引用,其中,所述第一代理链接的对象与所述第一活动视图相关联。
5.根据权利要求3所述的方法,其中,引起所述第二操作系统域生成所述第二代理链接包括:
使用所述标识符,经由所述第二操作系统域来生成所述第二代理链接;以及
经由所述第二操作系统域在所述第二操作系统域中的所述第二代理链接中存储所述标识符。
6.根据权利要求3所述的方法,还包括:
经由所述第二操作系统域将所述标识符用于与所述第一操作系统域进行关于所述第二代理链接的通信。
7.根据权利要求1所述的方法,还包括:
使用所述第一操作系统域中的所述第一代理链接来表示所述第二操作系统域中的所述第二应用的所述第二活动视图。
8.根据权利要求7所述的方法,其中,使用所述第一操作系统域中的所述第一代理链接来表示所述第二操作系统域中的所述第二应用的所述第二活动视图包括:
经由所述第一代理链接来确定所述第二代理链接指示所述第二活动视图在所述第二操作系统域中终止;
响应于经由所述第一代理链接来确定所述第二代理链接指示所述第二活动视图在所述第二操作系统域中终止,引起所述第一代理链接激活;以及
响应于引起所述第一代理链接激活,引起所述第一活动视图经由所述设备的显示器来显示。
9.根据权利要求8所述的方法,其中,经由所述第一代理链接来确定所述第二代理链接指示所述第二活动视图在所述第二操作系统域中终止包括:
检测经由所述第二操作系统域生成的通信识别所述第一代理链接,其中,所述通信响应于与所述第二应用相关联的附加用户输入,其中,所述附加用户输入与激活所述第一应用的所述第一活动视图相关联。
10.根据权利要求7所述的方法,其中,使用所述第一操作系统域中的所述第一代理链接来表示所述第二操作系统域中的所述第二应用的所述第二活动视图包括:
响应于经由所述设备接收到的附加用户输入,启动任务切换器,其中,所述任务切换器被配置为呈现正在所述设备上运行的任务的表示;
响应于启动所述任务切换器,确定使用所述第二代理链接来建立所述第一代理链接;以及
响应于确定使用所述第二代理链接来建立所述第一代理链接,经由所述任务切换器来呈现所述第二活动视图的表示。
11.根据权利要求10所述的方法,还包括:
响应于确定使用所述第二代理链接来建立所述第一代理链接,避免呈现所述第一活动视图的表示。
12.一种设备,包括:
一个或多个处理器;以及
一个或多个存储器单元,被配置为存储指令,所述指令在由所述一个或多个处理器中至少一个处理器执行时,引起所述设备:
在所述设备的第一操作系统域中执行第一应用,所述第一应用与至少第一活动视图相关联;
检测与所述第一应用相关联的用户输入,其中,所述用户输入与激活第二应用的第二活动视图相关联;
确定所述第二应用对应于所述设备的第二操作系统域;
响应于确定所述第二应用对应于第二操作系统域,在所述第一操作系统域中生成第一代理链接;
在生成第一代理链接之后,向第二操作系统域发送消息以生成第二代理链接;以及
建立所述第一操作系统域中的第一代理链接与所述第二操作系统域中的第二代理链接之间的链接,所述第一代理链接被配置为引起所述第二代理链接在所述第二操作系统域中调用所述第二应用的所述第二活动视图。
13.根据权利要求12所述的设备,其中,被配置为存储指令以确定所述第二应用对应于所述设备的第二操作系统域的所述一个或多个存储器单元被配置为存储指令,所述指令在由所述一个或多个处理器中至少一个处理器执行时,引起所述设备:根据所述第一操作系统域中存储的应用列表来确定所述第二应用被指派给所述第二操作系统域而未被指派给所述第一操作系统域。
14.根据权利要求12所述的设备,其中,被配置为存储指令以在所述第一操作系统域中建立与所述第二操作系统域中的第二代理链接相对应的第一代理链接的所述一个或多个存储器单元被配置为存储指令,所述指令在由所述一个或多个处理器中至少一个处理器执行时,引起所述设备:
针对所述第一代理链接在所述第一操作系统域中存储标识符;
使用所述标识符,在所述第二操作系统域中生成所述第二代理链接;以及
针对所述第二代理链接在所述第二操作系统域中存储所述标识符。
15.根据权利要求12所述的设备,其中,所述一个或多个存储器单元被配置为存储指令,所述指令在由所述一个或多个处理器中至少一个处理器执行时,还引起所述设备:
使用所述第一操作系统域中的所述第一代理链接来表示所述第二操作系统域中的所述第二应用的所述第二活动视图。
16.根据权利要求15所述的设备,其中,被配置为存储指令以使用所述第一操作系统域中的所述第一代理链接来表示所述第二操作系统域中的所述第二应用的所述第二活动视图的所述一个或多个存储器单元被配置为存储指令,所述指令在由所述一个或多个处理器中至少一个处理器执行时,还引起所述设备:
确定所述第二代理链接指示所述第二活动视图在所述第二操作系统域中终止;
响应于确定所述第二代理链接指示所述第二活动视图终止,激活所述第一代理链接;以及
响应于激活所述第一代理链接,经由所述设备的显示器来呈现所述第一活动视图。
17.根据权利要求15所述的设备,其中,被配置为存储指令以使用所述第一操作系统域中的所述第一代理链接来表示所述第二操作系统域中的所述第二应用的所述第二活动视图的所述一个或多个存储器单元被配置为存储指令,所述指令在由所述一个或多个处理器中至少一个处理器执行时,还引起所述设备:
响应于经由所述设备接收到的附加用户输入,启动任务切换器,其中,所述任务切换器被配置为呈现在所述设备上运行的任务的表示;
响应于启动所述任务切换器,确定使用所述第二代理链接来建立所述第一代理链接;以及
响应于确定使用所述第二代理链接来建立所述第一代理链接,经由所述任务切换器来呈现所述第二活动视图的表示。
18.一种计算机可读存储介质,其上存储有指令,所述指令在由一个或多个处理器的集合执行时,引起所述一个或多个处理器的集合执行包括以下各项的操作:
在设备的第一操作系统域中执行第一应用,所述第一应用与至少第一活动视图相关联;
检测与所述第一应用相关联的用户输入,其中,所述用户输入与激活第二应用的第二活动视图相关联;
响应于确定所述第二应用对应于所述设备的第二操作系统域,在所述第一操作系统域中生成第一代理链接;
在生成第一代理链接之后,向第二操作系统域发送消息以生成第二代理链接;以及
建立所述第一操作系统域中的第一代理链接与所述第二操作系统域中的第二代理链接之间的链接,所述第一代理链接与引起所述第二代理链接在所述第二操作系统域中调用所述第二应用的所述第二活动视图相关联。
19.根据权利要求18所述的计算机可读存储介质,其中,确定所述第二应用对应于所述设备的第二操作系统域的操作包括以下操作:根据所述第一操作系统域中存储的应用列表来确定该列表中与所述第二应用相关联的条目指示所述第二应用被指派给所述第二操作系统域。
20.根据权利要求18所述的计算机可读存储介质,其中,在所述第一操作系统域中建立与所述第二操作系统域中的第二代理链接相对应的第一代理链接的操作包括以下操作:
针对所述第一代理链接在所述第一操作系统域中存储标识符;
向所述第二操作系统域发送所述标识符以使用所述标识符生成所述第二代理链接;以及
响应于发送所述标识符,引起所述第二操作系统域生成所述第二代理链接,以及针对所述第二代理链接在所述第二操作系统域中存储所述标识符。
21.根据权利要求18所述的计算机可读存储介质,所述操作还包括:
使用所述第一操作系统域中的所述第一代理链接来表示所述第二操作系统域中的所述第二应用的所述第二活动视图。
22.根据权利要求21所述的计算机可读存储介质,其中,使用所述第一操作系统域中的所述第一代理链接来表示所述第二操作系统域中的所述第二应用的所述第二活动视图的操作包括以下操作:
经由所述第一代理链接来确定所述第二代理链接指示所述第二活动视图在所述第二操作系统域中终止;
响应于确定所述第二代理链接指示所述第二活动视图在所述第二操作系统域中终止,引起所述第一代理链接激活;以及
响应于引起所述第一代理链接激活,引起所述第一活动视图经由所述设备的显示器来显示。
23.根据权利要求21所述的计算机可读存储介质,其中,使用所述第一操作系统域中的所述第一代理链接来表示所述第二操作系统域中的所述第二应用的所述第二活动视图的操作包括以下操作:
响应于经由所述设备接收到的附加用户输入,启动任务切换器,其中,所述任务切换器被配置为呈现在所述设备上运行的任务的表示;
响应于启动所述任务切换器,确定使用所述第二代理链接来建立所述第一代理链接;以及
响应于确定使用所述第二代理链接来建立所述第一代理链接,经由所述任务切换器来呈现所述第二活动视图的表示。
24.一种方法,包括:
确定针对第一操作系统域中的第一应用的输入指示第二操作系统域中的第二应用的活动视图;
在确定所述输入指示所述第二应用的所述活动视图之后,将所述第一操作系统域中的第一代理与所述第二操作系统域中的第二代理相关联;
使用所述第一代理向所述第二代理指示所述第二应用的所述活动视图;响应于所述第一代理向所述第二代理指示所述第二应用的所述活动视图,由所述第二代理引起所述第二操作系统域中的所述第二应用的所述活动视图关于所述第一操作系统域中的所述第一应用的活动视图的聚合呈现;以及
响应于所述第二代理指示所述第二应用的活动视图在所述第二操作系统域中终止,由所述第一代理引起所述第一应用的所述活动视图的呈现。
25.根据权利要求24所述的方法,其中,引起所述第二应用的所述活动视图关于所述第一应用的活动视图的聚合呈现包括:
引起所述第二应用的所述活动视图的呈现,就好像其源自于所述第一应用。
26.根据权利要求24所述的方法,其中,引起所述第二应用的所述活动视图关于所述第一应用的活动视图的聚合呈现包括:
经由应用任务列表来呈现所述第二应用的所述活动视图的拷贝,以及
避免经由所述任务列表来呈现所述第一应用的活动视图的拷贝,直到所述第二代理向所述第一代理指示所述第二应用的活动视图已经终止。
27.一种方法,包括:
响应于接收与在电子设备上呈现任务列表相关联的输入,启动任务切换器,其中所述任务切换器被配置为呈现正在所述设备上运行的任务的表示;
确定第一任务至少包括第一操作系统域中的所述电子设备的第一活动视图和第二操作系统域中的所述电子设备的第二活动视图;
建立与所述第二操作系统域中的第二代理相对应的第一操作系统域中的第一代理;以及
呈现包括所述第一任务的单一表示在内的所述任务列表,所述单一表示至少部分基于所述第一活动视图或所述第二活动视图之一,其中,响应于确定所述第一代理是在所述第二代理中建立的而由所述任务切换器呈现所述任务列表。
28.根据权利要求27所述的方法,还包括:避免呈现所述第一任务的另一表示,所述另一表示基于所述第一活动视图或所述第二活动视图中的另一个。
29.根据权利要求27所述的方法,还包括:至少部分基于所述第一活动视图和所述第二活动视图之间的代理链接,确定至少所述第一操作系统中的所述第一活动视图链接到所述第二操作系统域中的所述第二活动视图。
30.根据权利要求27所述的方法,还包括:
在所述第一操作系统域中将所述第一任务的第一标识符与所述第一活动视图的第一活动视图标识符相关联,以及与所述第一活动视图和所述第二活动视图之间的代理链接的代理标识符相关联;以及
在所述第二操作系统域中将所述第一任务的第二标识符与所述第二活动的第二活动视图标识符相关联,以及与所述代理标识符相关联。
CN201510288926.XA 2014-05-29 2015-05-29 跨操作系统域来协调活动视图 Active CN105183495B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US14/290,114 2014-05-29
US14/290,114 US9467329B2 (en) 2014-05-29 2014-05-29 Coordinating activity views across operating system domains

Publications (2)

Publication Number Publication Date
CN105183495A CN105183495A (zh) 2015-12-23
CN105183495B true CN105183495B (zh) 2018-06-29

Family

ID=53396225

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510288926.XA Active CN105183495B (zh) 2014-05-29 2015-05-29 跨操作系统域来协调活动视图

Country Status (4)

Country Link
US (1) US9467329B2 (zh)
EP (1) EP2963544B1 (zh)
CN (1) CN105183495B (zh)
CA (1) CA2893097C (zh)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9785340B2 (en) * 2014-06-12 2017-10-10 Apple Inc. Systems and methods for efficiently navigating between applications with linked content on an electronic device with a touch-sensitive display
US9648062B2 (en) 2014-06-12 2017-05-09 Apple Inc. Systems and methods for multitasking on an electronic device with a touch-sensitive display
KR20160015069A (ko) * 2014-07-30 2016-02-12 삼성전자주식회사 액티비티 처리 방법 및 이를 지원하는 전자 장치
US9342227B2 (en) * 2014-09-02 2016-05-17 Microsoft Technology Licensing, Llc Semantic card view
KR20170106029A (ko) * 2016-03-11 2017-09-20 삼성전자주식회사 전자 장치 및 그의 제어 방법
US10248452B2 (en) * 2016-05-20 2019-04-02 Microsoft Technology Licensing, Llc Interaction framework for executing user instructions with online services
CN106796642B (zh) * 2016-12-22 2019-03-15 达闼科技成都有限公司 设备检测方法、系统、电子设备、云端机器人系统和计算机程序产品
CN108255683B (zh) 2016-12-29 2021-06-22 华为技术有限公司 终端中消息提示的方法和终端
US11966578B2 (en) 2018-06-03 2024-04-23 Apple Inc. Devices and methods for integrating video with user interface navigation
CN110162389B (zh) * 2019-05-15 2022-05-13 广州视源电子科技股份有限公司 应用程序的启动方法、装置和智能交互设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101206590A (zh) * 2006-12-21 2008-06-25 国际商业机器公司 用于扩展用于通信的Unix域套接字的方法、装置和系统
CN101802833A (zh) * 2007-09-27 2010-08-11 奥多比公司 向在应用执行环境中运行的应用提供本地存储服务
CN102541624A (zh) * 2011-12-29 2012-07-04 国云科技股份有限公司 桌面虚拟化客户端与虚拟桌面间的虚拟桌面融合方法
CN103309722A (zh) * 2012-03-14 2013-09-18 北京三星通信技术研究有限公司 一种云计算系统及其应用访问方法

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6883098B1 (en) * 2000-09-20 2005-04-19 International Business Machines Corporation Method and computer system for controlling access by applications to this and other computer systems
US8726294B2 (en) 2010-10-01 2014-05-13 Z124 Cross-environment communication using application space API
US7526800B2 (en) * 2003-02-28 2009-04-28 Novell, Inc. Administration of protection of data accessible by a mobile device
US20070174429A1 (en) * 2006-01-24 2007-07-26 Citrix Systems, Inc. Methods and servers for establishing a connection between a client system and a virtual machine hosting a requested computing environment
US8407605B2 (en) * 2009-04-03 2013-03-26 Social Communications Company Application sharing
KR101506683B1 (ko) 2008-08-06 2015-03-30 삼성전자 주식회사 다수개의 운영 시스템을 지원하는 장치 및 방법
US8239529B2 (en) * 2010-11-30 2012-08-07 Google Inc. Event management for hosted applications
US9348626B2 (en) 2011-08-05 2016-05-24 Vmware, Inc. Mobile device maintaining adequate security and data partitioning between user mode and business mode
US9043480B2 (en) * 2011-10-11 2015-05-26 Citrix Systems, Inc. Policy-based application management
US9189753B2 (en) * 2011-10-24 2015-11-17 Blackberry Limited Multiplatform management system and method for mobile devices
US8990901B2 (en) * 2012-05-05 2015-03-24 Citrix Systems, Inc. Systems and methods for network filtering in VPN
US10284627B2 (en) * 2013-03-29 2019-05-07 Citrix Systems, Inc. Data management for an application with multiple operation modes
US9455886B2 (en) * 2013-03-29 2016-09-27 Citrix Systems, Inc. Providing mobile device management functionalities

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101206590A (zh) * 2006-12-21 2008-06-25 国际商业机器公司 用于扩展用于通信的Unix域套接字的方法、装置和系统
CN101802833A (zh) * 2007-09-27 2010-08-11 奥多比公司 向在应用执行环境中运行的应用提供本地存储服务
CN102541624A (zh) * 2011-12-29 2012-07-04 国云科技股份有限公司 桌面虚拟化客户端与虚拟桌面间的虚拟桌面融合方法
CN103309722A (zh) * 2012-03-14 2013-09-18 北京三星通信技术研究有限公司 一种云计算系统及其应用访问方法

Also Published As

Publication number Publication date
CA2893097A1 (en) 2015-11-29
US20150350005A1 (en) 2015-12-03
CA2893097C (en) 2018-07-03
EP2963544A1 (en) 2016-01-06
EP2963544B1 (en) 2020-07-08
US9467329B2 (en) 2016-10-11
CN105183495A (zh) 2015-12-23

Similar Documents

Publication Publication Date Title
CN105183495B (zh) 跨操作系统域来协调活动视图
EP3129871B1 (en) Generating a screenshot
US20170160883A1 (en) Implementing application jumps
JP7138804B2 (ja) インタフェース表示方法及びその装置、端末並びにコンピュータプログラム
RU2599541C2 (ru) Расширяемое системное действие для осуществления совместного использования, оставаясь при этом в текущем контексте в фоновом режиме
US20180197347A1 (en) Managing virtual reality objects
US20130139113A1 (en) Quick action for performing frequent tasks on a mobile device
WO2013004183A1 (zh) 桌面切换方法、装置和系统
US20180196584A1 (en) Execution of multiple applications on a device
US20140096048A1 (en) Drag and drop searches of user interface objects
WO2014194654A1 (en) Method and apparatus for page view switching
WO2017095955A1 (en) Implementing application jumps
JP2017534977A (ja) アプリケーションインターフェースのナビゲーション
US9880861B2 (en) Method and apparatus for page view switching
CN113268212A (zh) 投屏方法、装置、存储介质及电子设备
CN109992956A (zh) 容器的安全策略的处理方法和相关装置
CN111045565B (zh) 多媒体页面的切换方法及电子设备
CN109697129A (zh) 一种信息分享方法、设备及计算机可读存储介质
CN108780400A (zh) 数据处理方法及电子设备
CN112783388B (zh) 显示方法、显示装置和电子设备
CN109791444A (zh) 调用输入法的方法和装置、服务器和终端
US20210026913A1 (en) Web browser control feature
CN106227752A (zh) 一种相片分享方法及终端
KR20200076273A (ko) 얼굴 이미지와 메신저 계정의 연동에 기반한 이미지 관리 방법 및 시스템
CN111796733B (zh) 图像显示方法、图像显示装置和电子设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20200528

Address after: Voight, Ontario, Canada

Patentee after: BlackBerry Ltd.

Address before: Voight, Ontario, Canada

Co-patentee before: 2236008 Ontario Inc.

Patentee before: BlackBerry Ltd.

TR01 Transfer of patent right