CN113553116B - 场境粘贴目标预测 - Google Patents

场境粘贴目标预测 Download PDF

Info

Publication number
CN113553116B
CN113553116B CN202110683929.9A CN202110683929A CN113553116B CN 113553116 B CN113553116 B CN 113553116B CN 202110683929 A CN202110683929 A CN 202110683929A CN 113553116 B CN113553116 B CN 113553116B
Authority
CN
China
Prior art keywords
application
user
predicted
selected content
predicted application
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
CN202110683929.9A
Other languages
English (en)
Other versions
CN113553116A (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.)
Google LLC
Original Assignee
Google 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
Priority claimed from US15/418,168 external-priority patent/US10514833B2/en
Application filed by Google LLC filed Critical Google LLC
Publication of CN113553116A publication Critical patent/CN113553116A/zh
Application granted granted Critical
Publication of CN113553116B publication Critical patent/CN113553116B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

本公开涉及场境粘贴目标预测。场境粘贴目标预测用于预测粘贴动作的一个或多个目标应用,并且这是基于与先前已被选择和复制的内容相关联的场境来实现的。所述预测的结果可以用于将一个或多个用户控件呈现给用户以使所述用户能够激活一个或多个预测的应用,并且在一些情况下,一旦所述一个或多个预测的应用被激活,还将预测的应用的状态配置为使用所选择和复制的内容。因此,当完成了复制动作时,在一些情况下,用户能够快速切换至所述用户打算粘贴所述内容的应用。这可以在装置(诸如显示器大小有限和输入装置设施有限的电话和平板计算机)中提供更简单的用户界面。这可以利用比通常可能的更少的步骤实现向不同应用的粘贴操作。

Description

