相关申请案
本申请要求2017年10月30日递交的发明名称为“基于移动设备上下文简化先前已执行任务的重复执行的装置和方法”的第15/798,013号的美国非临时专利申请案的在先申请优先权,该在先申请的全部内容以引入的方式并入本文本中。
本发明涉及在应用程序中执行任务,更具体地,涉及使用户可访问应用程序任务以启动任务执行的用户界面(userinterface,ui)。
背景技术:
通常,当移动设备的用户希望在应用程序中执行特定任务时,用户必须浏览特定于该应用程序的ui以访问应用程序的特定ui,用户可以通过该特定ui配置和启动任务。例如,为了首先在用户的移动设备上打开应用程序的主页ui,用户可能需要首先在移动设备的移动ui上选择代表该应用程序的图标。然后,用户可能需要选择主页ui中的菜单项或链接,以导航到应用程序中用户可以用来配置和启动任务的特定ui。可能还需要在应用程序的多个ui中重复选择该菜单项或链接,以导航到应用程序中用户可以用来配置和启动任务的特定ui。
因此,每次用户想要启动任务时,通常都需要在应用程序ui中重复前述导航过程。更甚者,即使用户希望使用相同的配置来重复任务,用户也可能需要在启动任务之前通过该特定ui来输入任务的配置信息。
技术实现要素:
本发明提供了一种设备,用于基于移动设备的当前上下文在应用程序中重复执行先前已执行的任务。所述设备包括一个包含指令的非瞬时性内存存储器,以及与所述存储器通信的一个或多个处理器,其中,所述一个或多个处理器执行所述指令以监控通过移动设备使用应用程序执行任务的情况。所述一个或多个处理器还执行所述指令以通过与所述应用程序的所述使用相关联的用户界面(userinterface,ui)确定所述任务的配置,所述任务通过根据所述ui指定的所述配置来执行。所述一个或多个处理器进一步执行所述指令以识别所述移动设备的上下文,所述上下文包括所述移动设备的一个或多个条件,在所述条件下,所述移动设备的用户激活所述应用程序以执行所述任务。所述一个或多个处理器再进一步执行所述指令以跟踪所述移动设备的当前上下文,所述当前上下文包括所述移动设备运行的一个或多个条件;以及确定所述上下文与所述当前上下文之间的相关性。响应于所述确定的相关性,所述一个或多个处理器还执行所述指令以通过所述移动设备呈现移动ui,以便通过所述移动ui使用所述配置重复执行所述任务,而无需激活与所述应用程序的所述使用相关联的至少一个所述ui。
本发明还提供了一种计算机实施方法,用于基于移动设备的当前上下文在应用程序中重复执行先前已执行的任务。监控通过移动设备使用应用程序执行任务的情况。通过与所述应用程序的所述使用相关联的用户界面(userinterface,ui)确定所述任务的配置,所述任务通过根据所述ui指定的所述配置来执行。识别所述移动设备的上下文,所述上下文包括所述移动设备的一个或多个条件,在所述条件下,所述移动设备的用户激活所述应用程序以执行所述任务。跟踪所述移动设备的当前上下文,所述当前上下文包括所述移动设备运行的一个或多个条件;以及确定所述上下文与所述当前上下文之间的相关性。响应于所述确定的相关性,通过所述移动设备呈现移动ui,以便通过所述移动ui使用所述配置重复执行所述任务,而无需激活与所述应用程序的所述使用相关联的至少一个所述ui。
还提供了一种存储计算机指令的非瞬时性计算机可读介质,所述指令在由一个或多个处理器执行时使得所述一个或多个处理器执行步骤,从而能够基于移动设备的当前上下文在应用程序中重复执行先前已执行的任务。所述步骤包括:监控通过移动设备使用应用程序执行任务的情况。所述步骤还包括:通过与所述应用程序的所述使用相关联的用户界面(userinterface,ui)确定所述任务的配置,所述任务通过根据所述ui指定的所述配置来执行。所述步骤还包括:识别所述移动设备的上下文,所述上下文包括所述移动设备的一个或多个条件,在所述条件下,所述移动设备的用户激活所述应用程序以执行所述任务。所述步骤包括:跟踪所述移动设备的当前上下文,所述当前上下文包括所述移动设备运行的一个或多个条件;以及确定所述上下文与所述当前上下文之间的相关性。所述步骤还包括:响应于所述确定的相关性,通过所述移动设备呈现移动ui,以便通过所述移动ui使用所述配置重复执行所述任务,而无需激活与所述应用程序的所述使用相关联的至少一个所述ui。
可选地,在上述任一实施例中,所述应用程序是安装在所述移动设备上的移动应用程序。
可选地,在任一前述实施例中,所述应用程序为以下项之一:消息应用程序、多媒体播放器、商家商店、以及交通预订应用程序。
可选地,在任一前述实施例中,与所述应用程序的所述使用相关联的所述ui是所述应用程序的ui,所述用户通过所述ui导航以指定所述配置并使用所述配置启动所述任务的执行。
可选地,在任一前述实施例中,在所述用户的配置文件中存储携带所述移动设备的所述配置和所述上下文的任务指示,其中,访问所述用户的所述配置文件以识别所述上下文,从而确定所述移动设备的所述上下文与所述当前上下文之间的相关性。
可选地,在任一前述实施例中,所述移动设备的所述上下文包括以下项之一:所述移动设备的位置,以及所述移动设备指示的时间。
可选地,在任一前述实施例中,确定所述上下文与所述当前上下文之间的相关性包括确定所述当前上下文与所述上下文之间的差异是否在预定义的阈值内;当所述当前上下文与所述上下文之间的差异在所述预定义的阈值内时,通过所述移动设备呈现所述移动ui。
可选地,在上述任一实施例中,所述移动ui呈现在所述移动设备的主界面上。
可选地,在上述任一实施例中,通过所述移动设备呈现的所述移动ui是一个图标,当所述用户选择所述图标时,会使用所述配置重复执行所述任务,而无需激活与所述应用程序的所述使用相关联的至少一个所述ui。
可选地,在上述任一实施例中,监控通过所述移动设备使用附加应用程序来执行附加任务的情况;通过与所述附加应用程序的所述使用相关联的附加用户界面(userinterface,ui)确定所述附加任务的配置,所述附加任务通过根据所述附加ui指定的所述配置来执行。此外,识别所述移动设备的附加上下文,所述附加上下文包括所述移动设备的一个或多个条件,在所述条件下,所述移动设备的所述用户激活所述附加应用程序以执行所述附加任务。此外,确定所述附加上下文与所述当前上下文之间的附加相关性。此外,结合所述移动ui并响应于所述确定的附加相关性,通过所述移动设备呈现附加移动ui,以便通过所述附加移动ui使用所述附加任务的所述配置重复执行所述附加任务,而无需激活与所述附加应用程序的所述使用相关联的至少一个所述附加ui。
为此,在一些可选实施例中,上述设备和/或方法的一个或多个上述特征可基于移动设备的当前上下文来简化先前已执行任务的重复执行。具体而言,只有当该先前已执行任务与所述移动设备的当前上下文相关时,才能提供特定的移动ui以重复执行所述任务。这样可确保在适当时间为用户呈现特定于该任务的移动ui。此外,通过呈现移动ui以使该先前已执行任务重复执行,用户可以重复该先前已执行任务,而无需再次使用应用程序的一个或多个或全部ui来配置和/或启动该任务。因此,移动ui可以简化用户为了重复执行该任务而需采取的操作。应注意,上述潜在优点仅用于说明目的,不应解释为以任何方式造成限制。
附图说明
图1示出了根据一实施例的基于移动设备的当前上下文在应用程序中重复执行先前已执行任务的方法。
图2a示出了根据一实施例的基于移动设备的当前上下文在应用程序中重复执行先前已执行任务的系统。
图2b示出了根据一实施例的移动设备架构,该架构包括基于移动设备的当前上下文在应用程序中重复执行先前已执行任务的推荐应用程序。
图3示出了根据另一实施例的包括推荐应用程序的输入和输出的通信流,该推荐应用程序能够在用户应用程序内重复执行先前已执行任务。
图4示出了根据另一实施例的呈现移动ui的移动设备的主屏幕,这些移动ui用于重复与移动设备的当前上下文相关联的先前已执行任务。
图5示出了根据另一实施例的提供图4中一个移动ui的详细信息的推荐ui。
图6示出了根据另一实施例的动态用户配置文件。
图7示出了根据另一实施例的监控使用用户应用程序执行任务的情况的流程图。
图8示出了根据又一实施例的包括推荐应用程序的输入和输出的通信流,该应用程序能够在与基于web的服务相关联的用户应用程序中重复执行先前已执行任务。
图9示出了根据一实施例的基于移动设备的当前上下文在用户应用程序中重复执行先前已执行任务的用例的流程图。
图10示出了根据一实施例的基于移动设备的当前上下文在用户应用程序中重复执行先前已执行任务的用例的流程图。
图11示出了根据一实施例的基于移动设备的当前上下文在用户应用程序中重复执行先前已执行任务的流程图。
图12为根据一实施例的网络架构图。
图13为根据一实施例的示例性系统图。
具体实施方式
图1示出了根据一实施例的基于移动设备的当前上下文在应用程序中重复执行先前已执行任务的方法100。在一实施例中,方法100可以由移动设备执行。例如,方法100可以通过安装在移动设备上并在移动设备上执行的推荐应用程序来执行,例如下文参考后续附图进一步详细描述的推荐应用程序。
如操作102所示,监控通过移动设备使用应用程序执行任务的情况。在本说明书的上下文中,应用程序与上述推荐应用程序分开。在一实施例中,应用程序可以是安装在移动设备上的移动应用程序(例如第三方应用程序)或系统应用程序。在另一实施例中,应用程序可以是位于远离移动设备的云上的web应用程序,其中,使用网络来实现通过移动设备使用web应用程序执行任务。
在一些示例性实施例中,应用程序可以是消息应用程序(例如电子邮件、短消息服务(shortmessageservice,sms)等)、媒体播放器(例如,用于播放视频和/或音频)、商家商店(例如,用于购买产品和/或服务)、交通预订应用程序(例如,用于交通预订)等。因此,可以监控使用这些应用程序执行各种任务的情况,例如发送消息、播放媒体、进行购买、进行交通预订等。
此外,如操作104所示,通过与应用程序的使用相关联的用户界面(userinterface,ui)确定任务的配置,该任务通过根据ui指定的配置来执行。具体而言,用户可以通过与应用程序的使用相关联的ui指定任务的配置,并且可以使用这些指定的配置来执行任务。可通过监控操作102所述的应用程序的使用来确定配置。
在一实施例中,与应用程序的使用相关联的ui可以是应用程序的如下ui:用户通过这些ui进行导航以指定任务的配置,并进一步使用这些配置启动任务的执行。这些配置可能完全取决于任务本身,用户可以通过ui中包含的可配置选项、设置等输入这些配置,以使用户可以自定义该任务的操作。
例如,当应用程序是交通预订应用程序且任务是汽车预订服务时,配置可能包括取车地点、取车时间、还车地点、预订的汽车类型等。又例如,当应用程序是消息应用程序且任务是发送消息(例如,短消息)时,配置可能包括消息接收者的标识等。再例如,当应用程序是媒体播放器且任务是播放视频时,配置可能包括要播放的特定视频的选择。
此外,如操作106所示,识别移动设备的上下文,该上下文包括移动设备的一个或多个条件,在这些条件下,移动设备的用户激活应用程序以执行任务。因此,在移动设备的用户激活应用程序以执行任务的同时,可识别移动设备的上下文,并且可以选择性地结合监控操作102所述的应用程序的使用来识别。
如上所述,所识别的移动设备的上下文包括移动设备的一个或多个条件。这些条件可以是方法100预先配置以便识别的特定类型。例如,需要识别的条件类型可以包括移动设备位置、一天中的某个时间、一周中的某一天、附加应用程序的并发使用、使用移动设备的用户的角色等。结合这些示例,移动设备的激活应用程序以执行任务的一个或多个条件可以包括当激活应用程序以执行任务时移动设备的特定位置、当激活应用程序以执行任务时移动设备的系统所指示的一天中的某个时间和/或一周中的某一天、当激活应用程序以执行任务时(例如由用户)通过移动设备使用的附加应用程序,等等。
可选地,一旦在操作102至106中识别出任务的执行、任务的配置以及移动设备的相关上下文,方法100就可将携带移动设备的配置和上下文的任务指示存储在用户的配置文件中。配置文件可能是动态的,因为配置文件可能会在上述信息被识别后进行更新以存储这些信息此外,配置文件可位于移动设备的本地存储器中。
此外,如操作108所示,跟踪移动设备的当前上下文,当前上下文包括移动设备运行的一个或多个条件。具体而言,可以跟踪当前上下文,以便在如操作102所述使用应用程序执行任务之后的某个时间点识别移动设备运行的一个或多个条件。这些条件的类型可以与上文结合操作106描述的条件的类型相同,具体而言,方法100可以预先配置以跟踪移动设备运行的这些类型的条件。为此,由于操作108,可识别移动设备运行的一个或多个条件。
此外,如操作110所示,确定上下文与当前上下文之间的相关性。可选地,如果上下文已存储在用户的配置文件中,则可以访问用户的配置文件来识别上下文,以确定移动设备的上下文与当前上下文之间的相关性。当然,为了确定移动设备的上下文与当前上下文之间的相关性,可以从任何存储位置识别或检索上下文。
应注意,可以使用任何所需的算法或计算机进程来确定相关性,该算法或计算机进程能够比较上下文和当前上下文,以确定上下文与当前上下文之间存在预定义的相似度。例如,在一实施例中,确定上下文与当前上下文之间的相关性可以包括确定上下文与当前上下文之间的差异在预定义的阈值内。
此外,如操作112所示,响应于所确定的相关性,通过移动设备呈现移动ui,以便通过该移动ui使用配置重复执行任务,而无需激活与应用程序的使用相关联的至少一个ui。例如,移动ui可以是一个图标,当用户选择该图标时,可使用配置重复执行任务。因此,用户可以通过移动ui使用上述配置重复执行任务,而无需用户激活(例如打开、访问、交互等)与应用程序的使用相关联的至少一个或全部ui。
例如,用户最初可以通过使用与应用程序相关联的ui(例如,通过打开ui、访问ui和与ui交互)来配置和启动任务。此使用情况可在操作102中监控。然后,当在操作112中呈现移动ui时,移动ui可以作为具有配置的任务的快捷方式,这样用户就可以通过移动ui启动任务,而不必再次使用与应用程序相关联的至少一个或全部ui。
在一实施例中,移动ui可以呈现在移动设备的主屏幕(ui)上。当然,移动ui可以呈现在有别于与应用程序的使用相关联的ui的任何其它屏幕(ui)上。因此,可选择在不激活应用程序的任何ui(即,作为应用程序的一部分而包含的任何ui)的情况下呈现移动ui,并且在任何情况下都可允许用户重复特定任务,而无需再次浏览应用程序的与先前任务执行相关联的相同ui。
为此,在一些可选实施例中,上述设备和/或方法的一个或多个上述特征能够基于移动设备的当前上下文在应用程序中重复执行先前已执行任务。具体而言,如上文所述,仅当特定的移动ui与移动设备的当前上下文相关时,才可提供该特定的移动ui以重复相同的先前已执行任务(而无需再次访问应用程序的ui)。这样可确保在适当时间为用户呈现特定于该任务的移动ui。此外,通过呈现移动ui以使该先前已执行任务重复执行,用户可以重复该先前已执行任务,而无需再次使用应用程序的ui来配置和/或启动该任务。应注意,上述潜在优点仅用于说明目的,不应解释为以任何方式造成限制。
此外,在一些实施例中,可以对多个不同的应用程序重复方法100。例如,可监控通过移动设备使用附加应用程序来执行附加任务的情况(例如,以上述操作102描述的方式来监控)。此外,通过与附加应用程序的使用相关联的附加用户界面(userinterface,ui)确定附加任务的配置,通过根据附加ui指定的配置来执行附加任务(例如,以上述操作104描述的方式)。此外,还可以识别移动设备的附加上下文,附加上下文包括移动设备的一个或多个条件,在这些条件下,移动设备的用户激活附加应用程序以执行附加任务(例如,以上述操作106描述的方式),并且可以确定附加上下文与当前上下文之间的附加相关性(例如,以上述操作108描述的方式)。另外,响应于所确定的附加相关性,可通过移动设备结合操作110中所呈现的移动ui来呈现附加移动ui,通过该附加移动ui使用附加任务的配置重复执行附加任务,而无需激活与附加应用程序的使用相关联的至少一个附加ui(例如,以上述操作110描述的方式)。
现在将阐述关于各种可选架构和用途的更多说明性信息,在这些架构和用途中,根据用户需求,可以或可以不实现上述方法100。例如,将描述可进一步增强上述方法100以基于移动设备的当前上下文在应用程序中重复执行先前已执行任务的各实施例。
图2a示出了根据一实施例的基于移动设备的当前上下文在应用程序中重复执行先前已执行任务的系统200。可选地,系统200可以使用任何先前和/或之后的附图和/或其说明中所阐述的任何一个或多个实施例的一个或多个特征来实现。然而,应了解,系统200可在其它合适的环境中实现。
如图所示,提供了一种以应用程序使用监控模块202为形式的应用程序使用监控构件,用于:监控通过移动设备使用应用程序执行任务;通过与使用相关联的用户界面(userinterface,ui)确定任务的配置,任务通过根据ui指定的配置来执行;以及识别移动设备的上下文,上下文包括移动设备的一个或多个条件,在这些条件下,移动设备的用户激活应用程序以执行任务(例如,参见图1的操作102至106)。在各实施例中,应用程序使用监控模块202可包括但不限于至少一个处理器(稍后描述)和控制该处理器的任何软件,和/或任何其它具有上述功能的电路。
还包括以相关性确定模块204为形式、与应用程序使用监控模块202通信的相关性确定构件,用于:跟踪移动设备的当前上下文,当前上下文包括移动设备运行的一个或多个条件;以及确定上下文与当前上下文之间的相关性(例如,参见图1的操作108至110)。在各实施例中,相关性确定模块204可包括但不限于至少一个处理器(稍后描述)和控制该处理器的任何软件,和/或任何其它具有上述功能的电路。
还包括以移动ui呈现模块206为形式、与相关性确定模块204通信的移动ui呈现构件,用于:响应于所确定的相关性,通过移动设备呈现移动ui,以便通过该移动ui使用配置重复执行任务,而无需激活与应用程序的使用相关联的其中至少一个ui(例如,参见图1的操作112)。在各实施例中,相关性确定模块204可包括但不限于至少一个处理器(稍后描述)和控制该处理器的任何软件,和/或任何其它具有上述功能的电路。
将阐述关于上文所述不同组件的各种输入/输出的一个可能示例的更多信息。
图2b示出了根据一实施例的具有用于管理在线内容的离线可访问性的智能离线内容管理器的移动设备250架构。可选地,移动设备250可在任何先前和/或之后的附图和/或其说明中所阐述的任何一个或多个实施例的上下文中实现。
在所示实施例中,移动设备250包括以移动设备组件为形式的构件,其描述如下。在各实施例中,这些组件可包括但不限于至少一个处理器(稍后描述)和控制该处理器的任何软件、存储器和/或任何其它具有上述功能的电路。
移动设备250可以是下文参照图12和图13描述的任何用户设备。如图所示,移动设备250的组件包括推荐应用程序252。推荐应用程序252是在移动设备250上执行图1的方法100的软件程序。例如,推荐应用程序252可包括上述图2a中的模块。移动设备250可用于在移动设备开机时自动执行推荐应用程序252,或者移动设备250可用于根据移动设备250的用户的命令执行推荐应用程序252。
移动设备250的组件还包括用户应用程序254a至254n,移动设备250的用户能够使用每个用户应用程序来执行任务,如上文结合图1的方法100所述。例如,用户应用程序254a至254n中的每一个都包括ui,用户可以通过ui为任务指定配置,并可以使用指定的配置启动任务的执行。响应于通过用户应用程序254a至254n之一的ui来启动的任务,用户应用程序254a至254n随后可以根据指定的配置执行该任务。
应注意,虽然本实施例中将用户应用程序254a至254n示为移动设备250的组件,但也考虑了其它实施例,其中用户应用程序254a至254n中的一个或多个可以安装在云计算环境上(例如,安装在远离移动设备250的服务器上)并通过云计算环境来执行。在一实施例中,当用户应用程序254a至254n中的一个或多个在云计算环境中执行时,移动设备250可包括作为用于连接远程用户应用程序254a至254n的接口(例如ui、api、web接口等)的组件。
如进一步所示,移动设备250的组件包括存储用户配置文件的存储库256。存储库256可以是数据库、文本文件或内存中能够存储表示用户配置文件的结构化数据的任何其它位置。如图所示,用户配置文件指示用户应用程序254a至254n执行的特定任务,并且可包括用户为这些任务指定的配置。又如图所示,对于所指示的每个任务,用户配置文件存储移动设备250的相应上下文,移动设备在该上下文下激活以执行任务。
为此,用户配置文件可以存储用户使用用户应用程序254a至254n启动的先前任务的历史记录,以及移动设备250的相应上下文。推荐应用程序252可用于监控用户通过移动设备250使用用户应用程序254a至254n的情况(即,为了识别这些用户应用程序254a至254n执行的任务和用户为这些任务指定的配置),并且还可用于跟踪移动设备250的上下文(即,为了识别执行每个任务的特定上下文)。然后,推荐应用程序252可在用户配置文件中存储具有相应配置和相应移动设备上下文的已识别任务。
在另一实施例中,用户配置文件还可存储其他用户可能通过其它移动设备(未示出)发起的先前任务的历史记录,特别是当一个或多个用户应用程序254a至254n在上述云计算环境中执行时。在本实施例中,其它移动设备可以通过如本系统250中所示的相同方式来配置,因此可通过如本文公开的相同方式进行操作。然后,其它移动设备可以与本说明书中的移动设备250(通过网络)共享其用户配置文件的内容(即,其他用户启动的先前任务的历史记录)。
图3示出了根据另一实施例的包括推荐应用程序的输入和输出的通信流300,该推荐应用程序能够在用户应用程序中重复执行先前已执行任务。可选地,通信流300可在任何先前和/或之后的附图和/或其说明中所阐述的任何一个或多个实施例的上下文中实现。
如图所示,推荐应用程序302通过用户应用程序305向用户312提供内容和服务304。内容可以是视频、新闻、音乐等网络内容和/或用户移动设备本地存储的内容,例如联系人信息。此外,服务可以是web服务,例如旅行预订服务和/或用户的移动设备能够在本地提供的服务。此外,所示示例中的用户应用程序305包括电话呼叫应用程序、信使应用程序和汽车服务应用程序。
推荐应用程序302允许用户312通过用户的移动设备在用户应用程序305中重复特定任务,以访问内容和服务304,如上文参考前面的图1至图2所述。推荐应用程序302确定具有特定配置的任务308a至308c,这些任务先前已通过用户应用程序305执行并且与用户312的移动设备的当前上下文相关,目的是向用户312推荐任务308a至308c。然后,推荐应用程序302为任务308a至308c中的每个任务呈现移动ui,以重复执行任务308a至308c。移动ui不同于与用户应用程序305的使用相关联的ui。
在所示的具体示例中,推荐应用程序302基于移动设备的当前上下文(例如,一天中的某个时间等)确定向用户312推荐用户应用程序305中的第一用户应用程序的第一任务308a,其中第一任务308a是打电话给特定联系人。例如,推荐应用程序302可确定用户312在一周中特定某一天的特定时间段内定期执行第一任务308a。因此,在一周中的那一天和那个特定时间段内,推荐应用程序302可向用户312推荐第一任务308a。
推荐的第一任务308a由推荐应用程序302通过第一移动ui呈现给用户312。在一实施例中,第一移动ui可以呈现在移动ui的主屏幕上。当用户312通过移动设备选择推荐应用程序302呈现的第一移动ui时,第一任务308a在第一用户应用程序中自动启动。
在所示的具体实施例中,在第一用户应用程序中启动第一任务308a包括允许用户312提供第一输入310a,即,选择移动设备存储的并且执行第一任务308a所需的联系人电话号码。一旦提供了第一输入310a,移动设备就可通过第一用户应用程序执行第一任务308a。当然,作为另一个选择,第一任务308a可以自动启动,而无需用户312输入其它内容,这样,在用户312选择第一移动ui后,移动设备可以拨打特定联系人的电话。在任何情况下,用户312使用第一移动ui来执行第一任务308a都允许用户312在不浏览第一用户应用程序(包括第一用户应用程序的主页ui306a)的情况下启动第一任务308a。
在所示的另一具体示例中,推荐应用程序302基于移动设备的当前上下文(例如,一天中的某个时间等)确定向用户312推荐用户应用程序305中的第二用户应用程序的第二任务308b,其中第二任务308b是向特定联系人发送消息。例如,推荐应用程序302可确定用户312在一周中特定某一天的特定时间段内定期执行第二任务308b。因此,在一周中的那一天和那个特定时间段内,推荐应用程序302可向用户312推荐第二任务308b。
推荐的第二任务308b由推荐应用程序302通过第二移动ui呈现给用户312。在一实施例中,第二移动ui可以(例如,和第一移动ui一起)呈现在移动ui的主屏幕上。当用户312通过移动设备选择推荐应用程序302呈现的第二移动ui时,第二任务308b在第二用户应用程序中自动启动。
在所示的具体实施例中,在第二用户应用程序中启动第二任务308b包括允许用户312提供第二输入310b,即,执行第二任务308b所需的内容(例如文本)。一旦提供了第二输入310b,移动设备就可通过第二用户应用程序执行第二任务308b。当然,作为另一种选择,第二任务308b可以自动启动,而无需用户312输入其它内容,这样,在用户312选择第二移动ui时,移动设备可以向特定联系人发送消息,该消息包含通过预定配置为第二任务308b指定的内容。在任何情况下,用户312使用第二移动ui来执行第二任务308b都允许用户312在不浏览第二用户应用程序(包括第二用户应用程序的主页ui306b)的情况下启动第二任务308a。
在所示的又一具体示例中,推荐应用程序302基于移动设备的当前上下文(例如,一天中的某个时间等)确定向用户312推荐用户应用程序305中的第三用户应用程序的第三任务308c,其中第三任务308c是预订汽车服务。例如,推荐应用程序302可确定用户312在一周中特定某一天的特定时间段内定期执行第三任务308c。因此,在一周中的那一天和那个特定时间段内,推荐应用程序302可向用户312推荐第三任务308c。
推荐的第三任务308c由推荐应用程序302通过第三移动ui呈现给用户312。在一实施例中,第三移动ui可以(例如,和第一和/或第二移动ui一起)呈现在移动ui的主屏幕上。当用户312通过移动设备选择推荐应用程序302提供的第三移动ui时,第三任务308c在第三用户应用程序中自动启动。
在所示的具体实施例中,在第三用户应用程序中启动第三任务308c包括允许用户312提供第三输入310c,即,执行第三任务308c所需的期望车辆类型。一旦提供了第三输入310c,移动设备就可通过第三用户应用程序执行第三任务308c。当然,作为另一种选择,第三任务308c可以自动启动,而无需用户312输入其它内容,这样,在用户312选择第三移动ui后,移动设备可以预订汽车服务,其中汽车类型通过第三任务308c的预定配置指定。在任何情况下,用户312使用第三移动ui来执行第三任务308c都允许用户312启动第三任务308c,而无需浏览第三用户应用程序,包括第三用户应用程序的主页ui306c。
图4示出了根据另一实施例的呈现移动ui的移动设备的主屏幕400,这些移动ui用于重复与移动设备的当前上下文相关联的先前已执行任务。可选地,主屏幕400可在任何先前和/或之后的附图和/或其说明中所阐述的任何一个或多个实施例的上下文中实现。例如,主屏幕400可以呈现上文结合图3所述的移动ui。
如图所示,移动设备的主屏幕400呈现可通过移动设备访问的多个用户应用程序的代表性ui402或可选图标。移动设备可以安装在用户设备上(因此可在用户设备上执行),也可以是在由用户设备启动后可在云中执行的web应用程序。在所示示例中,消息应用程序、电话应用程序、互联网浏览器、电子邮件应用程序和ui使用代表性ui402访问其它用户应用程序的其它代表性ui(未在主屏幕400上示出)。
移动设备的用户可以通过代表性ui402访问用户应用程序以使用此用户应用程序。具体而言,当移动设备的用户选择代表性ui402中的一个时,移动设备向用户呈现所代表的用户应用程序的主页ui。然后,用户可以从主页ui导航到所代表的用户应用程序的任务特定ui,以配置和启动特定任务。此导航可与上文结合图3所述的导航类似,当用户通过推荐应用程序呈现的移动ui访问任务时,无需进行上述图3中的导航。
又如图所示,移动设备的主屏幕400呈现与推荐应用程序基于移动设备的当前上下文推荐的多个任务(具有预定义配置)相对应的移动ui404。当移动设备的用户选择移动ui404中的一个时,移动设备通过关联的用户应用程序启动相应的任务。因此,移动ui404不同于用户应用程序的代表性ui402,并且可以通过移动设备主屏幕400上的推荐应用程序来呈现。在所示的示例中,移动ui404可用来启动任务,例如呼叫特定联系人、向特定联系人发送消息、预订汽车服务和播放音乐播放列表。
图5示出了根据另一实施例的提供图4中一个移动ui404的详细信息的推荐ui500。当移动设备的用户右击移动ui404中的一个以显示下拉菜单并从下拉菜单中选择一项以查看推荐ui500时,可通过移动设备呈现推荐ui500。推荐ui500提供用户选择的移动ui404所代表的任务的信息。
该信息可以包括运行移动设备以呈现移动ui404的条件。该信息还可以包括任务的设定配置。此外,该信息可以包括用户可选择的任务的备选配置。
在所示示例中,当移动设备的用户右击图4中代表预订汽车服务这个特定任务的移动ui404,并从结果下拉列表中选择一项以查看该特定任务的推荐ui500时,则通过移动设备呈现推荐ui500。该推荐ui500提供了有关预订汽车服务这个任务的信息,该信息指示运行移动设备以呈现移动ui404的条件502。
推荐ui500提供的信息还指示任务的配置504。这些配置包括任务的设定配置(即,在所示的本例中是通过移动ui404推荐的第一汽车服务或服务提供商),以及任务的备选配置(即,在所示的本例中是第二汽车服务或服务提供商),用户可以通过推荐ui500选择任务的备选配置来替代设定配置。指示配置504的信息可以显示设定配置和备选配置的置信度(即显示为x%和y%),其中置信度基于用户(以及可选地其他用户)过去为该任务使用的各配置的数量和/或用户应用程序执行任务所需的web服务的可用性。设定配置可以是置信度较高的配置,而备选配置可以是置信度较低的配置。
图6示出了根据另一实施例的动态用户配置文件600。可选地,动态用户配置文件600可在任何先前和/或之后的附图和/或其说明中所阐述的任何一个或多个实施例的上下文中实现。例如,可以生成或者由推荐应用程序接收动态用户配置文件600。
如图所示,动态用户配置文件600从各种源数据生成,这些源数据可以通过移动设备监控多个不同的数据源来识别。因此,动态用户配置文件600中的条目,如图2b中第256项所示,可从源数据中导出。动态用户配置文件600可基于来自这些不同数据源的新数据连续或周期性地进行更新。此外,虽然源数据是结合为其生成动态用户配置文件600的用户来描述的,但还考虑了其它实施例,其中源数据也可以基于其他用户的活动来收集。
在一实施例中,源数据可以包括电话应用程序的使用。例如,动态用户配置文件600可存储用户先前激活了手机应用程序以便执行的任务的指示,以及用户设置的这些任务的配置,还有执行任务的移动设备上下文。例如,这些任务可以包括打电话给特定联系人。
在另一实施例中,源数据可以包括内容共享模式。例如,动态用户配置文件600可存储用户先前激活了内容共享应用程序(例如社交媒体应用程序)以便执行的任务的指示,以及用户设置的这些任务的配置,还有执行任务的移动设备上下文。例如,这些任务可以包括共享(例如,发布、传输等)内容,以供某些用户组(例如,通过facebook等)访问,或供某些用户(例如,通过短信、微信等)访问。
在又一实施例中,源数据可以包括浏览历史。例如,动态用户配置文件600可存储用户先前激活了互联网浏览器以便执行的任务的指示,以及用户设置的这些任务的配置,还有执行任务的移动设备上下文。例如,这些任务可以包括访问某些网页。
在另一实施例中,源数据包括应用程序通知的使用、应用程序安装/卸载活动以及应用程序放置和屏幕位置。例如,动态用户配置文件600可以基于此源数据对上述任务进行不同的加权。然后可以使用权重来对通过推荐应用程序推荐给用户的任务进行优先级排序。例如,对于通过在移动设备的主屏幕上的具有代表性ui的用户应用程序执行的任务,如结合图4所述,赋予这些任务的权重可以比在移动设备的主屏幕上没有代表性ui的其它用户应用程序更大。又例如,已从移动设备卸载的用户应用程序的任务可以从动态用户配置文件600中删除。再例如,当用户将移动设备配置为在特定用户应用程序(例如,传入消息等)中提供特定活动的通知时,赋予这些特定用户应用程序的任务的权重可以比其它应用程序的任务更大。
图7示出了根据另一实施例的监控使用用户应用程序执行任务的情况的流程图700。可选地,流程图700可在任何先前和/或之后的附图和/或其说明中所阐述的任何一个或多个实施例的上下文中实现。例如,可实现流程图700以在图6中的动态用户配置文件600中存储信息。
如图所示,移动设备的用户702可以访问移动设备上提供的应用卡704,以执行用户应用程序的任务706。应用卡704可以是静态地代表任务706的第三方应用程序ui,用户可选择该ui来激活用户应用程序以呈现应用程序的ui,供用户在配置和启动任务706时使用。例如,应用卡704可以呈现在移动设备的主屏幕上或用户配置的移动设备的任何其它屏幕上。
在另一实施例中,用户702可以通过移动设备生成和呈现的通知708来执行任务710。例如,用户可以配置移动设备以生成和呈现用户应用程序的某些活动的通知,例如通过消息应用程序接收的消息。用户702可以选择通知以打开用户应用程序的ui,该ui允许用户配置和启动任务710。
在又一实施例中,用户702可以通过用户应用程序的主页ui712执行任务710。例如,用户702可以为用户应用程序选择一个代表性ui,以打开用户应用程序的主页ui712。然后,用户可以浏览用户应用程序的ui以打开用户应用程序的上述ui,该ui允许用户配置和启动任务710。
执行任务706或任务710时,指示该任务的信息存储在动态用户配置文件714中。此信息可以包括任务指示、任务配置和执行任务的移动设备上下文。可选地,动态用户配置文件714中还可以指示使用ui704、708、712中的哪一个来启动任务,例如,从而确定任务的权重以进行优先级排序。
图8示出了根据又一实施例的包括推荐应用程序的输入和输出的通信流800,该应用程序能够在与基于web的服务相关联的用户应用程序中重复执行先前已执行任务。可选地,通信流800可在任何先前和/或之后的附图和/或其说明中所阐述的任何一个或多个实施例的上下文中实现。例如,通信流800可以在移动设备和云计算环境中实现。
如图所示,在移动设备上执行的推荐应用程序802从移动设备接收输入,输入的形式为来自动态用户配置文件804以及移动设备当前上下文的数据。在一实施例中,推荐应用程序802可以使用移动设备的当前上下文搜索动态用户配置文件804,以确定动态用户配置文件804中所指示的任务中是否有任何任务与移动设备的当前上下文相关。
推荐应用程序802还接收来自云计算环境的输入,尤其是来自服务提供商代理808的输入,该代理指示各种服务提供商810a至810c通过云计算环境提供的各种服务的可用性,通过这些服务可以执行所确定的任务。在一实施例中,对于被推荐应用程序802确定为与移动设备的当前上下文相关联的任务,推荐应用程序802可以查询服务提供商代理808以了解不同服务提供商810a至810c的服务的可用性,通过这些服务可以执行任务。
基于推荐应用程序802从服务提供商代理808接收到的服务可用性指示,推荐应用程序802确定不同服务的置信度812,通过这些服务可以执行任务。置信度也可以根据动态用户配置文件804所指示的其它信息确定,例如任务与移动设备当前上下文的相关性程度、用户使用不同服务执行任务的频率和/或服务的特征(例如执行任务的及时性、执行任务的成本等)。
然后,推荐应用程序802可以使用移动ui向用户推荐任务,用户可以通过移动ui启动任务的执行。该移动ui可用于通过用户应用程序使用具有最高置信水平的服务来启动任务的执行。如上所述,参考图5,用户还可以通过移动ui访问其它置信度较低的可用服务的信息。
图9示出了根据一实施例的基于移动设备的当前上下文在用户应用程序中重复执行先前已执行任务的用例的流程图900。可选地,流程图900可在任何先前和/或之后的附图和/或其说明中所阐述的任何一个或多个实施例的上下文中实现。例如,流程图900可通过上述推荐应用程序来实现。
如操作902所示,用户使用第一用户应用程序(app_01)执行任务(即购物)。然后,推荐应用程序在稍后的时间点通过移动ui推荐第二用户应用程序(app_02)用于购物,如操作904所示。在决定906中确定用户是否拒绝了操作904中的推荐。如果确定用户未拒绝推荐(即,用户接受或选择了此推荐以执行购物任务),则将用户带到第二用户应用程序中的购物任务ui,如操作908所示。另外,如910所示更新动态用户配置文件,以反映对推荐的接受程度(例如,增加执行任务的第二用户应用程序的权重)。
但是,如果确定用户拒绝了此推荐(即,用户在一定时间内未接受或选择此推荐,或者用户选择任务的备选配置以使用第一用户应用程序),则如910所示更新动态用户配置文件。具体而言,可以更新动态用户配置文件以增加赋予第一用户应用程序的权重。此外,当确定用户拒绝了此推荐时,推荐应用程序会在稍后的时间点基于更新后的动态用户配置文件来推荐第一用户应用程序用于购物,如操作912所示。
此外,如决定914所示,确定用户是否接受了操作912中的推荐。如果确定用户接受了此推荐,则将用户带到第一用户应用程序中的购物任务ui,如操作908所示。另外,如910所示更新动态用户配置文件,以反映对此推荐的接受程度(例如,增加执行任务的第一用户应用程序的权重)。但是,如果确定用户未接受此推荐,则如910所示更新动态用户配置文件(例如,以降低赋予第一用户应用程序的权重)。
图10示出了根据一实施例的基于移动设备的当前上下文在用户应用程序中重复执行先前已执行任务的用例的流程图1000。可选地,流程图1000可在任何先前和/或之后的附图和/或其说明中所阐述的任何一个或多个实施例的上下文中实现。例如,流程图1000可通过上述推荐应用程序来实现。
如操作1002所示,用户使用第一用户应用程序(app_01)执行任务(即汽车服务预订)。然后,推荐应用程序在稍后的时间点通过移动ui推荐第二用户应用程序(app_02)用于汽车服务预订,如操作1004所示。在决定1006中确定用户是否拒绝了操作1004中的推荐。如果确定用户未拒绝此推荐(即,用户接受或选择了此推荐以执行汽车预订服务),则将用户带到第二用户应用程序中的汽车服务预订ui,如操作1008所示。另外,如910所示更新动态用户配置文件,以反映对此推荐的接受程度(例如,增加执行任务的第二用户应用程序的权重)。
但是,如果确定用户拒绝了此推荐(即,用户在一定时间内未接受或选择此推荐,或者用户选择任务的备选配置以使用第一用户应用程序),则如1010所示更新动态用户配置文件。具体而言,可以更新动态用户配置文件以增加赋予第一用户应用程序的权重。此外,当确定用户拒绝了此推荐时,推荐应用程序将在稍后的时间点基于更新后的动态用户配置文件来推荐第一用户应用程序和第二用户应用程序用于进行汽车服务预订,如操作1012所示。当两个用户应用程序的置信度相等时,可能会发生这种情况。例如,操作1012可以通过提供两个单独的移动ui来完成,每个用户应用程序一个移动ui。
此外,如操作1014所示,用户选择操作1012中提出的推荐之一。作为响应,将用户带到所选用户应用程序中的汽车服务预订任务ui。然后,如1010所示更新动态用户配置文件以反映用户的选择。
图11示出了根据一实施例的基于移动设备的当前上下文在用户应用程序中重复执行先前已执行任务的流程图1100。可选地,流程图1100可在任何先前和/或之后的附图和/或其说明中所阐述的任何一个或多个实施例的上下文中实现。例如,流程图1100可通过上述推荐应用程序来实现。
如操作1102所示,收集用户数据,例如应用程序的使用数据。然后,将用户数据存储在动态用户配置文件中,如操作1104所示。具体而言,使用应用程序执行的任务存储在动态用户配置文件中,与这些任务的配置以及执行这些任务的移动设备上下文相关。
此外,如操作1106所示,使用动态用户配置文件做出推荐决定。推荐决定包括确定动态用户配置文件中的哪些任务(如果有的话)与移动设备的当前上下文相关。然后,将在推荐决定中确定的每个任务推荐给移动设备的用户,如操作1108所示。具体而言,每个任务被推荐为通过移动设备呈现的可选移动ui。如操作1110所示,当用户选择这些移动ui中的一个时,移动设备根据动态用户配置文件中指示的相关配置来重复所选移动ui所代表的任务。然后将任务选择指示反馈给动态用户配置文件,以存储选择指示(操作1104)。
基于存储在动态用户配置文件中的历史数据和移动设备的当前上下文,上述实施例能够智能地自动预测移动设备的用户想要执行的用户应用程序的任务,包括识别用户过去执行的与移动设备当前上下文相关联的任务。此外,根据各种服务的可用性、动态用户配置文件中指示的这些服务的过去使用情况等,上述实施例可以智能地自动选择多个可能服务中的一个服务,用于执行每个预测任务。
通过在不激活用户应用程序的情况下呈现给用户的移动ui,上述实施例可以向用户推荐预测的任务。例如,当用户选择移动ui时,移动ui可以直接将用户带到相应用户应用程序的ui,用户可以通过该ui启动任务。又例如,当用户选择代表某个任务的移动ui时,该任务可以自动执行。
当用户启动推荐任务时,可以使用所选服务来执行该任务。这样,可以通过集成各种服务提供商的服务来执行任务。此外,上述实施例可以为通过用户应用程序提供类似任务的所有服务提供商提供统一的ui。可选地,上述实施例还可以包括推荐应用程序以其它方式向用户推荐的一个或多个任务的选择性加入功能。当用户针对特定任务启用此选择性加入功能时,如果推荐应用程序确定该任务与移动设备的当前上下文相关,则可能会使推荐应用程序自动启动该任务。在一实施例中,在第一次通过移动ui,例如在图5中所述的推荐ui中,向用户推荐任务时,可以向用户提供选择性加入功能。
图12为根据一实施例的网络架构1200的图。如图所示,提供了至少一个网络1202。在各实施例中,在任何先前附图的描述中所阐述的任何一个或多个组件/特征可与至少一个网络1202的任何一个或多个组件一起实现。
在本网络结构1200的上下文中,网络1202可以采用任何形式,包括但不限于电信网络、局域网(localareanetwork,lan)、无线网络、广域网(wideareanetwork,wan),例如互联网、对等网络、有线网络等。尽管只示出了一种网络,但应理解的是,可以提供两个或更多类似或不同的网络1202。
多个设备耦合到网络1202。例如,服务器计算机1212和计算机1208可以耦合到网络1202以进行通信。此类计算机1208可包括台式计算机、笔记本电脑和/或任何其它类型的逻辑。此外,各种其它设备可能耦合到网络1202,包括个人数字助理(personaldigitalassistant,pda)设备1210、移动电话设备1206、电视1204等。
图13为根据一实施例的示例性系统1300的图。可选地,系统1300可在图12的网络架构1200中任何设备的上下文中实现。但是,应了解,系统1300可在任何所需环境中实现。
如图所示,系统1300包括连接到总线1312的至少一个处理器1302。系统1300还包括存储器1304(例如,硬盘驱动器、固态驱动器、随机存取存储器(randomaccessmemory,ram)等)。存储器1304可以包括一个或多个存储器组件,甚至可以包括不同类型的存储器。系统1300还包括显示器1310,其形式为触摸屏、独立显示器等。还包括与显示器1310耦合的图形处理器1308。
系统1300还可以包括辅助存储器1306。辅助存储器1306包括例如硬盘驱动器和/或可移动存储驱动器,相当于软盘驱动器、磁带驱动器、光盘驱动器等。可移动存储驱动器以一种众所周知的方式从可移动存储单元中读取和/或向可移动存储单元写入。
计算机程序或计算机控制逻辑算法可以存储在存储器1304、辅助存储器1306和/或用于这一目的的任何其它存储器中。这种计算机程序在执行时使得系统1300执行各种功能(例如,如上文所述的功能)。存储器1304、辅助存储器1306和/或任何其它存储器包括非瞬时性计算机可读介质。
注意,本文所描述的技术,在一方面,能够体现为可执行指令,这些可执行指令存储在由指令执行机器、装置或设备,例如基于计算机或包含处理器的机器、装置或设备,使用的或与该指令执行机器、装置或设备有关的计算机可读介质中。本领域技术人员将理解,对于一些实施例,包含可以存储可由计算机访问的数据的其它类型的计算机可读介质,例如磁盒、闪存卡、数字视频光盘、伯努利匣、随机存取存储器(randomaccessmemory,ram)、只读存储器(read-onlymemory,rom)等。
此处使用的“计算机可读介质”包括用于存储计算机程序的可执行指令的一种或多种合适介质,以便指令执行机器、系统、装置或设备可从计算机可读介质中读取(或获取)指令并且执行这些指令,以执行所述方法。合适的存储格式包括电子、磁性、光学和电磁格式中的一种或多种。常规的示例性计算机可读介质的非穷举清单包括:便携式计算机磁盘、ram、rom、可擦除可编程只读存储器(erasableprogrammablereadonlymemory,eprom,或闪存)、光存储设备,包括便携式光盘(compactdisc,cd)、便携式数字视频光盘(digitalvideodisc,dvd)、高清dvd(highdefinitiondvd,hd-dvdtm)和蓝光光盘等。
应理解,附图所示组件的布置是示例性的,其它布置也是可能的。还应理解,在下文描述并在各个方框图中示出的由权利要求限定的各种系统组件表示根据本文所公开主题配置的一些系统中的逻辑组件。
例如,可以通过在所述附图中示出的布置所示的至少一些组件来全部或部分实现这些系统组件(和构件)中的一个或多个。此外,虽然这些组件中的至少一个组件被至少部分地实现为电子硬件组件从而构成机器,但是当其它组件包含在执行环境中构成机器、硬件或软件和硬件的组合时,可以在软件中实现这些其它组件。
更具体地,由权利要求限定的至少一个组件至少部分实现为电子硬件组件,例如指令执行机器(例如,基于处理器或包含处理器的机器)和/或实现为专用电路或电路系统(例如,互连以执行专门功能的离散逻辑门)。其它组件可以在软件、硬件或软件和硬件的组合中实现。此外,可以组合这些其它组件中的一些或全部组件,可以完全省略一些组件并且可以添加其它组件,同时仍实现本文中描述的功能。因此,本文所描述的主题可以以许多不同的变体来体现,并且预期所有这些变体都包含在权利要求的范围内。
在上文的描述中,参照由一个或多个设备执行的操作的符号表示和动作来描述本主题,除非另有说明。因此,将理解,这些动作和操作,有时被称为计算机执行动作和操作,包括由处理器对结构化形式的数据进行操作。这种操作对数据进行变换或将该数据保持在计算机的内存系统中的位置处,以本领域技术人员容易理解的方式重新配置或改变设备的操作。数据作为数据结构保存在内存的物理位置处,数据结构具有由数据格式限定的特定性质。然而,虽然在先前的上下文中描述了本主题,但是不意味着限制,因为本领域技术人员将理解,下文中描述的各种动作和操作也可以在硬件中实现。
为了方便理解本文所述的主题,按照动作顺序描述了许多方面。由权利要求限定的这些方面中的至少一个方面通过电子硬件组件来执行。例如,将认识到,通过专用电路或线路、通过由一个或多个处理器执行的程序指令或通过两者的组合,可以执行各种动作。本文中对任何动作序列的描述并非意在暗指必须遵守所描述的用于执行该序列的特定次序。除非本文中另外指示或另外明显与内容相矛盾,否则本文中所描述的所有方法可以任何合适次序执行。
除非本文另有说明或明显矛盾,否则描述主题的上下文中(尤其是以下权利要求的上下文中)的术语“一种”、“一类”和“这种”以及类似的引用语应理解为涵盖单数和复数。本文中的值的范围的叙述仅意在用作独立引用落入范围内的每个单独值的简写方法,除非本文中另有说明,并且每个单独值以在本文中独立叙述的方式并入本说明书中。此外,先前的描述仅用于说明而不用于限制,因为所寻求的保护范围由本文中所陈述的权利要求及其授权的任何等效方案来限定。使用本文提供的任何和所有示例或示例性语言(例如,“例如”)仅仅是为了更好地说明主题,除非另有声明,否则不会对本主题的范围构成限制。在权利要求书和书面说明中,使用“基于”和其它类似短语表示产生结果的条件,并非意在排除产生该结果的任何其它条件。说明书中的语言不应当解释为表示实践所要求保护的本发明所必需的任何未要求保护的元件。
本文所描述的实施例包括发明人已知的用于实现所要求保护的主题的一种或多种模式。应了解,对于本领域普通技术人员而言,在阅读先前的描述后,这些实施例的变体将变得明显。发明人期望技术人员酌情使用这样的变体,并且发明人意在以本文中具体描述的方式以外的方式来实践所要求保护的主题。因此,所要求保护的主题包括本文所附权利要求中叙述的主题的如适用法律所允许的所有修改和等效方案。此外,本发明包括上述元件的所有可能变体中的上述元件的任何组合,除非本文中另有说明或上下文明显矛盾。
1.一种设备,其特征在于,包括:
包括指令的非瞬时性内存存储器;以及
与所述存储器通信的一个或多个处理器,其中所述一个或多个处理器执行所述指令以:
监控通过移动设备使用应用程序执行任务的情况;
通过与所述应用程序的所述使用相关联的用户界面(userinterface,ui)确定所述任务的配置,所述任务通过根据所述ui指定的所述配置来执行;
识别所述移动设备的上下文,所述上下文包括所述移动设备的一个或多个条件,在所述条件下,所述移动设备的用户激活所述应用程序以执行所述任务;
跟踪所述移动设备的当前上下文,所述当前上下文包括所述移动设备运行的一个或多个条件;
确定所述上下文与所述当前上下文之间的相关性;以及
响应于所述确定的相关性,通过所述移动设备呈现移动ui,以便通过所述移动ui使用所述配置重复执行所述任务,而无需激活与所述应用程序的所述使用相关联的至少一个所述ui。
2.根据权利要求1所述的设备,其特征在于,所述应用程序是安装在所述移动设备上的移动应用程序。
3.根据权利要求1所述的设备,其特征在于,所述应用程序为以下项之一:
消息应用程序,
多媒体播放器,
商家商店,以及
交通预订应用程序。
4.根据权利要求1所述的设备,其特征在于,与所述应用程序的所述使用相关联的所述ui是所述应用程序的ui,所述用户通过所述ui导航以指定所述配置并使用所述配置启动所述任务的执行。
5.根据权利要求1所述的设备,其特征在于,还包括:在所述用户的配置文件中存储携带所述移动设备的所述配置和所述上下文的任务指示,其中,访问所述用户的所述配置文件以识别所述上下文,从而确定所述移动设备的所述上下文与所述当前上下文之间的所述相关性。
6.根据权利要求1所述的设备,其特征在于,所述移动设备的所述上下文包括以下项之一:
所述移动设备的位置,以及
所述移动设备指示的时间。
7.根据权利要求1所述的装置,其特征在于,确定所述上下文与所述当前上下文之间的相关性包括确定所述当前上下文与所述上下文之间的差异在预定义的阈值内。
8.根据权利要求1所述的设备,其特征在于,所述移动ui呈现在所述移动设备的主界面上。
9.根据权利要求1所述的设备,其特征在于,通过所述移动设备呈现的所述移动ui是一个图标,当所述用户选择所述图标时,会使用所述配置重复执行所述任务,而无需激活与所述应用程序的所述使用相关联的至少一个所述ui。
10.根据权利要求1所述的设备,其特征在于,所述一个或多个处理器还执行所述指令以:
监控通过所述移动设备使用附加应用程序来执行附加任务的情况;
通过与所述附加应用程序的所述使用相关联的附加用户界面(userinterface,ui)确定所述附加任务的配置,所述附加任务通过根据所述附加ui指定的所述配置来执行;
识别所述移动设备的附加上下文,所述附加上下文包括所述移动设备的一个或多个条件,在所述条件下,所述移动设备的所述用户激活所述附加应用程序以执行所述附加任务;
确定所述附加上下文与所述当前上下文之间的附加相关性;以及
结合所述移动ui并响应于所述确定的附加相关性,通过所述移动设备呈现附加移动ui,以便通过所述附加移动ui使用所述附加任务的所述配置重复执行所述附加任务,而无需激活与所述附加应用程序的所述使用相关联的至少一个所述附加ui。
11.一种计算机实施方法,其特征在于,包括:
监控通过移动设备使用应用程序执行任务的情况;
通过与所述应用程序的所述使用相关联的用户界面(userinterface,ui)确定所述任务的配置,所述任务通过根据所述ui指定的所述配置来执行;
识别所述移动设备的上下文,所述上下文包括所述移动设备的一个或多个条件,在所述条件下,所述移动设备的用户激活所述应用程序以执行所述任务;
跟踪所述移动设备的当前上下文,所述当前上下文包括所述移动设备运行的一个或多个条件;
确定所述上下文与所述当前上下文之间的相关性;以及
响应于所述确定的相关性,通过所述移动设备呈现移动ui,以便通过所述移动ui使用所述配置重复执行所述任务,而无需激活与所述应用程序的所述使用相关联的至少一个所述ui。
12.根据权利要求11所述的计算机实施方法,其特征在于,所述应用程序是安装在所述移动设备上的移动应用程序。
13.根据权利要求11所述的计算机实施方法,其特征在于,所述应用程序为以下项之一:
消息应用程序,
多媒体播放器,
商家商店,以及
交通预订应用程序。
14.根据权利要求11所述的计算机实施方法,其特征在于,与所述应用程序的所述使用相关联的所述ui是所述应用程序的ui,所述用户通过所述ui导航以指定所述配置并使用所述配置启动所述任务的执行。
15.根据权利要求11所述的计算机实施方法,其特征在于,还包括:在所述用户的配置文件中存储携带所述移动设备的所述配置和所述上下文的任务指示,其中,访问所述用户的所述配置文件以识别所述上下文,从而确定所述移动设备的所述上下文与所述当前上下文之间的所述相关性。
16.根据权利要求11所述的计算机实施方法,其特征在于,所述移动设备的所述上下文包括以下项之一:
所述移动设备的位置,以及
所述移动设备指示的时间。
17.根据权利要求11所述的计算机实施方法,其特征在于,确定所述上下文与所述当前上下文之间的相关性包括确定所述当前上下文与所述上下文之间的差异在预定义的阈值内。
18.根据权利要求11所述的计算机实施方法,其特征在于,所述移动ui呈现在所述移动设备的主界面上。
19.根据权利要求11所述的计算机实施方法,其特征在于,通过所述移动设备呈现的所述移动ui是一个图标,当所述用户选择所述图标时,会使用所述配置重复执行所述任务,而无需激活与所述应用程序的所述使用相关联的至少一个所述ui。
20.根据权利要求11所述的计算机实施方法,其特征在于,还包括:
监控通过所述移动设备使用附加应用程序来执行附加任务的情况;
通过与所述附加应用程序的所述使用相关联的附加用户界面(userinterface,ui)确定所述附加任务的配置,所述附加任务通过根据所述附加ui指定的所述配置来执行;
识别所述移动设备的附加上下文,所述附加上下文包括所述移动设备的一个或多个条件,在所述条件下,所述移动设备的所述用户激活所述附加应用程序以执行所述附加任务;
确定所述附加上下文与所述当前上下文之间的附加相关性;以及
结合所述移动ui并响应于所述确定的附加相关性,通过所述移动设备呈现附加移动ui,以便通过所述附加移动ui使用所述附加任务的所述配置重复执行所述附加任务,而无需激活与所述附加应用程序的所述使用相关联的至少一个所述附加ui。
21.一种存储计算机指令的非瞬时性计算机可读介质,其特征在于,所述指令在由一个或多个处理器执行时使得所述一个或多个处理器执行以下步骤:
监控通过移动设备使用应用程序执行任务的情况;
通过与所述应用程序的所述使用相关联的用户界面(userinterface,ui)确定所述任务的配置,所述任务通过根据所述ui指定的所述配置来执行;
识别所述移动设备的上下文,所述上下文包括所述移动设备的一个或多个条件,在所述条件下,所述移动设备的用户激活所述应用程序以执行所述任务;
跟踪所述移动设备的当前上下文,所述当前上下文包括所述移动设备运行的一个或多个条件;
确定所述上下文与所述当前上下文之间的相关性;以及
响应于所述确定的相关性,通过所述移动设备呈现移动ui,以便通过所述移动ui使用所述配置重复执行所述任务,而无需激活与所述应用程序的所述使用相关联的至少一个所述ui。
22.根据权利要求21所述的计算机实现的方法,其特征在于,所述应用程序是安装在所述移动设备上的移动应用程序。
23.根据权利要求21所述的计算机实现的方法,其特征在于,所述应用程序为以下项之一:
消息应用程序,
多媒体播放器,
商家商店,以及
交通预订应用程序。
24.根据权利要求21所述的计算机实现的方法,其特征在于,与所述应用程序的所述使用相关联的所述ui是所述应用程序的ui,所述用户通过所述ui导航以指定所述配置并使用所述配置启动所述任务的执行。
25.根据权利要求21所述的计算机实现的方法,其特征在于,还包括:在所述用户的配置文件中存储携带所述移动设备的所述配置和所述上下文的任务指示,其中,访问所述用户的所述配置文件以识别所述上下文,从而确定所述移动设备的所述上下文与所述当前上下文之间的所述相关性。
26.根据权利要求21所述的计算机实现的方法,其特征在于,所述移动设备的所述上下文包括以下项之一:
所述移动设备的位置,以及
所述移动设备指示的时间。
27.根据权利要求21所述的计算机实现的方法,其特征在于,确定所述上下文与所述当前上下文之间的相关性包括确定所述当前上下文与所述上下文之间的差异在预定义的阈值内。
28.根据权利要求21所述的计算机实现的方法,其特征在于,所述移动ui呈现在所述移动设备的主界面上。
29.根据权利要求21所述的计算机实现的方法,其特征在于,通过所述移动设备呈现的所述移动ui是一个图标,当所述用户选择所述图标时,会使用所述配置重复执行所述任务,而无需激活与所述应用程序的所述使用相关联的至少一个所述ui。
30.根据权利要求21所述的计算机实现的方法,其特征在于,还包括:
监控通过所述移动设备使用附加应用程序来执行附加任务的情况;
通过与所述附加应用程序的所述使用相关联的附加用户界面(userinterface,ui)确定所述附加任务的配置,所述附加任务通过根据所述附加ui指定的所述配置来执行;
识别所述移动设备的附加上下文,所述附加上下文包括所述移动设备的一个或多个条件,在所述条件下,所述移动设备的所述用户激活所述附加应用程序以执行所述附加任务;
确定所述附加上下文与所述当前上下文之间的附加相关性;以及
结合所述移动ui并响应于所述确定的附加相关性,通过所述移动设备呈现附加移动ui,以便通过所述附加移动ui使用所述附加任务的所述配置重复执行所述附加任务,而无需激活与所述附加应用程序的所述使用相关联的至少一个所述附加ui。
技术总结