场境粘贴目标预测
分案说明
本申请属于申请日为2017年9月27日的中国发明专利申请201710889268.9的分案申请。
技术领域
本申请涉及场境粘贴目标预测。
背景技术
计算装置长期以来一直支持各种编辑动作,诸如,复制、剪切和粘贴。复制动作通常在用户已经选择了一些显示的内容之后被执行,并且导致选择的内容被复制到通常称为剪贴板的暂时存储器。粘贴动作通常在用户期望将先前复制的内容插入其它地方时被执行,并且导致在剪贴板中的先前复制的内容插入用户指定的位置。剪切动作可以被认为是复制动作的子类型,与复制动作一样,剪切动作使选择的内容复制到剪贴板。然而,利用剪切动作,便会从选择的内容的原始位置删除选择的内容。
复制、剪切和粘贴动作通常用于字处理应用,例如,处理在字处理文档中的文本、图像和其它类型的内容。然而,复制、剪切和粘贴动作还被广泛用于各种各样的目的,包括处理在存储系统中的文件。此外,因为多任务的出现和对多个同时执行的应用的支持,所以已经使用复制、剪切和粘贴动作来复制内容或者使内容在不同的应用之间移动。例如,如果用户在浏览网页时发现有趣的项并且希望经由电子邮件或者文本消息与另一用户共享该项,则用户可能需要复制浏览器应用中的项并且将其粘贴到电子邮件或者文本消息收发应用中。同样,如果用户在网页或者在电子邮件中遇到地理位置并且希望在地图上查看该位置,则用户可能需要从浏览器或者电子邮件应用复制项并且将其粘贴到地图应用的搜索框中。
然而,在许多计算装置中,特别是在移动装置,诸如视窗未被用于应用(即,一次仅仅显示一个应用)的智能手机和平板计算机中,从一个应用复制或者剪切内容(诸如,文本)并且将该内容粘贴到不同应用中可能是耗时费力的。在移动装置上,例如,希望将文本从一个应用复制到另一应用的用户可能需要用户首先通过在触摸屏显示器上敲击和/或拖拽以选择所需的文本来选择文本并且选择执行复制动作的复制用户控件。然后,为了将该复制的文本粘贴到不同应用中,可能需要用户按下计算装置上的主页按钮,滚动应用列表和找到要粘贴至的所需应用,并且然后将文本粘贴到适当用户控件(例如,搜索框、消息框、文本框等)中。在一些情况下,用户甚至可以在粘贴之后(例如,当粘贴到地图应用的搜索框中以正确地格式化查询时)删除一些文本。
发明内容
本公开大体上涉及用于执行场境粘贴目标预测(contextual paste targetprediction)的方法、设备和计算机可读介质(暂时性和非暂时性),该场境粘贴目标预测用于预测粘贴动作的一个或者多个目标应用,并且这是基于与先前已经被选择和复制的内容相关联的场境(context)来实现的。预测的结果可以用于将一个或者多个用户控件呈现给用户以使用户能够激活一个或者多个预测的应用,并且在一些情况下,一旦一个或者多个预测的应用被激活,还将预测的应用的状态配置为使用选择和复制的内容。因此,当完成了复制动作后,在一些情况下,用户能够快速切换至用户打算粘贴内容的应用。这对移动装置(诸如,显示器大小有限和输入装置设施有限的电话和平板计算机)可能特别有用。这可以利用比通常可能的更少的步骤实现向不同应用的粘贴操作。这可以提供更简单的用户界面并且使显示器大小有限并且输入装置资源有限的移动装置更容易使用。
因此,在一些实施方式中,方法可以包括:接收响应于在计算装置上复制选择的内容的用户动作而发起的控制信号;使用至少一个处理器,基于与选择的内容相关联的场境,来从多个应用中预测适合粘贴选择的内容的预测的应用;以及响应于控制信号,并且使用至少一个处理器,来使得用于该预测的应用的用户控件显示在计算装置上,用户控件被配置为在用户选择时激活计算装置上的预测的应用。
在一些实施方式中,方法可以包括:通过以下操作对在计算装置上复制选择的内容的用户输入所产生的控制信号做出响应:基于与选择的内容相关联的场境从多个应用中选择内容粘贴目标应用作为预测的应用;以及使得用于该预测的应用的用户控件显示在计算装置上,以及通过激活计算装置上的预测的应用来对用户控件的用户选择做出响应。
在一些实施方式中,场境包括复制选择的内容的用户动作在哪个应用中被执行,以及,预测所预测的应用包括:至少部分地基于复制选择的内容的用户动作在哪个应用中被执行来预测所预测的应用。同样,在一些实施方式中,场境包括选择的内容的长度,并且预测所预测的应用包括:至少部分地基于选择的内容的长度来预测所预测的应用。同样,在一些实施方式中,选择的内容包括文本,并且预测所预测的应用包括:如果选择的内容的长度满足长度标准,则从多个应用中预测消息收发应用作为所预测的应用;以及如果选择的内容的长度不满足长度标准,则从多个应用中预测搜索应用作为所预测的应用。
进一步地,在一些实施方式中,场境包括应用历史记录,并且预测所预测的应用包括:至少部分地基于应用历史记录来预测所预测的应用。在一些实施方式中,应用历史记录包括最近使用的应用,并且预测所预测的应用包括:至少部分地基于最近使用过的最近使用的应用来预测最近使用的应用作为预测的应用。在一些实施方式中,应用历史记录包括先前被用作粘贴目标的先前目标应用,并且预测所预测的应用包括:至少部分地基于先前被用作粘贴目标的先前目标应用来预测先前目标应用作为预测的应用。另外,在一些实施方式中,预测先前目标应用作为预测的应用包括:至少部分地基于先前被用作与选择的内容相似的内容的粘贴目标的先前目标应用来预测先前目标应用作为预测的应用。在一些实施方式中,应用历史记录包括先前在复制动作之后被激活的先前激活应用,并且预测所预测的应用包括:至少部分地基于先前在复制动作之后被激活的先前激活应用来预测先前激活应用作为预测的应用。进一步地,在一些实施方式中,应用历史记录包括指示用户先前完成了粘贴动作而不是选择先前预测的应用的用户控件、或者指示在激活先前预测的应用之后的进一步用户行为的数据,并且预测所预测的应用是至少部分地基于该数据。
一些实施方式还可以包括:分析选择的内容以识别一个或者多个实体,其中,场境包括一个或者多个实体,并且预测所预测的应用包括:至少部分地基于一个或者多个实体来预测所预测的应用。另外,在一些实施方式中,一个或者多个实体包括电子邮件地址、电话号码、物理地址或者统一资源定位符(URL),并且预测所预测的应用包括:如果一个或者多个实体包括电子邮件地址,则预测所预测的应用为电子邮件应用;如果一个或者多个实体包括电话号码,则预测所预测的应用为电话应用;如果一个或者多个实体包括物理地址,则预测所预测的应用为地图应用;以及如果一个或者多个实体包括URL,则预测所预测的应用为浏览器应用。
此外,在一些实施方式中,预测所预测的应用包括:确定一个或者多个实体中的多个实体是否相关;如果多个实体相关,则预测搜索应用作为预测的应用;如果多个实体不相关,则选择多个实体中排名最高的实体并且至少部分地基于该排名最高的实体来预测所预测的应用。在一些实施方式中,预测所预测的应用包括:基于场境来对多个应用中的多个应用进行排名并且选择预测的应用为多个应用中排名最高的应用。
在一些实施方式中,沿计算装置的显示屏幕的边缘显示用户控件,用户控件被配置为响应于第一用户输入类型来激活计算装置上的预测的应用,并且用户控件被配置为响应于第二用户输入类型来使多个二级用户控件与用户控件相邻显示,其中,二级用户控件中的每个二级用户控件被配置为在用户选择时激活多个应用中的相关联的应用。
此外,在一些实施方式中,用户控件被进一步配置用于控制预测的应用以将应用配置成预定状态并且通过使用选择的内容来执行粘贴动作。在一些实施方式中,用户控件包括以预测的应用为目标的深度链接,并且,在一些实施方式中,至少一个处理器驻留在计算装置中,并且接收控制信号包括:检测计算装置上的复制事件。另外,在一些实施方式中,至少一个处理器驻留在通过网络与计算装置通信的在线服务中,并且接收控制信号包括:接收来自计算装置的消息。
一些实施方式还可以包括:在计算装置中,检测复制事件;确定在计算装置与在线服务之间的连接性;响应于确定在计算装置与在线服务之间存在连接性,将消息传送至在线服务;以及响应于确定在计算装置与在线服务之间缺乏连接性,基于选择的内容从多个应用中预测本地预测的应用或者使默认用户控件显示在计算装置上。
一些实施方式还包括一种系统,其包括一个或者多个处理器和与该一个或者多个处理器可操作地耦合的存储器,其中,该存储器存储指令,响应于该指令由一个或者多个处理器的执行,该指令使一个或者多个处理器执行上述方法中的任何一种方法。一些实施方式还可以包括至少一种非暂时性计算机可读介质,其包括指令,响应于该指令由一个或者多个处理器的执行,该指令使一个或者多个处理器执行上述方法中的任何一种方法。
本说明书的一个方面提供了配置为执行上述方法中的任何一种方法的计算设备,任选为移动计算装置。
本说明书的另一方面提供了一种计算机程序,该计算机程序包括机器可读指令,该机器可读指令在由计算设备、任选为移动计算装置执行时,使其执行上述方法中的任何一种方法。
应该理解,前述概念和在本文中更为详细地讨论的附加概念的所有组合被构思为本文公开的主题的一部分。例如,在本公开的权利要求书中出现的要求保护的主题的所有组合被构思为本文公开的主题的一部分。
附图说明
图1图示了根据各种实施方式可以实施所公开的技术的示例环境。
图2是图示了用于在图1的示例环境中执行场境粘贴目标预测的示例操作顺序的流程图。
图3是图示了用于在图1的示例环境中执行场境粘贴目标预测的另一示例操作顺序的流程图。
图4是图示了用于基于在图1的示例环境中的场境来预测目标应用并且对目标应用进行排名的示例操作顺序的流程图。
图5A、图5B、图5C和图5D从图1的示例环境通过图形图示了在计算装置上的场境粘贴目标预测的示例实施方式。
图6A、图6B、图6C和图6D从图1的示例环境通过图形图示了在计算装置上的场境粘贴目标预测的另一示例实施方式。
图7图示了适合用于在图1的示例环境中实施一个或者多个装置的计算机的示例架构。
具体实施方式
目前,在许多计算装置中,特别是在移动装置(例如视窗未被用于应用的智能手机和平板计算机)中,复制一个应用中的内容(诸如,文本)并且将该内容粘贴到不同应用中可能非常繁琐。已经发现,一旦已经选择和复制了一个应用中的文本,则用户平均需要花大概17秒来将文本粘贴到移动装置上的不同应用中。用户通常需要按下主页按钮,滚动并且找到要粘贴至的所需应用,并且然后将文本粘贴到适当用户控件(例如,搜索框、消息框等)中。在一些情况下,用户甚至可以在粘贴之后(例如,当粘贴到地图应用的搜索框中时)删除一些文本。
为了解决这些和其它问题,本说明书的实施方式可以执行场境粘贴目标预测,以预测粘贴动作的一个或者多个目标应用,并且这是基于与先前已经被选择和复制到临时缓冲区(诸如,剪贴板)的内容(例如,能够在计算环境中被复制和粘贴的文本、图像和任何其它数据或者实体)相关联的场境来实现的。然后,用户控件可以被呈现以使用户能够激活预测的应用,并且在一些情况下,一旦预测的应用被激活,还将预测的应用的状态配置为使用选择和复制的内容。因此,当完成了复制动作时,在一些情况下,用户能够快速切换至用户打算粘贴内容的应用。
如下面更加显而易见的,通常响应于在计算装置上复制选择的内容的用户动作而生成的控制信号来执行用户控件的呈现。因此,当例如通过选择“复制”用户控件、键入键盘快捷键等来复制内容时并且在已经选择内容之后,通常向用户呈现激活预测的应用的选项。换言之,在一些实施方式中,用户控件的呈现既不是响应于内容的选择而被直接发起的,也不是响应于应用的激活而被直接发起的,而是响应于复制选择的内容的用户动作而被发起的。另外,在本文中使用术语“选择的内容”来指内容,诸如,已经由用户选择并且稍后被复制作为复制动作的结果的文本、图像、和其它可选择内容。然而,要理解,选择的内容仅仅是从复制动作的角度来选择的,并且未做出以下暗示:在复制或者粘贴动作之后或者在与场境粘贴目标预测有关的任何时候,内容必须保持选中状态。
现在转向附图,其中,相同的数字在多个视图中表示相同的部件,图1图示了在一些实施方式中能够实施场境粘贴目标预测的示例计算环境10。具体地,环境10通过网络16将多个计算装置12与知识系统14接口。知识系统14可以实施在例如通过网络进行通信的一个或者多个计算机中。知识系统14是信息检索系统的示例,在该信息检索系统中可以实施本文所描述的系统、组件和技术并且/或者该信息检索系统可以与本文所描述的系统、组件和技术接口。
用户可以经由一个或者多个计算装置12与知识系统14交互,该一个或者多个计算装置12中的每一个计算装置可以是通过一个或者多个网络16(诸如,局域网(LAN)或者诸如互联网的广域网(WAN))耦合至知识系统14的计算机。例如,每个计算装置12可以是台式计算装置、膝上型计算装置、平板计算装置、手机计算装置、用户的车辆的计算装置(例如,车载通信系统、车载娱乐系统、车载导航系统)、或者用户的包括计算装置的可穿戴设备(例如,用户的具有计算装置的手表、用户的具有计算装置的眼镜)。可以提供附加的和/或替代的计算装置。
每个计算装置12可以运行各种不同的应用18(本文也称为“App”),诸如,应用A、B、C和D。应用A至D通常指的是可以具有响应于各种事件而暴露于计算装置12的用户的接口的任何应用。可以通过加载/打开/启动应用(例如,从非易失性存储器)将应用接口“暴露”给用户(即,允许用户与其交互),或者,如果在后台已经发起/打开/启动应用,则将应用放到前台(例如,使应用窗口成为活动窗口)。将应用加载和/或放到前台中的所有这些方式在下文中将统一称为“激活”应用。这些应用(以及本文中所提及的任何“预测的应用”)可以包括但不限于用于预订或者获得票的应用(例如,餐厅预订、酒店预订、航班预订、火车预定、活动预定等)、地图应用、日历应用、提醒应用、翻译应用、媒体消费应用(例如,音乐或者视频播放器)、游戏、消息收发App、电子邮件App、文本消息收发App、天气App、房地产App、健康跟踪App、购物App、新闻App、拼车App、生产型应用(诸如,文字处理器或者电子表格应用)、电话应用、浏览器应用、搜索应用等。
每个计算装置12和知识系统14可以包括用于存储数据和软件应用的一个或者多个存储器、用于访问数据和执行应用的一个或者多个处理器、以及方便通过网络进行通信的其它组件。可以将由一个或者多个计算装置12和/或知识系统14执行的操作分布到多个计算机系统中。例如,知识系统14可以实施为在通过网络彼此耦合的一个或者多个位置中的一个或者多个计算机上运行的计算机程序。
每个计算装置12另外包括操作系统20、以及为了执行场境粘贴目标预测的目的在其中实施的本地复制模块22。同样,知识系统14可以包括与本地复制模块22通信的在线复制模块24。在一些实施方式中,场境粘贴目标预测可以由本地复制模块22和在线复制模块24共同执行,然而,在其它实施方式中,这些模块之间的功能分配可能有所不同,并且在其它实施方式中,功能可以全部并入计算装置12或者知识系统14。
在各种实施方式中,知识系统14还可以包括应用模块26、排名模块28、索引引擎30和信息引擎32。在一些实施方式中,可以省略模块26、28和引擎30、32中的一个或者多个。在一些实施方式中,可以将模块26、28和引擎30、32中的所有或者一个或者多个的方面组合在一起。在一些实施方式中,模块26、28和引擎30、32中的一个或者多个可以在独立于知识系统14的组件中实施。在一些实施方式中,模块26、28和引擎30、32中的一个或者多个、或者其任何可操作部分可以在由计算装置12执行的组件中实施。
在各种实施方式中,知识系统14和/或计算装置12还可以包括个人助理引擎(未示出)。进一步地,在一些实施方式中,知识系统14可以实施搜索引擎。
在一些实施方式中,例如,不仅可以支持在线功能而且可以支持离线功能,从而使得每当计算装置12与在线服务通信时即可使用在线功能,而在连接性不存在时使用离线功能。在其它实施方式中,可以将不同的动作或者动作域分配给在线和离线功能,然而,在其它实施方式中,仅仅可以在离线功能未能充分处理特定粘贴目标预测时使用在线功能。然而,在其它实施方式中,可以不使用任何互补在线功能。
应用模块26可以维护安装到计算装置12上或者可用于计算装置12的应用的索引。例如,应用模块26可以与所谓的“应用商店”集成在一起或者至少与所谓的“应用商店”通信,计算装置12的用户从该所谓的“应用商店”下载应用(或“App”)。在一些实施方式中,当用户从应用模块26(或者从与应用模块26通信的应用商店)下载App并且/或者安装App时,可以添加记录以指示用户已经安装了该应用。在一些实施方式中,可以定期将这些记录与计算装置12同步以反映,例如,用户卸载App的时间、用户从除了可用于应用模块26的应用商店之外的来源下载App并且安装App的时间等。如下面将描述的,应用模块26是图1中所描绘的多个组件中的一个组件,该组件可以参与识别安装在计算装置12上的应用的过程,从而可以做出合适的应用预测。
在一些实施方式中,应用模块26可以由个人用户通过用户设置的账户来访问。例如,用户可以具有账户,该账户具有应用模块26(或者具有与应用模块26通信的应用商店),用户可以通过使用各种凭据(例如,用户名/密码、视网膜扫描、指纹扫描等)来访问该账户。一旦用户登录其账户,其就可以将一个或者多个App下载到一个或者多个计算装置以形成由用户操作/拥有的计算装置生态系统。在一些情况下,特定App仅仅在用户购买了App(或者有权使用App)的情况下可以用于下载。在一些实施方式中,当用户购买App时,用户其后可能有权下载App并且将App安装在其生态系统的多个计算装置12上。
然而,还要理解,可以本文所公开的方式预测的一些应用可以是最初由计算装置提供的“默认”应用,并且可能不是单独安装的,并且在一些情况下,甚至无法由用户移除。一些应用(例如,搜索应用或者翻译应用)也可以至少部分地集成到计算装置操作系统中,并且,因此,可能不一定以与其它应用相似的方式显示给用户。例如,一些应用可以显示为叠加层或者以其它集成到操作系统中的方式显示,而不是被显示在单独应用窗口中。
索引引擎30可以维护供知识系统14使用的索引。索引引擎30例如通过使用传统和/或其它索引技术来处理文档并且更新索引中的索引条目。例如,索引引擎30可以爬取一个或者多个资源,诸如,经由这种爬取而被访问的万维网和索引文档。作为另一示例,索引引擎30可以从一个或者多个资源(诸如,控制这种文档的网站管理员)接收与一个或者多个文档相关的信息并且基于这种信息来将文档编入索引。文档是与文档地址相关联的任何数据。文档包括网页、文字处理文档、便携式文档格式(PDF)文档、图像、电子邮件、日历条目、视频和网络订阅源,这仅是几例。每个文档可以包括内容,例如:文本、图像、视频、声音、嵌入信息(例如,元信息和/或超链接);和/或嵌入指令(例如,ECMAScript实施方式,诸如,JavaScript)。
信息引擎32可以维护另一索引,该另一索引包括供知识系统14使用的非文档特定信息或者利于访问非文档特定信息。例如,知识系统14可以被配置为响应于用于寻找具体信息的搜索查询来返回信息。如果用户搜索“Ronald Reagan的生日”,则知识系统14可以例如从信息引擎32接收日期“1911年2月6日”。可以将该信息返回给用户作为与从索引引擎30接收到的文档分开的搜索结果的一部分。在各种实施方式中,索引本身可以包含信息,或者索引可以链接至一个或者多个其它信息源,诸如,在线百科全书、历书等。在各种实施方式中,引擎30、32中的每个引擎的索引可以包括在查询(或者查询项)与文档和/或信息之间的映射。
例如,通过使用传统和/或其它信息检索技术,排名模块28可以使用引擎30、32的索引来识别响应于搜索查询的文档和其它信息。例如,通过使用一个或者多个排名信号,排名模块28可以计算被识别为响应于搜索查询的文档和其它信息的得分。每个排名信号可以提供关于文档或者信息本身的信息、在文档或者信息与搜索查询之间的关系、和/或在文档或者信息与执行搜索的用户之间的关系。
在一些实施方式中,例如,知识系统14可以具有所谓的知识库作为例如信息引擎32和/或另一组件的部分,该所谓的知识库包含已知实体、实体类型(例如,“人”、“地方”、“事件”)和已知实体之间的关系的记录。在一些实施方式中,这种知识库可以实施为图表,在该图表中,节点表示实体并且边缘表示在实体和/或实体类型之间的关系,尽管这不是必需的。在一些这样的实施方式中,可以使来自这种知识库的关于实体的信息可用于诸如离线复制模块24的组件。除了其它目的之外,在一些实施方式中,这些组件然后可以使用实体信息来帮助预测粘贴目标应用。
将理解针对图1中所示的环境的其它变化和修改,并且因此,本发明并不限于本文所公开的特定环境。
现在转向图2,并且继续参照图1,该图图示了适合用于在图1的计算环境10中执行场境粘贴目标预测的示例操作顺序50。在框52中,响应于接收到控制信号(本文也称为复制信号)来发起顺序50。在这一点上,在不同的实施方式中控制信号可以多种方式实施。例如,在一些实施方式中,可以将顺序50作为复制监听程序登记在操作系统20中,凭此可以认为控制信号是事件消息或函数调用,从而响应于复制事件来生成控制信号。在一些实施方式中,例如,在诸如知识系统14的在线服务中执行预测的情况下,控制信号可以是从计算装置12传送至知识系统14的消息,该消息指示已经在计算装置上执行了复制动作并且任选地包括选择和复制的内容和/或适合用于生成预测的其它场境信息。在其它实施方式中,可以通过剪贴板实体并且/或者响应于定期监测剪贴板实体来生成控制信号,从而在将内容复制到剪贴板上时发起顺序50。
在其它实施方式中,可以使用检测用户执行复制动作的其它方式。进一步地,如将要理解的:剪切动作是与删除动作有效结合在一起的复制动作,本文所使用的术语“复制”也应该被认为同样是指“剪切”。
回到图2,一旦接收到复制信号,框54便会尝试基于当前选择(和复制)的内容的场境来预测目标应用,即,从多个候选应用中预测适合粘贴选择的内容的预测的应用。在这一点上,场境通常指可以用于评估用户正打算粘贴选择和复制的内容的(多个)可能的应用的数据或者信号的集合。在一些实施方式中,例如,场境可以包括选择的内容的长度,这样如果长度满足长度阈值(例如,大于预定长度),则可以预测消息收发应用(诸如,电子邮件或者文本消息应用),然而,如果长度不满足长度阈值,则可以预测搜索应用。进一步地,在一些实施方式中,场境可以包括在选择的内容中识别到的一个或者多个实体(例如,电子邮件地址、电话号码、物理地址、URL),以使目标应用的预测可以至少部分地基于最适合这些实体的应用(例如,电子邮件地址的电子邮件应用、电话号码的电话或者联系人应用、物理地址的地图应用、或者URL的浏览器应用)。
另外,在一些实施方式中,场境可以包括复制应用,即,在其中执行复制所选择的内容的用户动作的应用,因为复制应用对于以下两种目的可能是相关的:将该应用排除在预测的目标应用之外,和/或将预测偏向于先前已经被发现在该复制应用中执行过复制动作之后已经被激活过的应用。
在一些实施方式中,场境还可以包括应用历史记录,该应用历史记录可以提供关于用户的意图的附加线索。例如,应用历史记录可以包括一个或者多个最近使用应用,因为用户可能正打算返回最近使用的应用以粘贴选择的内容。应用历史记录还可以包括一个或者多个先前目标应用,即,针对粘贴动作先前已经被列为目标的应用,并且,在一些情况下,是针对相似内容(诸如,针对相同的用户、针对从相同的复制应用复制的选择内容、或者针对特定类型的选择内容)先前已经被列为目标的应用。应用历史记录还可以包括一个或者多个先前激活应用,即,先前已经在之前的复制动作之后被激活的应用,这两者通常都与发起复制动作的特定应用有关。
在一些实施方式中,应用历史记录还可以包括与在之前的预测之后执行的用户动作相关联的历史数据。例如,如果用户先前在执行了复制动作的相同应用中执行了粘贴动作而不是激活预测的应用,如果用户在激活预测的应用之后执行了某些行为(例如,编辑粘贴的文本),则该信息可以用于预测算法,并且,在一些情况下,可以用作改进预测算法以进行进一步预测的反馈。
另外,在一些实施方式中,例如,由于至少利用基线置信度级别没有预测到任何应用,所以没有预测到任何应用。在这种情况下,可以返回默认应用(例如,搜索引用)作为预测的结果。
可以利用各种预测算法和方法来预测应用。在一些实施方式中,例如,可以采用机器学习算法,并且机器学习算法可以不同的方式对场境的不同的方面进行加权,从而响应于特定场境中不同的数据组合预测到不同的应用。在一些实施方式中,可以使场境的某些方面优先于其它方面,这样如果场境的一些方面满足一些阈值标准,则在预测中不考虑其它方面。在一些实施方式中,应用预测可能仅仅基于用户的个人历史记录,然而,在其它实施方式中,可以使用多个用户的历史记录来预测其它用户的目标应用。另外,在本文所描述的系统收集有关用户的个人信息或者可能使用个人信息的情况下,可以为用户提供如下机会:控制程序或者特征是否收集用户信息(例如,有关用户的社交网络、社交行动或者活动、职业、用户的偏好、或者用户的当前地理位置),或者控制是否和/或如何接收可能与用户更加相关的内容。同样,在存储或者使用特定数据之前,可以按照一种或者多种方式来处理该特定数据,从而使得可以去除个人可识别信息。例如,可以对用户的身份进行处理,使得无法为用户确定个人可识别信息,或者在获得地理位置信息的情况下可以使用户的地理位置一般化(诸如至城市、ZIP代码、或者州级),使得无法确定用户的特定地理位置。因此,用户可以控制如何收集和/或使用有关用户的信息。
在一些实施方式中,预测的结果可以是对复制的内容的预测的目标应用的识别。在一些实施方式中,预测的结果可以是多个预测的目标应用,并且在一些实施方式中,可以对多个预测的目标应用进行排名,其中,排名最高的应用是被预测的最有可能的目标。进一步地,在一些实施方式中,预测可能限于实际上安装在计算装置上的应用,然而,在其它实施方式中,应用一旦被预测就可以自动安装,或者可以响应于预测向用户给出安装应用的选项。
接下来,在框56中,在计算装置上显示用于预测的应用的用户控件,或者如果预测到多个应用,则在计算装置上显示排名最高或者最可能的预测的应用。用户控件被配置为在用户选择时激活计算装置上的预测的应用,并且,同样,框58图示了接收指向用户控件的这种用户输入。响应于用户输入,框60然后激活预测的应用。
另外,在一些实施方式中,并且如框62所示的,也可以将预测的应用的状态配置为利于粘贴或者使用选择(和复制)的内容。例如,在一些实施方式中,在预测到内容将被粘贴到预测的应用的搜索框中的情况下,可以打开包括搜索框的显示,并且在一些实施方式中,可以将内容粘贴到搜索框中和/或可以自动发起搜索。要理解,对于不同的应用而言如何对应用进行配置可以彼此大不相同,并且同样,不同的实施方式可以执行各种各样的操作以将预测的应用配置为接收和/或否则使用内容。
在一些实施方式中,例如,“深度”链接不仅可以用于激活应用,而且可以用于对应用的状态进行配置。在一些实施方式中,例如,链接可以由用户操作以使计算装置将与预测的应用相关联的指定界面暴露给用户。例如,如果预测的应用正在后台运行(例如,已经以某种形式加载到易失性存储器中),则链接的操作可以使应用处于活动状态,从而将应用的界面(图形的、听得见的、触觉的等)暴露给用户,并且因此,用户可以与应用的界面交互。如果应用被安装但不在后台运行,则链接的操作可以使应用例如从非易失性存储器打开或者“启动”。
因此,当完成顺序50时,将具有复制的选择内容的用户指向预测的目标应用,以将选择的内容粘贴在预测的目标应用中或者否则在预测的目标应用中使用选择的内容。
顺序50的实施可以仅仅在计算装置内、仅仅在知识系统14内、或者使用其组合。要理解,用户控件在计算装置上的显示因此可以在计算装置中被发起或者可以在知识系统14中被发起,其中,预测的目标应用的返回使得用户控件被显示在计算装置上。
图3图示了适合用于执行场境粘贴目标预测并且具体地以分布式方式利用计算装置12的本地复制模块22和知识系统14的在线复制模块24(图1)的另一示例操作顺序100。框102至126在计算装置12中实施,并且通过接收响应于用户发起的复制动作而生成的复制或者控制信号开始于框102。接下来,在框104中,可以从选择的内容中去除无关内容(例如,通过复制应用添加至复制缓冲区或者剪贴板上的选择的内容的属性)。
接下来,框106确定对于在线服务是否存在连接性(即,计算装置12与知识系统14通信)。如果连接性存在,则可以将控制传递至框108以发起在线服务粘贴目标预测,例如,通过构建和发送消息,该消息包括选择的内容和任何相关的场境数据,并且在一些情况下,包括在计算装置上安装的应用的列表(除非应用模块26已经知道)。计算装置等待来自在线服务的包括预测结果的响应消息,在框110中接收到该响应消息。回到框106,然而,如果对于在线服务没有连接性可用,则框106将控制传递至框112以执行本地粘贴目标预测。
在该实施方式中,框112中的本地粘贴目标预测和在框108中发起的在线服务粘贴目标预测都返回零个或者多个预测的应用的排名列表。在一些实施方式中,可以提供列表作为卡片集合,以识别预测的应用、相对排名和相关联的深度链接,该深度链接适合用于激活相应应用,并且在一些情况下,将这些应用的状态配置为最佳地使用选择和复制的内容。同样,框110和112中的每个框在完成后来将控制传递至框114以确定是否已经识别到任何粘贴目标(即,列表不是空的)。
如果已经找到一个或者多个粘贴目标,则控制传递至框116以显示列表中排名最高的预测的目标应用的用户控件。另外,在该实施方式中,用户控件接受多种类型的用户输入。例如,第一种类型的用户输入与触摸屏上的短敲击对应,并且使控制传递至框118以激活排名最高的预测的目标应用,例如,通过使用在结果列表中提供的深度链接。第二种类型的用户输入与触摸屏上的长敲击对应,并且使控制传递至框120以显示一个或者多个二级用户控件,该一个或者多个二级用户控件与列表中排名较低的预测的目标应用中的一些或者全部对应。然而,要理解,在其它实施方式中,可以使用其它类型的用户输入来发起二级用户控件的显示。另外,在一些实施方式中,也可以提供与一个或者多个默认应用或者操作对应的附加用户控件(例如,如果存在比预测的目标应用更可用的位置)。这些二级用户控件中的每个二级用户控件也接受一种或者多种类型的用户输入。如框122所示的,例如,短敲击这些二级用户控件中的一个二级用户控件可以激活与选择的二级用户控件相关联的预测的目标应用。
回到框114,如果结果列表是空的,则控制传递到框124以显示默认用户控件,例如,共享用户控件,该共享用户控件允许用户共享或者保存内容,并且短敲击或者其它用户输入使控制传递至框126以适当地处理用户输入。与针对排名最高的预测的目标应用而显示的用户控件一样,默认用户控件也可以接受其它类型的用户输入,例如,长敲击以显示多个二级用户控件,例如,各种作笔记应用,诸如,文本消息收发应用、电子邮件应用、记事本应用、搜索应用等。
要理解,可以支持其它类型的用户输入,例如,尤其是关闭或者隐藏用户控件的轻扫手势。在一些实施方式中,用户控件也可以在经过预定时间之后自动隐藏。进一步地,在一些实施方式中,当没有网络连接性存在并且相关联的应用需要连接性来运行(例如,搜索应用)时,用户控件可以被隐藏或者变灰/被禁用。
现在转向图4,该图图示了在一些实施方式中用于基于供使用的场境来预测的目标应用并且对目标应用进行排名的示例操作顺序150。例如,可以使用顺序150来执行本地粘贴目标预测(图3的框112)并且/或者执行在线服务粘贴目标预测(例如,在图1的在线复制模块24中)。要理解,在一些实施方式中,本地粘贴目标预测和在线粘贴目标预测都可以并入相似的功能和能力,然而,在其它实施方式中,本地粘贴目标预测可以并入相对于在线服务降低的能力,使得在线服务提供主要预测功能并且仅仅在至在线服务的连接性不存在时使用本地粘贴目标预测。
顺序150通过分析选择的内容以提取零个或者多个实体实体开始于框152。在这一点上,实体实体是认可类型的内容,针对该认可类型的内容,存在一个或者多个相关联的应用。例如,利用文本内容,对文本进行分析可以识别:可以与电子邮件或者联系人应用相关联的电子邮件地址、可以与电话或者联系人应用相关联的电话号码、可以与地图或者联系人应用相关联的物理地址、或者可以与浏览器应用相关联的统一资源定位符(URL)。对于其它类型的内容(例如,图像数据),可以执行图像分析和/或光学字符识别以识别一个或者多个实体实体。也应该注意,可以将一些实体实体预先分类,例如,就像为电子邮件、电话号码、地址和/或URL生产可选择链接的一些消息收发应用所执行的那样。然而,在其它实施方式中,在框152中可以从原始文本中识别文本实体实体。
接下来,框154确定是否识别到多个实体,并且如果没有识别到多个实体,则控制传递至框156以从与选择的内容相关联的各种数据构建场境,该各种数据包括以下中的一个或者多个:内容长度、实体类型(例如,电子邮件地址、电话号码、物理地址、URL等)、复制应用(选择的内容复制自该应用)、先前激活的应用(紧挨着复制应用之前激活的应用,因为用户可能希望回到之前的应用)、以及应用历史记录(包括最近使用的应用、先前被列为目标的应用、先前激活应用和/或用户行为)。
进一步地,关于应用历史记录,要理解,关于之前的复制和粘贴动作以及紧挨着当前复制动作之前发生的用户动作的历史活动可以指示用户对未来的粘贴动作的打算,并且在一些情况下,甚至可以预测应该如何将目标应用配置为利于使用选择的内容。因此,例如,如果用户先前已经在电子邮件应用中打开了新消息并且/或者已经将内容粘贴到电子邮件应用中的打开消息中并且从在浏览器应用中打开的网页复制了先前粘贴的内容,则可以认为这些因素中的每个因素是浏览器应用中的后续复制动作的场境的部分。进一步地,由于该场境,场境粘贴目标预测可以预测浏览器应用作为预测的应用,并且在一些情况下,可以基于用户所进行的激活来将浏览器应用的状态配置为显示消息,并且在一些情况下,将内容粘贴到位于之前的光标位置处的消息中。可以多种方式,例如,尤其是通过监控计算装置中的活动任务,来获得应用历史记录。
另外,如框158所示的,也可以提供场境中的信息作为预测算法的反馈,使得能够改进预测算法。因此,例如,如果用户先前在执行了复制动作的相同应用中执行了粘贴动作而不是激活预测的应用,或者如果用户在激活预测的应用之后执行了某些行为(例如,编辑粘贴的文本),则该信息可以用于修改预测算法的响应以降低误预测和/或误配置预测的应用的可能性。
回到框156,一旦场境被构建,控制便会传递至框160以对场境进行分析从而确定零个或者多个预测的目标应用的排名列表,例如,具有高于截断阈值的置信度级别和按照置信度级别排名的预测的目标应用的集合。另外,复制应用通常被排除在结果之外。框160中所使用的预测算法在不同的实施方式中可以各种各样的方式来配置,并且,如上所述,基于反馈可以是自适应的。预测算法可以基于机器学习技术、模糊逻辑或者其它技术来将应用有效地映射至各种场境数据,并且预测算法可以是为个人用户定制的并且仅仅基于与该用户相关联的场境数据,或者可替代地,在一些实施方式中可以基于多个用户的场境数据,从而可以将用户的历史活动用来预测其它用户的目标应用。也将理解,框160也可以访问用户的安装的应用集合,从而仅仅在结果中返回当前在用户的计算装置上可用的应用。然而,在其它实施方式中,也可以返回未安装的应用作为结果,使得如果需要的话,则用户可以具有安装这些应用的选项。
接下来,在框162中,返回排名列表作为预测的结果,或者如果没有识别到具有足够置信度级别的预测的应用,则可以返回没有找到预测的应用的指示。另外,在一些实施方式中,结果还可以包括针对预测的应用的建议命令,以正确地配置应用来使用选择的内容。在一些实施方式中,例如,可以通过使用有序的深度链接列表来返回结果,其中,每个深度链接识别适合用于将应用配置成期望状态的应用和命令。在一些实施方式中,可以返回结果作为包括深度链接的“卡片”的有序的集合。在其它实施方式中可以使用格式化结果的其它方式。
现在回到框154,如果通过对选择的内容进行分析来识别到多个实体,则控制可以传递至框164以确定实体是否相关,例如,是否有一些指示表明打算一起使用多个实体,或者如果多个实体不相关并且因此用户可能仅仅打算复制一个实体并且随后去除与其它实体相关的内容。例如,可以基于实体经常被一起搜索的可能性来确定相互关系。如果不相关,则控制传递至框166以选择置信度最高的实体并且将控制传递至框156以将场境中的该实体用于场境粘贴目标预测的目的。否则,框164将控制传递至框168以创建合并的搜索查询并且识别搜索应用作为置信度最高的预测的目标应用,并且然后,至框162以返回搜索应用作为预测的结果,从而使用户能够使用多个实体来发起搜索。在其它实施方式中,可以使用不相关和/或相关的实体来为每个实体生成单独预测,然后,例如,可以在叠加显示中将该单独预测组合在一起并且显示给用户。
如上所述,顺序150不仅可以用于本地场境粘贴目标预测而且可以用于在线场境粘贴目标预测。另外,在一些实施方式中,功能可以在本地预测与在线预测之间变化。因此,例如,在一些实施方式中,可能期望本地场境粘贴目标预测仅仅处理场境数据的子集,并且在连接性不存在时仅仅将预测限于能够离线的应用。因此,例如,在一些实施方式中,可以将本地场境粘贴目标预测限于检测实体(诸如,电子邮件地址、电话号码、物理地址和/或URL),并且潜在地依赖于有限的应用历史记录(诸如,最近激活的应用)以使用户能够快速返回他们正在使用的最后一个应用。进一步地,当离线时,则呈现给用户的应用可能受限,例如,仅仅显示用于地图应用的用户控件,如果离线地图可用的话。在其它实施方式中,如果连接性不存在,则可以显示默认用户控件。
现在转向图5A至图5D,这些图图示了在一种实施方式中的场境粘贴目标预测操作的图形示例。例如,图5A图示了计算装置200,例如,移动电话,包括示出了控制栏202和电子邮件应用204的显示,在该显示内显示有电子邮件消息。同样,在图5A中示出了用户已经选择了在电子邮件消息的正文中的文本(“10Main St.”),其中,突出显示选择的文本,如206中所示。选择文本可以各种方式发生,例如,通过拖拽控件208以界定选择的开始和结束。如图5B所示,当完成选择文本时(例如,一旦用户已经在拖拽了控件208中的一个控件之后抬高其手指),可以与选择的文本相邻显示场境菜单或者场境栏210。场境栏210可以包括多个按钮或者其它控件,该多个按钮或者其它控件包括复制按钮212,一旦用户选择了该复制按钮212(例如,经由短敲击),便会发起复制动作以将选择的文本复制到剪贴板。
在该示例中,发起复制动作也会发起场境粘贴目标预测。为了该示例的目的,假设在文本的实体分析期间可将文本“10Main St.”识别为物理地址,那么因此,可以从该场境中预测地图应用作为置信度最高的预测的目标。同样,并且如图5C所示,发起复制动作可以使“气泡”形式的用户控件214沿显示的边缘显示。用户控件214配置为:当用户经由短敲击选择用户控件214时,打开地图应用,并且在一些情况下,通过使用“10Main St.”来发起搜索。此外,如图5D所示,指向用户控件214的第二种类型的用户输入(例如,长敲击)可以导致显示与其它置信度较低的预测的目标应用对应的一个或者多个二级用户控件(例如,分别与消息应用、翻译应用和记事本应用对应的用户控件216、218和220)在一些实施方式中,可以将二级用户控件216至220显示为围绕用户控件214的“卫星”,然而,在其它实施方式中,可以将二级用户控件相对于用户控件214显示在其它位置中,例如,沿用户控件214下面的边沿垂直或者成直线地排列。在其它实施方式中,也可以与用户控件214同时显示二级用户控件中的一些或者所有,使得响应于复制动作用户最初就被呈现多种预测,而不是仅仅在指向用户控件214的用户输入之后显示二级用户控件。另外,要理解,在一些实施方式中,发起复制动作可能不会导致取消选定选择的文本,如图5C和图5D所示,并且因此,在显示用户控件214至220中的任何一个用户控件之后文本仍然是被选定的。
接下来,图6A至图6D图示了在另一实施方式中的场境粘贴目标预测操作的图形示例。例如,图6A图示了计算装置250,例如,移动电话,包括示出了控制栏252和浏览器应用254的显示,在该显示内显示有配方网页。同样,在图6A中示出了用户已经选择了针对配方(针对Bucatini all’Amatriciana)的文本,其中,突出显示选择的文本,如256中所示。当完成了选择文本时,可以与选择的文本相邻显示场境菜单或者场境栏260,该场境菜单或者场境栏260包括复制按钮262,一旦用户选择了该复制按钮262(例如,经由短敲击),便会发起复制动作以将选择的文本复制到剪贴板。
在该示例中,发起复制动作也会发起场境粘贴目标预测,并且至少部分地基于文本比长度阈值大的这一事实,与搜索应用相比较,预测可能偏向于(favor)消息收发应用。另外,例如,假设先前激活应用是电子邮件应用,与另一类型的消息收发应用(例如,文本消息收发递应用)相比较,可能偏向于电子邮件应用。因此,如图6B所示,发起复制动作可能导致卡片264显示在显示底部,并且包括与预测的应用对应的用户控件266,例如,按钮。
如图6C所示,选择用户控件266可能导致激活电子邮件应用270,并且如272中所示的,例如,作为与图6B的用户控件266相关联的深度链接的结果,电子邮件应用270可以被配置为显示新的或者先前打开的草稿电子邮件并且将选择的内容粘贴在新的或者先前打开的草稿电子邮件中的当前光标位置处。在其它实施方式中,作为选择用户控件266的结果,仅仅可以显示新的或者先前打开的草稿电子邮件,然而,在其它实施方式中,作为选择用户控件266的结果,仅仅可以激活电子邮件应用270。另外,在一些实施方式中,在将内容自动粘贴到预测的应用中或者使内容自动用于预测的应用中的操作的情况下,可以提示用户确认(未示出)以使得用户能够快速撤销自动执行的操作。
暂时回到图6B,卡片264还可以包括用于显示其它排名较低的预测的应用的用户控件268。在图6D中图示了对用户控件268的选择,其中,与其它预测的应用相对应,显示附加卡片274和276,例如,以通过使用卡片274来激活翻译应用(任选地作为叠加层)或者激活地图应用以在地图上找到Almatrice(从选择的内容的文本分析确定)
在各种实施方式中,本文所描述的技术可以实施在多个不同的计算机、计算机系统或者计算装置中。例如,图7是示例计算机300的框图,该示例计算机300可以用于在计算环境内实施计算装置、知识系统和/或各种计算机系统。计算机300通常包括至少一个处理器302,该至少一个处理器302经由总线子系统304与多个外围装置通信。这些外围装置可以包括存储子系统306(例如,包括存储器子系统308和文件存储子系统310)、用户界面(UI)输入装置312、UI输出装置314和网络接口子系统316。输入装置和输出装置允许用户与计算机300交互,并且网络接口子系统316提供至外部网络的接口并且耦合至其它计算机中的对应接口装置。
用户界面输入装置312可以包括键盘、指向装置诸如鼠标、轨迹球、触摸板或者图形输入板、扫描仪、并入显示器中的触摸屏、音频输入装置诸如语音识别系统、麦克风和/或其它类型的输入装置。一般而言,所使用的术语“输入装置”旨在包括将信息输入至计算机300中或者至通信网络上的所有可能类型的装置和手段。
用户界面输出装置314可以包括显示子系统、打印机、传真机、或者非可视显示,诸如,音频输出装置。显示子系统可以包括阴极射线管(CRT)、平板装置(诸如,液晶显示器(LCD))、投影装置、或者用于创建可见的图像的一些其它机构。显示子系统还例如经由音频输出装置提供非可视显示。一般而言,所使用的术语“输出装置”旨在包括将信息从计算机300输出至用户或者至另一机器或者计算机系统的所有可能类型的装置和手段。
存储子系统306存储提供本文所描述的模块中的一些或者所有的功能的编程和数据结构。例如,存储子系统306可以包括执行上述操作顺序的选择的方面并且/或者实施图1所示的各种装置和环境的一个或者多个组件的逻辑。
这些软件模块通常由处理器302单独或者与其它处理器组合执行。在存储子系统306中使用的存储器子系统308可以包括多个存储器,该存储器包括用于在程序执行期间存储指令和数据的主要随机存取存储器(RAM)318以及存储有固定指令的只读存储器(ROM)320。文件存储子系统310可以为程序和数据文件提供永久存储,并且可以包括硬盘驱动器、软盘驱动器以及相关联的可移动介质、CD-ROM驱动器、光盘驱动器、或者可移动介质盒。实施某些实施方式的功能的模块可以由文件存储子系统310存储在存储子系统306中或者在可由(多个)处理器302访问的其它机器中。
总线子系统304提供用于允许计算机300的各种组件和子系统按照预期的方式彼此通信的机构。虽然总线子系统304被示意地示出为单个总线,但是总线子系统的替代实施方式可以使用多个总线。
计算机300可以是各种类型,包括移动计算装置、台式计算机、膝上型计算机、平板计算机、可穿戴计算机、工作站、服务器、计算集群、刀片服务器、服务器群、或者任何其它数据处理系统或者计算装置。由于计算机和网络的不断变化的性质,所以图7中描绘的计算机300的描述旨在仅仅作为为了说明一些实施方式的目的的具体示例。计算机300的许多其它配置可能具有比图7中描绘的计算机系统多或者少的组件。
虽然在本文中已经描述和图示了多个实施方式,但是可以利用用于执行本文所描述的功能并且/或者获得本文所描述的结果和/或本文所描述的优点中的一个或者多个优点的各种各样的其它装置和/或结构,并且认为这种变化和/或修改中的每一种在本文所描述的实施方式的范围内。例如,虽然所示的实施方式响应于复制动作来执行了对预测的应用的预测以及显示与预测的应用直接对应的用户控件,但是在一些实施方式中,可以在发起复制动作之前,例如,一旦内容已经被选择,就执行预测的至少部分(如果不是所有的话),这样当发起复制动作后,预测结果即可更快速地用于生成一个或者多个适当的用户控件以便显示给用户。也要理解,在其它实施方式中,本文所示出的各种操作顺序可能会不同,并且在一些实施方式中,操作可以被彼此并行地记录和/或执行。例如,在一些实施方式中,可以在图4的框152和/或框154之前执行框156中的功能中的一些或者所有,使得在从选择的内容中提取实体之前构建场境的至少一部分。
更一般地,本文所描述的所有参数、尺寸、材料和配置意在是示例性的,并且实际参数、尺寸、材料和/或配置将取决于使用了本公开的教导的(多个)具体应用。本领域的技术人员仅仅使用常规实验即将认识或者能够确定本文所描述的具体实施方式的许多等同物。因此,要理解,前述实施方式仅仅以举例的方式呈现,并且在权利要求书和其等同物的范围内,可以不同于所具体描述和所要求保护的方式来实践实施方式。本公开的实施方式针对的是本文所描述的每一单独特征、系统、物品、材料、套件和/或方法。另外,如果这些特征、系统、物品、材料、套件和/或方法没有相互矛盾,则两个或者更多个这些特征、系统、物品、材料、套件和/或方法的任何组合包括在本公开的范围内。

Claims (19)

1.一种由一个或者多个处理器实现的方法,包括:
接收响应于经由计算装置的显示器复制选择的内容的用户动作而发起的控制信号;
分析所述选择的内容以识别包括在所述选择的内容中的一个或者多个实体,其中所述一个或者多个实体包括电子邮件地址、电话号码、或物理地址中的一个或者多个;
基于与所述选择的内容相关联的场境,从多个应用中预测适合粘贴所述选择的内容的预测的应用,
其中,所述场境包括复制所述选择的内容的用户动作被执行的给定应用以及包括在所述选择的内容中的所述实体中的一个或者多个,以及
其中,预测所述预测的应用包括:
至少部分地基于以下两者:复制所述选择的内容的用户动作被执行的所述给定应用以及包括在所述选择的内容中的所述实体中的一个或者多个,从所述多个应用当中排名一些应用;以及
基于所述排名,从所述一些应用当中选择所述预测的应用;
响应于在所述计算装置上复制所述选择的内容的用户动作,使得用于所述预测的应用的用户控件经由所述计算装置的所述显示器显示,其中所述用户控件覆盖从中选择内容的所述计算装置的显示器的一部分,而不引起任何二级用户控件被显示,并且其中每个二级用户控件用于在除了基于排名选择的所述预测的应用之外的所述多个应用中的对应一个应用;
响应于接收到针对用于所述预测的应用的所述用户控件的第一用户输入类型,经由所述计算装置的所述显示器激活所述预测的应用,以基于至少包括在所述选择的内容中的所述一个或者多个实体来自动执行一个或者多个功能,其中针对所述用户控件的所述第一用户输入类型包括针对用于所述预测的应用的所述用户控件的并且在第一持续时间内接收的触摸输入;以及
响应于接收到针对用于所述预测的应用的所述用户控件的第二用户输入类型,使得所述二级用户控件经由所述计算装置的所述显示器与所述用户控件相邻显示,其中针对所述用户控件的所述第二用户输入类型包括针对用于所述预测的应用的所述用户控件的并且在第二持续时间内接收的触摸输入,并且其中所述第二持续时间是比所述第一持续时间更长的持续时间。
2.根据权利要求1所述的方法,进一步包括:
如果所述一个或者多个实体包括所述电子邮件地址,则预测所述预测的应用为电子邮件应用;
如果所述一个或者多个实体包括所述电话号码,则预测所述预测的应用为电话应用;以及
如果所述一个或者多个实体包括所述物理地址,则预测所述预测的应用为地图应用。
3.根据权利要求1所述的方法,其中,预测所述预测的应用进一步包括:
确定所述一个或者多个实体中一些实体是否相关;
如果所述一些实体相关,则预测搜索应用作为所述预测的应用;以及
如果所述一些实体不相关,则选择所述一些实体中排名最高的实体并且至少部分地基于所述排名最高的实体来预测所述预测的应用。
4.根据权利要求1所述的方法,其中,预测所述预测的应用进一步包括基于所述预测的应用最近被使用来选择所述预测的应用。
5.根据权利要求1所述的方法,其中,预测所述预测的应用是进一步基于指示用户先前完成粘贴动作而不是选择先前预测的应用的用户控件或指示在激活先前预测的应用之后的进一步用户行为的数据,并且其中,预测所述预测的应用是至少部分地基于所述数据。
6.根据权利要求1所述的方法,其中,所述二级用户控件中的每个二级用户控件被配置为在用户选择时激活在除了基于排名选择的所述预测的应用之外的所述多个应用中的所述对应一个应用。
7.根据权利要求1所述的方法,其中,所述用户控件被进一步配置为:控制所述预测的应用,以使用所述选择的内容来执行粘贴动作。
8.根据权利要求7所述的方法,其中,所述用户控件包括以所述预测的应用为目标的深度链接。
9.根据权利要求1所述的方法,其中,所述一个或者多个处理器驻留在所述计算装置中,以及其中,接收所述控制信号包括:检测所述计算装置上的复制事件。
10.根据权利要求1所述的方法,其中,所述一个或者多个处理器驻留在通过网络与所述计算装置通信的在线服务中,以及其中,接收所述控制信号包括:接收来自所述计算装置的消息。
11.根据权利要求10所述的方法,进一步包括:
在所述计算装置上检测复制事件;
确定在所述计算装置与所述在线服务之间的连接性;
响应于确定在所述计算装置与所述在线服务之间存在连接性,将所述消息传送至所述在线服务;以及
响应于确定在所述计算装置与所述在线服务之间缺乏连接性:
基于所述选择的内容从所述多个应用中预测本地预测的应用;或者
使默认用户控件显示在所述计算装置上。
12.根据权利要求1所述的方法,其中基于复制所述选择的内容的所述用户动作被执行的所述给定应用以及包括在所述选择的内容中的所述实体中的一个或者多个两者来排名所述多个应用包括:基于在所述给定应用处复制先前选择的内容的先前用户动作以及包括在所述先前选择的内容中的对应实体来排名所述多个应用。
13.根据权利要求1所述的方法,其中使得多个二级用户控件与所述用户控件相邻显示包括:
使得所述多个二级用户控件以围绕用于所述预测的应用的所述用户控件的卫星布置来显示。
14.根据权利要求1所述的方法,还包括:
响应于接收到针对用于所述预测的应用的所述用户控件的所述第一用户输入类型并且基于包括在所述选择的内容中的所述一个或者多个实体包括所述电子邮件地址:
激活电子邮件应用作为所述预测的应用,以将所述电子邮件地址自动包括在电子邮件的“至”字段中,作为基于至少包括在所述选择的内容中的所述一个或者多个实体来自动执行的所述一个或者多个功能;
响应于接收到针对用于所述预测的应用的所述用户控件的所述第一用户输入类型并且基于包括在所述选择的内容中的所述一个或者多个实体包括所述电话号码:
激活电话应用作为所述预测的应用,以自动发起对所述电话号码的电话呼叫作为基于至少包括在所述选择的内容中的所述一个或者多个实体来自动执行的所述一个或者多个功能;和
响应于接收到针对用于所述预测的应用的所述用户控件的所述第一用户输入类型并且基于包括在所述选择的内容中的所述一个或者多个实体包括所述物理地址:
激活地图应用作为所述预测的应用,以自动发起到所述物理地址的导航作为基于至少包括在所述选择的内容中的所述一个或者多个实体来自动执行的所述一个或者多个功能。
15.一种包括一个或者多个处理器以及存储器的系统,所述存储器存储指令,所述指令在被所述一个或者多个处理器执行时,使所述一个或者多个处理器执行以下操作:
接收响应于经由计算装置的显示器复制选择的内容的用户动作而发起的控制信号;
分析所述选择的内容以识别包括在所述选择的内容中的一个或者多个实体,其中所述一个或者多个实体包括电子邮件地址、电话号码、或物理地址中的一个或者多个;
基于与所述选择的内容相关联的场境,从多个应用中预测适合粘贴所述选择的内容的预测的应用,
其中,所述场境包括复制所述选择的内容的用户动作被执行的给定应用以及包括在所述选择的内容中的所述实体中的一个或者多个,以及
其中,用于预测所述预测的应用的所述指令包括用于执行以下操作的指令:
至少部分地基于以下两者:复制所述选择的内容的用户动作被执行的所述给定应用以及包括在所述选择的内容中的所述实体中的一个或者多个,从所述多个应用当中排名一些应用;以及
基于所述排名,从所述一些应用当中选择所述预测的应用;
响应于在所述计算装置上复制所述选择的内容的用户动作,使得用于所述预测的应用的用户控件经由所述计算装置的所述显示器显示,其中所述用户控件覆盖从中选择内容的所述计算装置的显示器的一部分,而不引起任何二级用户控件被显示,并且其中每个二级用户控件用于在除了基于排名选择的所述预测的应用之外的所述多个应用中的对应一个应用;
响应于接收到针对用于所述预测的应用的所述用户控件的第一用户输入类型,经由所述计算装置的所述显示器激活所述预测的应用,以基于至少包括在所述选择的内容中的所述一个或者多个实体来自动执行一个或者多个功能,其中针对所述用户控件的所述第一用户输入类型包括针对用于所述预测的应用的所述用户控件的并且在第一持续时间内接收的触摸输入;以及
响应于接收到针对用于所述预测的应用的所述用户控件的第二用户输入类型,使得所述二级用户控件经由所述计算装置的所述显示器与所述用户控件相邻显示,其中针对所述用户控件的所述第二用户输入类型包括针对用于所述预测的应用的所述用户控件的并且在第二持续时间内接收的触摸输入,并且其中所述第二持续时间是比所述第一持续时间更长的持续时间。
16.根据权利要求15所述的系统,其中,所述指令进一步包括用于执行以下操作的指令:
如果所述一个或者多个实体包括所述电子邮件地址,则预测所述预测的应用为电子邮件应用;
如果所述一个或者多个实体包括所述电话号码,则预测所述预测的应用为电话应用;以及
如果所述一个或者多个实体包括所述物理地址,则预测所述预测的应用为地图应用。
17.根据权利要求15所述的系统,其中,用于预测所述预测的应用的所述指令进一步包括用于执行以下操作的指令:
确定所述一个或者多个实体中一些实体是否相关;
如果所述一些实体相关,则预测搜索应用作为所述预测的应用;以及
如果所述一些实体不相关,则选择所述一些实体中排名最高的实体并且至少部分地基于所述排名最高的实体来预测所述预测的应用。
18.根据权利要求15所述的系统,其中,用于预测所述预测的应用的所述指令进一步包括用于基于所述预测的应用最近被使用来选择所述预测的应用的指令。
19.包括指令的至少一种非暂时性计算机可读介质,所述指令响应于由一个或者多个处理器执行所述指令而使所述一个或者多个处理器执行以下操作:
接收响应于经由计算装置的显示器复制选择的内容的用户动作而发起的控制信号;
分析所述选择的内容以识别包括在所述选择的内容中的一个或者多个实体,其中所述一个或者多个实体包括电子邮件地址、电话号码、或物理地址中的一个或者多个;
基于与所述选择的内容相关联的场境,从多个应用中预测适合粘贴所述选择的内容的预测的应用,
其中,所述场境包括复制所述选择的内容的用户动作被执行的给定应用以及包括在所述选择的内容中的所述实体中的一个或者多个,以及
其中,预测所述预测的应用包括:
至少部分地基于以下两者:复制所述选择的内容的用户动作被执行的所述给定应用以及包括在所述选择的内容中的所述实体中的一个或者多个,从所述多个应用当中排名一些应用;以及
基于所述排名,从所述一些应用当中选择所述预测的应用;
响应于在所述计算装置上复制所述选择的内容的用户动作,使得用于所述预测的应用的用户控件经由所述计算装置的所述显示器显示,其中所述用户控件覆盖从中选择内容的所述计算装置的显示器的一部分,而不引起任何二级用户控件被显示,并且其中每个二级用户控件用于在除了基于排名选择的所述预测的应用之外的所述多个应用中的对应一个应用;
响应于接收到针对用于所述预测的应用的所述用户控件的第一用户输入类型,经由所述计算装置的所述显示器激活所述预测的应用,以基于至少包括在所述选择的内容中的所述一个或者多个实体来自动执行一个或者多个功能,其中针对所述用户控件的所述第一用户输入类型包括针对用于所述预测的应用的所述用户控件的并且在第一持续时间内接收的触摸输入;以及
响应于接收到针对用于所述预测的应用的所述用户控件的第二用户输入类型,使得所述二级用户控件经由所述计算装置的所述显示器与所述用户控件相邻显示,其中针对所述用户控件的所述第二用户输入类型包括针对用于所述预测的应用的所述用户控件的并且在第二持续时间内接收的触摸输入,并且其中所述第二持续时间是比所述第一持续时间更长的持续时间。
CN202110683929.9A 2016-12-30 2017-09-27 场境粘贴目标预测 Active CN113553116B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201662440835P 2016-12-30 2016-12-30
US62/440,835 2016-12-30
US15/418,168 2017-01-27
US15/418,168 US10514833B2 (en) 2016-12-30 2017-01-27 Contextual paste target prediction
CN201710889268.9A CN108279931B (zh) 2016-12-30 2017-09-27 场境粘贴目标预测

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN201710889268.9A Division CN108279931B (zh) 2016-12-30 2017-09-27 场境粘贴目标预测

Publications (2)

Publication Number Publication Date
CN113553116A CN113553116A (zh) 2021-10-26
CN113553116B true CN113553116B (zh) 2024-07-12

Family

ID=

Similar Documents

Publication Publication Date Title
CN108279931B (zh) 场境粘贴目标预测
US11057333B2 (en) Incorporating selectable application links into message exchange threads
CN109154935B (zh) 一种用于分析用于任务完成的捕获的信息的方法、系统及可读存储设备
US20190171339A1 (en) Method, system, and apparatus for executing an action related to user selection
CN108369600B (zh) web浏览器扩展
US10601755B2 (en) Incorporating selectable application links into conversations with personal assistant modules
CN110462615B (zh) 增强的粘贴板使用的技术
CN105045800A (zh) 信息搜索系统和方法
JP2013512506A (ja) クイックアクセスユーティリティ
EP3942490B1 (en) Enhanced task management feature for electronic applications
CN106775711B (zh) 针对联系人的信息处理方法、设备和计算机可读存储介质
CN113553116B (zh) 场境粘贴目标预测
US10289741B2 (en) Using relevant objects to add content to a collaborative repository
CA2842031A1 (en) Method, system, and apparatus for executing an action related to user selection
WO2021025757A1 (en) Recognizing problems in productivity flow for productivity applications
WO2022251130A1 (en) Linking to a search result

Legal Events

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