CN112384888A - 基于上下文状态的用户界面格式适应 - Google Patents

基于上下文状态的用户界面格式适应 Download PDF

Info

Publication number
CN112384888A
CN112384888A CN201980044559.5A CN201980044559A CN112384888A CN 112384888 A CN112384888 A CN 112384888A CN 201980044559 A CN201980044559 A CN 201980044559A CN 112384888 A CN112384888 A CN 112384888A
Authority
CN
China
Prior art keywords
user interface
adaptation
computer system
computer
control format
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.)
Pending
Application number
CN201980044559.5A
Other languages
English (en)
Inventor
R·古普塔
P·K·雷迪K
B·夏尔马
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Technology Licensing LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Publication of CN112384888A publication Critical patent/CN112384888A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • 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/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04847Interaction techniques to control parameter settings, e.g. interaction with sliders or dials
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • H04L67/025Protocols based on web technology, e.g. hypertext transfer protocol [HTTP] for remote control or remote monitoring of applications
    • 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
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/42Mailbox-related aspects, e.g. synchronisation of mailboxes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles
    • H04L67/306User profiles
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/01Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • G06N5/046Forward inferencing; Production systems

Abstract

可以调整用户界面区域的一个或多个用户界面控件的用户界面控件格式,以适应计算机系统中的当前上下文用户界面活动状态。这种格式的调整可以产生指示调整格式的用户界面适应指令。这种格式的调整可以使用表示计算机系统中的当前上下文用户界面活动状态的数据。另外,当前上下文用户界面活动状态可以是显示计算机应用程序的状态以外的状态。用户界面适应指令可以用于生成具有该用户界面适应指令中指示的调整格式的用户界面区域。可以针对计算机系统中的显示的计算机应用程序,在计算机显示器上以调整格式来呈现用户界面区域。

Description

基于上下文状态的用户界面格式适应
背景技术
用户界面格式通常是静态的,其中显示的用户界面控件的格式保持不变,而不考虑要显示用户界面控件的用户配置文件所特定的当前上下文或者计算机系统中的其它当前上下文。如本文所使用的,用户界面控件是指在用户界面区域中显示的交互元素,其中交互是响应于用户输入而发生的。用户界面控件的一些例子包括显示的按钮、复选框、可选菜单项、滚动条和滑块。已经根据历史上下文对用户界面格式进行了一些调整,例如根据菜单项的使用频率或最近使用过的菜单项来调整这些项。即使这样的历史上下文通常也受限于正在为其显示用户界面区域的计算机应用程序中的上下文,并且通常不是特定于正在显示用户界面区域所对应的用户配置文件。
发明内容
可以通过调整用户界面区域的用户界面控件的格式以适合计算机系统的当前上下文状态来提高计算机系统的效率和/或可用性,即使这种状态来自于要显示的用户界面区域所针对的应用程序之外。该当前上下文状态可以包括:特定于要向其显示用户界面区域的用户配置文件的上下文状态。
在一个例子中,这些工具和技术可以包括:接收针对在计算机系统中的显示的计算机应用程序,在计算机显示器上显示用户界面区域的请求。响应于接收到进行显示的所述请求,可以调整所述用户界面区域的一个或多个用户界面控件的用户界面控件格式,以适应所述计算机系统中的当前上下文用户界面活动状态。所述用户界面控件格式的所述调整可以产生指示所述用户界面区域的所调整的用户界面控件格式的用户界面适应指令。所述用户界面控件格式的所述调整可以使用表示所述计算机系统中的所述当前上下文用户界面活动状态的数据。此外,所述当前上下文用户界面活动状态可以是所述显示的计算机应用程序的状态以外的状态。该技术还可以包括:使用所述用户界面适应指令,生成具有所述用户界面适应指令中指示的所调整的用户界面控件格式的所述用户界面区域。可以控制所述用户界面区域的呈现,使得所述计算机系统针对所述计算机系统中的所述显示的计算机应用程序,在所述计算机显示器上以所调整的用户界面控件格式来呈现所述用户界面区域。
在这些工具和技术的另一个例子中,可以接收使计算机系统中的计算机应用程序里的计算机显示器上的用户界面区域适应当前上下文用户界面活动状态的请求。响应于接收到进行适应的所述请求,可以调整所述用户界面区域的用户界面控件格式,以适应所述计算机系统中的当前上下文用户界面活动状态。所述适应可以包括:从一组可用的用户界面控件中选择一个用户界面控件的子集以包含在所述用户界面区域中。所述一组可用的用户界面控件可以包括未包含在所述用户界面控件的子集中的其它用户界面控件。所述用户界面控件的子集的所述选择可以使用表示所述计算机系统中的当前上下文用户界面活动状态的数据,其中所述当前上下文用户界面活动状态是所述计算机应用程序的状态以外的状态。可以向所述计算机应用程序发送用户界面适应指令。所述适应指令可以包括:在所述用户界面区域中包含所述用户界面控件的子集以显示在所述计算机系统中的计算机显示器上的一个或多个指令。
通过阅读以下详细说明并查看相关附图,上面所明确描述的功能和技术优势之外的其它功能和优势将变得显而易见。提供本概括部分以便用简化的形式介绍概念选择。将在以下的详细描述中进一步描述这些概念。本概括部分并不是旨在标识本发明的关键特征或本质特征,也不是旨在用于限制本发明的保护范围。类似地,本发明不限于解决在背景技术、详细描述或附图中讨论的特定技术、工具、环境、缺点或优点的实施方式。
附图说明
图1是可以在其中实现所描述的工具和技术中的一个或多个的适当计算环境的框图。
图2是计算机化上下文用户界面格式适应系统的示意图。
图3是上下文用户界面适应准备的框图。
图4是运行时用户界面处理的流程图。
图5是第一电子邮件通知用户界面区域的视图。
图6是与图5中的用户界面区域具有相同类型的第二电子邮件通知用户界面区域的视图,但是具有与图5的第一电子邮件通知用户界面区域不同的格式。
图7是第一呼叫用户界面区域的视图。
图8是与图7中的用户界面区域具有相同类型的第二呼叫用户界面区域的视图,但是具有与图7的第一呼叫用户界面区域不同的格式。
图9是基于上下文状态的用户界面适应技术的流程图。
图10是另一种基于上下文状态的用户界面适应技术的流程图。
图11是另一种基于上下文状态的用户界面适应技术的流程图。
具体实施方式
本文所描述的方面针对于改进计算机系统中的适应用户界面区域的技术和工具。这种改进可以源自于单独地或组合地使用各种技术和工具。
这样的技术和工具可以包括:使用关于当前上下文的上下文信号或数据来调整用户界面区域的格式,例如,在所呈现的用户界面中呈现不同组的用户界面控件(例如,操作按钮)以适合于计算机系统中的不同上下文。可以针对来自不同应用程序的用户界面区域或其它呈现的用户界面区域,进行用户界面格式的这种上下文适应。例如,可以对电子邮件进行用户界面格式的上下文适应,其中,根据上下文数据中指示的当前上下文,传入的电子邮件或者甚至正在草拟的电子邮件可以显示不同的操作按钮(例如,与一些上下文一起呈现的但不与其它上下文一起呈现的突出显示的“保存草稿”按钮、或者出现在一些上下文中但不存在于其它上下文中的贪睡按钮,具体取决于使用这些按钮的可能性,如当前上下文数据所指示以及历史数据所告知的)。再举一个例子,用于在智能电话上呼叫的显示可以包括一个不使用免提呼叫即可通话的操作按钮、以及可使用免提呼叫通话的另一个按钮。但是,如果用户如上下文数据所指示的正在驾驶,则可以只给出一个呼叫按钮,并且该按钮始终可以在免提电话上呼叫。同样,这可以利用诸如数字助理之类的中央服务,其可以利用许多不同类型的上下文数据。例如,作为数字助理插件的一部分,可以存在用户界面适应引擎。
可以在第一方和第三方应用程序能够与用户界面适应服务或平台集成的系统中,利用用户界面格式的上下文适应。例如,应用程序可以为该服务提供针对用户界面区域的许多不同的潜在用户界面控件的指示。该服务可以基于用户配置文件的当前上下文和学习到的行为,决定在针对用户配置文件而显示用户界面区域时显示哪些控件。用户界面格式的上下文适应也可以在许多其它场景中使用。在一些场景中,该适应可以特定于要显示用户界面区域所针对的用户配置文件。例如,在适应和/或适应模型(其用于分析当前上下文数据)中分析的当前上下文数据,可以特定于要显示用户界面区域所针对的用户配置文件。例如,即使要在计算机系统中的不同计算设备中显示用户界面区域,在计算机系统中分析的当前上下文数据也可能特定于用户配置文件与计算机系统中一个计算设备的交互。
用户界面格式的上下文适应可以通过以适合于当前上下文的格式呈现用户界面控件来使计算机系统更易于使用,即使该当前上下文的至少一部分不在要显示用户界面区域的应用程序之外,即使该当前上下文的至少一部分位于与要显示用户界面区域的计算设备不同的计算设备中。这可以产生包括有用户更可能在该上下文中使用的用户界面控件的用户界面区域。除了增加计算机系统的可用性之外,用户界面格式的上下文适应还可以使计算机系统更高效。例如,通过省略不太可能在特定上下文中使用的用户界面控件,并包括和/或突出显示更可能使用的其它控件(如通过分析表示计算机系统中的当前上下文的数据来表示),计算机系统可以更高效地利用用户界面显示器中的可用区域。这对于具有较小显示屏的设备(例如,智能手机)尤其重要,但对于具有较大显示屏的设备也可能是有益的。此外,通过包含上下文格式的用户界面控件,可以减少所需的处理器、存储器和电源使用量,由于存在许多显示的用户界面控件,因此可以减少由于用户输入错误而导致的错误率,其中在该情况下,不太可能在当前上下文中使用某些此类控件。此外,具有针对当前上下文的适当的用户界面控件,可以允许以较少的用户输入和计算机系统中的关联处理活动来采取期望的动作。例如,在一个当前上下文中,用户可能选择一个特定的用户界面控件,如历史点击数据所指示的。但是,在没有用户界面格式的上下文适应的情况下,用户可能需要在显示期望的用户界面控件之前选择一系列其它用户界面控件。相比而言,通过用户界面格式的上下文适应,如果对当前上下文数据的分析表明可能要选择期望的用户界面控件,则可以对初始用户界面区域进行调整,以便最初显示期望的用户界面控件,而无需用户选择一系列控件即可达到显示所需控件的用户界面区域。当然,如本文所讨论的,通过用户界面格式的上下文适应,还可以对计算机系统进行其它改进。
所附权利要求书中定义的主题并不必定限于本文所描述的益处。本发明的特定实现可以提供本文所描述的益处中的全部、一些,或根本不提供这些益处。虽然为了展示的目的而在本文中以特定的顺序次序来描述了各种技术的操作,但应当理解,这种描述方式涵盖该操作顺序的重排,除非需要特定的顺序。例如,在一些情况下,可以对顺序描述的操作进行重新排列或同时执行。此外,为了简单起见,流程图可能没有显示特定技术可以与其它技术结合使用的各种方式。
本文描述的技术可以与本文描述的一个或多个系统和/或一个或多个其它系统一起使用。例如,本文描述的各种过程可以利用硬件或软件或两者的组合来实现。例如,下面参考图1讨论的处理器、存储器、存储设备、输出设备、输入设备和/或通信连接可以是一个或多个硬件组件的至少一部分。可以将专用硬件逻辑组件构造为实现本文所描述的一种或多种技术的至少一部分。举例而言但非做出限制,这样的硬件逻辑组件可以包括现场可编程门阵列(FPGA)、程序专用集成电路(ASIC)、程序专用标准产品(ASSP)、片上系统(SOC)、复杂可编程逻辑器件(CPLD)等等。可以包括各个方面的装置和系统的应用程序可以广泛地包括各种电子和计算机系统。可以使用具有相关控制和数据信号的两个或更多个特定的互连硬件模块或设备来实现技术,该相关的控制和数据信号可以在模块之间和通过模块进行传输,或者作为专用集成电路的一部分。另外,本文描述的技术可以通过计算机系统可执行的软件程序来实现。举一个例子,实现可以包括分布式处理、组件/对象分布式处理和并行处理。此外,如本文所述,虚拟计算机系统处理可以被构造为实现这些技术或功能中的一种或多种。
如本文所使用的,用户配置文件是表示诸如用户、一组用户、计算资源等等之类的实体的一组数据。当在本文中提及执行动作(发送、接收等等)的用户配置文件时,如果这些动作是由用户配置文件处于活动状态的环境中的计算机组件执行的(例如,用户配置文件登录到环境中,并且该环境控制这些动作的执行),则认为这些动作由用户配置文件执行。通常,由用户配置文件执行或针对用户配置文件的此类动作也由与该用户配置文件相对应的用户或针对与该用户配置文件相对应的用户执行。例如,可能是这样的情况:用户配置文件已登录,并在代表相应用户执行用户配置文件的操作的计算机应用程序和/或计算设备中处于活动状态。为了提供一些特定示例,与用户配置文件有关的术语的这种用法适用于对提供用户输入、接收响应或与本文讨论的计算机组件进行交互的用户配置文件的引用。
在实现本文讨论的工具和技术时,应尊重用户信息的隐私。例如,应当给用户明确的机会选择退出或离开数据(尤其是敏感的个人识别数据)的特定用途。此外,应采取合理的步骤来确保此类数据的安全,例如对静态和/或传输中的数据进行加密、限制对诸如数据中心中的计算设备的物理访问以及类似的安全措施。
I.示例性计算环境
图1示出了可以在其中实现所描述方面中的一个或多个的适当的计算环境(100)的一般示例。例如,一个或多个这样的计算环境可以用作用户界面适应服务、应用服务和/或用户接口设备。通常,可以使用各种计算系统配置。可能适用于本文所描述的工具和技术的众所周知的计算系统配置的例子包括但不限于服务器群和服务器群集、个人计算机、服务器计算机、智能手机、膝上型计算机设备、平板设备、游戏控制台、多处理器系统、基于微处理器的系统、可编程消费电子产品、网络PC、小型计算机、大型计算机、包括上述任何系统或设备的分布式计算环境等等。
由于可以在各种类型的计算环境中实现本发明,因此计算环境(100)并不旨在暗示对本发明的使用范围或功能的任何限制。
参考图1,将讨论各种示出的基于硬件的计算机组件。如将要讨论的,这些硬件组件可以存储和/或执行软件。计算环境(100)包括至少一个处理单元或处理器(110)和存储器(120)。在图1中,将这种最基本的配置(130)包括在虚线内。处理单元(110)执行计算机可执行指令,并且可以是真实或虚拟处理器。在多处理系统中,多个处理单元执行计算机可执行指令以增加处理能力。存储器(120)可以是易失性存储器(例如,寄存器、高速缓存、RAM)、非易失性存储器(例如,ROM、EEPROM、闪存)、或二者的某种组合。存储器(120)存储实现基于上下文状态的用户界面格式适应的软件(180)。基于上下文状态的用户界面格式适应的实现可以涉及以硬件逻辑来体现处理器(110)和存储器(120)的全部或部分活动,作为软件(180)的替代或补充。
虽然为了清楚说明起见,用线示出了图1的各个框,但实际上,对各个组件的描绘不是很清楚,并且隐含地,图1和下面讨论的其它附图的线将更准确地是灰色和模糊的。例如,可以考虑诸如显示设备之类的呈现组件为I/O组件(例如,如果显示设备包括触摸屏的话)。此外,处理器也具有存储器。本文的发明人认识到这是本领域的本质,故重申图1的图示仅是可以与本文所讨论的技术的一个或多个方面结合使用的示例性计算设备的说明。在诸如“工作站”、“服务器”、“膝上型计算机”、“手持设备”等等类别之间未进行区分,这是因为所有这些类别都落入图1的范围之内,并涉及“计算机”、“计算环境”或“计算设备”。
计算环境(100)可以具有另外的特征。在图1中,计算环境(100)包括存储设备(140)、一个或多个输入设备(150)、一个或多个输出设备(160)以及一个或多个通信连接(170)。诸如总线、控制器或网络之类的互连装置(没有示出)将计算环境(100)的组件进行互连。通常,操作系统软件(没有示出)为在计算环境(100)中执行的其它软件提供操作环境,并协调计算环境(100)的组件的活动。
存储器(120)可以包括存储设备(140)(尽管为方便起见,在图1中分别进行了描述),该存储设备(140)可以是可移动或不可移动的,并且可以包括计算机可读存储介质,例如可以用于存储信息并可在计算环境(100)中访问的闪存驱动器、磁盘、磁带或盒式磁带、CD-ROM、CD-RW、DVD。存储设备(140)存储有关软件的指令(180)。
输入设备(150)可以是各种输入设备中的一个或多个。例如,输入设备(150)可以包括诸如鼠标、键盘、跟踪球等等之类的用户设备。输入设备(150)可以实现诸如语音识别、触摸和手写笔识别、与输入设备(150)接触并与输入设备(150)相邻的手势的识别、空中手势的识别、头部和眼睛的跟踪、语音和声音识别、感测用户的大脑活动(例如,使用EEG和相关方法)、以及机器智能(例如,使用机器智能来了解用户的意图和目标)之类的一种或多种自然用户界面技术。作为其它例子,输入设备(150)可以包括扫描设备;网络适配器;CD/DVD阅读器;或者向计算环境(100)提供输入的其它设备。输出设备(160)可以是显示器、打印机、扬声器、CD/DVD刻录机、网络适应器、或者提供计算环境(100)的输出的其它设备。可以将输入设备(150)和输出设备(160)并入在单个系统或设备(例如,触摸屏或虚拟现实系统)中。
通信连接(170)使得能够通过通信介质与另一个计算实体进行通信。另外,可以将计算环境(100)的组件的功能实现在单个计算机中,也可以实现在能够通过通信连接进行通信的多个计算机中。因此,计算环境(100)可以在使用具有到一个或多个远程计算设备(例如,手持式计算设备、个人计算机、服务器、路由器、网络PC、对等设备或另一个常见的网络节点)的逻辑连接的网络环境中进行操作。通信介质在调制的数据信号中传送诸如数据或计算机可执行指令或请求之类的信息。调制的数据信号是以将信息编码在信号中的方式改变或设置其一个或多个特性的信号。举例而言,但非做出限制,通信介质包括利用电学、光学、红外、或其它载体实现的有线或无线技术。
可以在计算机可读介质的一般上下文中描述本文的工具和技术,该计算机可读介质可以是存储介质或通信介质。计算机可读存储介质是可以在计算环境中访问的任何可用存储介质,但是术语计算机可读存储介质本身并不指传播的信号。举例而言,但非做出限制,在计算环境(100)中,计算机可读存储介质包括存储器(120)、存储设备(140)、以及上述各项的组合
可以在计算机可执行指令的一般上下文中描述这些工具和技术,例如在程序模块中包括的那些,其在目标真实或虚拟处理器上的计算环境中执行。通常,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、库、对象、类、组件、数据结构等等。在各个方面,可以根据需要在程序模块之间,对程序模块的功能进行组合或拆分。可以在本地或分布式计算环境下,执行用于程序模块的计算机可执行指令。在分布式计算环境中,程序模块可以位于本地和远程计算机存储介质中。
为了便于呈现起见,具体实施方式使用诸如“确定”、“适应”、“生成”、“呈现”、“执行”、“发送”和“接收”之类的术语来描述计算环境中的计算机操作。这些术语和其它类似术语是对计算机执行的操作的高级描述,其不应与人类执行的动作相混淆,除非明确指出人类(例如“用户”)执行的动作。与这些术语相对应的实际计算机操作取决于实现方式。
II.用户界面适应系统
可以使用计算机系统硬件(例如,单个计算设备内的硬件、多个计算设备内的硬件和/或计算机网络硬件)发送本文讨论的各种设备和组件之间的通信。如果某个组件以指示系统将某个通信或数据项路由到目的地的方式,将该通信或数据项传递给系统(例如,通过包括与目的地相关联的适当标识符或地址),则可以认为该组件将该通信或数据项发送到了目的地。另外,可以通过多种方式来发送数据项,例如通过直接发送数据项或者通过发送包含地址或指针的通知以供接收者访问数据项时使用。另外,可以通过发送请求执行多个任务的单个请求,来发送多个请求。
A.上下文用户界面适应系统的组件
现在参考图2,将讨论计算机化的上下文用户界面格式适应系统(200)的组件。这些组件中的每个组件都包括硬件,还可以包括软件。例如,可以完全在计算机硬件中(例如,在片上系统配置中)实现图2的组件。替代地,可以在根据计算机软件配置并运行计算机软件的计算机硬件中实现组件。这些组件可以以各种不同的方式分布在计算机上,也可以组合到单个计算机上。例如,单个组件可以分布在多个不同的计算机上(例如,该组件的某些操作在一个或多个客户端计算设备上执行,而该组件的其它操作在服务器的一个或多个客户端计算设备上执行)。
仍然参考图2,系统(200)可以包括用户接口设备(210),其可以是系统(200)中的客户端设备,例如智能手机、台式计算机、膝上型计算机、平板设备、智能扬声器设备和/或其它用户接口设备(210),每个设备可以包括一个或多个辅助用户接口设备(例如,显示器(212)、扬声器(214)、麦克风、触摸传感器和/或运动感应相机)。
用户接口设备(210)可以通过经由计算机网络(220)发送和接收计算机可读数据来与其它计算设备进行通信,以接收用户界面区域(216),可以响应于请求显示用户界面区域(216)的用户界面请求(215)而提供该用户界面区域(216),其中请求(215)可以提示系统产生用户界面适应请求(218),这转而可以提示系统产生用户界面适应指令(219),适应指令(219)定义对所请求的用户界面区域(216)的适应,如下面更详细地讨论的。计算机网络(220)可以包括一种或多种不同类型的网络,例如局域网、全球网络或云网络(例如,互联网)和/或其它网络。在所示出的例子中,用户接口设备(210)可以与一个或多个应用服务(230)进行通信,该应用服务(230)可以提供应用程序(232)。应用程序(232)可以在远离用户接口设备(210)的应用服务(230)上运行(如图2中所示),和/或在用户接口设备(210)中运行。例如,应用程序(232)可以包括在应用程序服务(230)中运行的组件和在用户接口设备(210)中运行的另一个组件,其中这两个组件通过计算机网络(220)来彼此进行通信。
系统(200)还可以包括用户界面适应服务(240),该用户界面适应服务(240)可以托管数字助理(250),数字助理(250)可以向用户接口设备(210)上的用户配置文件(255)提供数字助理服务。用户配置文件(255)可以由数字助理(250)和/或某些其它计算机组件来管理。如本文所使用的,数字助理是可以接收自然语言指令并使用用户接口设备(210)在对话框中以自然语言脚本进行响应的计算机组件。数字助理(250)可以向用户接口设备(210)提供许多不同的特征或服务。例如,数字助理(250)可以包括用户界面适应管理器(260),其可以管理适合于针对用户接口设备(210)上的应用程序(232)来显示的用户界面区域的适应。这可以包括:管理作为数字助理(250)的组件运行的应用程序(232)(例如,作为数字助理(250)的一部分运行的插件或技能)和/或在数字助理(250)之外运行的应用程序。无论在数字助理(250)的内部和/或外部运行,上下文用户界面格式适应服务(240)都可以为应用程序(232)适应用户界面区域。应用程序(232)可以访问和提供用户界面组件(234),它们是定义用户界面区域(例如,定义用户界面区域中的用户界面控件的格式)的计算机可读指令。例如,用户界面组件(234)可以包括分层计算机可读代码,其按照多个级别来定义用户界面组件,例如,定义多个用户界面控件中的每一个、定义指示控件之间以及控件与用户界面组件定义的用户界面中的非交互式视觉功能之间的空间关系的布局。相应地,用户界面组件可以定义不同的视觉特征,其包括:哪些子组件包含在较高级别的组件中、以及诸如子组件之间的间距、组件的大小、线宽、字体特征(如,字体类型、字体大小)之类的视觉特征和其它视觉特征、以及系统(200)响应于与用户界面控件的交互而要采取的动作。因此,通过为用户界面区域选择不同的用户界面组件(234),可以针对不同的当前运行时上下文来调整用户界面区域。
应用程序(232)可以向用户界面适应服务提供用户界面适应请求(218)。也可以从系统(200)中的其它组件,向用户界面适应服务发送用户界面适应请求(218)。实际上,某些用户界面适应请求(218)可能源自于用户界面适应服务(240)内,例如服务(240)包括通知提供服务,并且将以上下文可调整的用户界面区域(216)形式来呈现这些通知。与应用程序(232)一样,数字助理(250)可以包括在用户界面适应服务(240)中运行的、远离用户接口设备(210)的组件。此外,用户接口适应管理器(260)可以独立于数字助理(250)运行,可以在数字助理(250)之外运行,并且可以与数字助理(250)交换数据,也可以不与数字助理(250)交换数据。
用户界面适应管理器(260)可以接收针对上下文可调整的用户界面区域(216)的注册数据(290)。例如,注册数据(290)可以指示将提供上下文可调整的用户界面区域(216)的应用程序(232)、以及将提供的用户界面区域(216)所针对的用户配置文件(255)。因此,用户界面适应管理器(260)可以通过用户接口设备(210),从用户配置文件(255)接收指示用户配置文件(255)已经通过用户输入选择了上下文用户界面适应的注册数据(290)。用户界面适应管理器(260)还可以从应用程序(232)接收指示应用程序(232)已经选择使用上下文用户界面适应来处理其用户界面区域(216)的注册数据(290)。应用程序(232)可以针对其所有用户界面区域(216)或仅对其某些用户界面区域(216)进行选择。例如,应用程序(232)可以指示用户界面适应服务(240)是否单个用户界面区域受上下文用户界面适应的影响。如果用户界面区域(216)不受上下文用户界面适应的影响,则可以不考虑上下文数据(270)中指示的当前上下文状态来呈现用户界面区域(216)。此外,可以作为选择加入技术的补充或替代,还可以使用选出技术。用户界面适应管理器(260)可以暴露用于在用户界面适应管理器(260)和应用程序(232)之间发送和接收与用户界面适应相关的数据的数据通信接口。例如,用户界面适应管理器(260)可以暴露应用程序编程接口,可以通过该应用程序编程接口,在用户界面适应管理器(260)和应用程序(232)之间进行应用程序编程接口调用。
用户界面适应请求(218)可以包括与请求有关的数据包。例如,应用程序(232)可以将此类数据包与用户界面适应请求(218)一起发送。用户界面适应管理器(260)可以使用这些数据包来适应所请求的用户界面区域,例如通过选择用于相关联的用户界面区域(216)的用户界面组件(234)。例如,针对用户界面区域(216)的请求(218)中的数据可以指示该用户界面区域的类别。例如,如果用户界面区域(216)是通知,则类别可以指示通知的类型。例如,对于购物应用程序,类别可以包括有关产品折扣的通知、有关订单状态的通知、有关付款的通知和/或其它类别。再举一个例子,针对用户界面区域(216)的请求(218)中的数据可以指示:在当前状态数据指示当前驾驶模式(当前状态数据指示与用户配置文件(255)关联的用户正在驾驶汽车)时,将选择特定的用户界面组件以包含在该用户界面区域中,或者不选择特定的用户界面组件以便不包含在该用户界面区域中。
用户界面适应管理器(260)可以包括用户界面适应引擎(264),其可以使用上下文数据(270)来调整用户界面区域(216),例如通过选择用户界面组件(234)以应用于相应的用户界面区域(216)。
用户界面适应管理器(260)可以以一种或多种不同方式来检索上下文数据(270)。例如,用户界面适应管理器(260)可以包括用户接口设备(210)上的组件,其可以收集上下文数据(270),并将其发送给在用户界面适应服务(240)中运行的用户界面适应管理器(260)的组件。用户界面适应管理器(260)可以从收集了数据的其它应用程序(例如,从应用程序(232)和/或数字助理(250))接收某些上下文数据(270)。可以通过其它方式检索某些上下文数据。
上下文数据(270)可以包括不同类型的数据,这些数据可以提供有关要显示的用户界面区域(216)的上下文信息,从而通知用户界面适应引擎(264)对该用户界面区域(216)的用户界面组件(234)的选择。例如,上下文数据(270)可以包括当前状态数据(272),该当前状态数据可以在计算机系统(200)中编码与当前用户界面区域(216)的呈现有关的当前状态的信息。这样的当前状态数据(272)可以包括:对用户界面适应引擎(264)选择用户界面区域(216)的用户界面组件(234)时的当前时间的状态进行编码的数据。另外,当前状态数据(272)可以包括对来自最近过去的状态进行编码的数据,该状态在时间上足够接近以指示当前状态。例如,指示在执行用户界面适应之前一秒钟正在活动使用单个应用程序的数据,可以指示在执行用户界面适应时仍在活动地使用单个应用程序。上下文数据(270)还可以包括历史数据(274),其可以对先前时间的历史信息进行编码。历史数据(274)是时间上足够远的数据,使得用户界面适应管理器(260)不使用历史数据(274)来指示:正在调整用户界面区域格式时的当前状态与历史数据(274)中指示的状态相同。
当前状态数据(272)可以是指示除以下状态之外的状态的数据:数字助理(250)的状态、将要呈现用户界面区域(216)的应用程序(232)的状态、或者正在被选择用户界面组件的用户界面区域(216)的状态。另外,当前状态数据(272)还可以包括指示以下状态的数据:要针对其显示用户界面区域(216)的数字助理(250)和/或应用程序(232)的状态。例如,当前状态数据(272)可以包括指示以下信息的电池数据:要在其上呈现用户界面区域(216)的用户接口设备(210)的电池中的当前充电水平。再举一个例子,当前状态数据(272)可以包括指示指定时区中的当前本地时间的本地时间数据,例如,将呈现的用户界面区域(216)所在的用户接口设备(210)的本地时间。再举一个例子,当前状态数据(272)可以包括当前浏览状态数据,其指示用户接口设备(210)和/或用户配置文件(255)对诸如网页的浏览数据的当前状态。再举一个例子,当前状态数据(272)可以包括以下信息的指示:如果有的话,应用程序(232)是用户接口设备(210)中的焦点(即,当前正在通过用户接口设备(210)的输出进行呈现,例如在扬声器或视觉显示器上输出)。再举一个例子,当前状态数据(272)可以包括对邮件应用程序或其它类别的应用程序(232)的当前使用的指示。此外,当前状态数据(272)可以指示与一个或多个设备或应用程序的交互程度。例如,如果用户接口设备(210)仅在没有最近用户输入的情况下输出音频,则交互程度可以较低,而如果最近在用户接口设备(210)上提供了大量用户输入动作(例如,以浏览音乐播放应用程序中的不同音轨(232)),则交互程度可以较高。例如,可以将这种交互程度量化为一段时间内用户输入动作的数量(例如,针对显示器(212)的用户输入动作)和/或以自然语言语音命令的形式向数字助理(250)进行的用户输入操作。再举一个例子,当前状态数据(272)可以指示幻灯片演示应用程序当前处于活动状态,并且针对用户接口设备(210)上的相关用户配置文件(255)而处于演示模式。
用户界面适应管理器(260)也可以使用历史数据(274)。历史数据(274)可以包括在特定时间段内针对当前状态数据(272)给出的相同类型的数据示例。历史数据(274)还可以包括指示以下信息的数据:响应于先前呈现的各个用户界面区域(216)而提供的用户输入。因此,历史数据(274)可以包括指示在呈现用户界面区域(216)时或紧接其之前的上下文数据的数据,其包括哪些用户界面组件包含在用户界面区域中、以及对该用户界面区域(216)的用户输入响应的指示。例如,用户输入响应可以是忽略用户界面区域(216),选择然后关闭用户界面区域(216),选择用户界面区域(216)然后采取一些措施,例如在用户界面区域(216)中选择用户界面控件,然后可能在随后显示的用户界面区域中选择其它用户界面控件(例如,在主题用户界面区域上的用户界面控件的选择之后和/或之前,用户输入进行一系列的用户界面控件的选择)。这样的历史数据(274)可以包括:关于呈现给相同用户配置文件(255)的用户界面区域(216)的历史数据,其与将呈现当前用户界面区域(216)的用户配置文件(255)相同。历史数据还可以包括:关于呈现给不同用户配置文件(255)的用户界面区域(216)的历史数据,其与将呈现当前用户界面区域(216)的用户配置文件(255)不同。
上下文数据(270)还可以包括设置数据(276)。设置数据(276)可以包括指示以下信息的数据:要呈现的用户界面区域(216)所针对的用户配置文件(255)的设置。设置数据(276)还可以包括指示用户界面区域(216)本身的设置的数据,例如用户界面区域(216)的优先级、以及用户界面区域(216)和/或将呈现的用户界面区域(216)的应用程序(232)的类别。例如,可以将应用程序(232)分类为娱乐应用程序、生产力应用程序、购物应用程序或某些其它类别的应用程序。
用户界面适应引擎(264)可以使用一个或多个适应模型(280)来处理上下文数据(270),并为对应的用户界面区域(216)选择一个或多个用户界面组件(234)。适应模型(280)可以包括用户界面组件(234)的指示,使得适应模型(280)中的指示之一的选择,触发在用户界面适应指令(219)中包括该用户界面组件(234)的指示。例如,用户界面适应引擎(264)可以使用机器学习适应模型(282)和/或基于规则的模型(284)。基于规则的模型可以包括:在选择用户界面组件(234)时,用户界面适应引擎(264)应用于上下文数据(270)的离散规则。例如,基于规则的模型(284)可以包含过滤规则,使得将一个或多个用户界面组件(234)从个人用户界面区域(216)的使用中过滤掉。例如,过滤规则可以在一段时间内,在被分类为娱乐应用程序的应用程序(232)所对应的用户界面区域(216)中禁止包括单独的用户界面控件。如果时间在该范围内并且用户界面区域(216)用于娱乐应用程序,则用户界面适应引擎(264)可以避免将该用户界面控件的指示选择包括在用户界面适应指令(219)中。类似地,规则可以考虑当前状态数据中的地理位置指示符(例如,城市名称、地址或纬度和经度坐标),并且可以指示:例如,当用户接口设备(210)处于特定的地理位置时(如全球定位系统数据或使用该用户接口设备(210)提供的其它定位数据所指示的),特定的用户界面组件(234)将用于该类别的用户界面区域。这种规则还可以应用于其它数据,例如设置数据(276)中的用户界面区域(216)的优先级或类别。
基于规则的模型(284)可以单独地应用,也可以与机器学习模型(282)组合地使用。例如,用户界面适应引擎(264)可以在用于用户界面区域(216)的基于规则的模型(284)中应用过滤规则,并且仅应用机器学习模型(282),使用用户界面区域(216)的上下文数据(270)从其余未过滤的用户界面组件(234)中进行选择。
机器学习模型(282)可以是各种类型的机器学习模型中的任何一种,例如决策树模型或人工神经网络模型。在一个例子中,机器学习模型(282)可以包括深度神经网络。可以使用历史数据(274)来训练或调整每个机器学习模型(282),而历史数据(274)可以用作训练数据。例如,历史数据(274)可以包括上面针对当前状态数据(272)和设置数据(276)所讨论的类型的历史上下文指示数据,其指示历史用户界面区域(216)的上下文。历史数据(274)还可以包括用于指示来自多个不同用户配置文件(255)的对显示的用户界面区域(216)的响应的数据。
在一个例子中,可以利用来自数字助理(250)的多个不同用户配置文件(255)的历史数据(274),来训练通用机器学习模型(282)。例如,这种训练可以包括:对历史数据(274)中的上下文指示数据进行操作,以生成针对多个不同用户界面区域(216)的结果。例如,可以将上下文指示数据转换为矢量,并可以使用当前机器学习模型(282)进行处理。这种处理的输出可以产生输出矢量,该输出矢量可以包括能够与现有识别的模式进行比较的模式。例如,一些这样的输出矢量模式可以指示用户参与某个类别的用户界面区域(216)中的单个用户界面控件的可能性很高,而其它输出矢量模式可以指示用户参与这种用户界面控件的可能性较小。可以将这种模式与输出矢量匹配的结果与对相应用户界面区域(216)的实际用户输入响应(如记录在历史数据(274)中的)进行比较。然后,可以调整机器学习模型(282),以解决通过使用机器学习模型(282)进行处理而预测的用户界面响应与响应于用户界面区域(216)而实际发生的用户界面响应(如历史数据(274)中所指示的)之间的差异。举一个例子,这种差异的解决可以使用机器学习错误校正技术,例如使用深度神经网络模型的反向传播来调整机器学习模型(282)的参数。也可以使用用于训练机器学习模型(282)的其它技术。
一旦训练了通用机器学习模型(282),就可以通过使用训练技术(例如,对于表示特定用户配置文件(255)的用户界面区域(216)的历史数据(274)使用反向传播的技术),将其个性化为单个用户配置文件(255)。这种个性化训练可以针对对应的用户配置文件(255),产生个性化的适应模型(280)。这种个性化适应模型(280)可以包括机器学习模型(282)和/或针对用户配置文件(255)个性化的基于规则的模型(284)。个性化的适应模型(280)可以存储在用户界面适应服务(240)中,用户界面适应引擎(264)可以访问它们以便将用户界面区域(216)呈现给相应的用户配置文件(255)。在具有针对用户配置文件(255)的个性化训练数据之前,可以使用通用适应模型(280)。
在用户界面适应服务(240)中使用经训练的适应模型(280)来为用户界面区域(216)选择用户界面组件(234)时,可以在用户接口设备(210)处接收用户输入,其指示要对相应的用户配置文件(255)执行上下文用户界面适应。例如,这可以包括:提供用户输入以选择设置,从而为一个或多个应用程序(232)提供上下文用户界面适应。作为响应,可以将上下文用户界面适应注册数据(290)从用户接口设备提供给相应的应用程序(232),并提供给用户界面适应服务(240)中的用户界面适应管理器(260)。例如,该注册数据(290)可以存储在应用程序(232)和/或用户界面适应服务(240)中。
应用程序(232)可以将计算机可读的用户界面适应请求(218)发送到用户界面适应服务(240),通知用户界面适应服务(240)存在要进行呈现的用户界面区域(216)。该用户界面适应请求(218)可以将用户界面适应服务(240)通知给将呈现的用户界面区域(216)所对应的一个或多个用户配置文件(255)。替代地,用户界面适应管理器(260)可以包括:要向其提供某种类型的用户界面区域(216)的用户配置文件(255)的注册列表。例如,用户界面适应管理器(260)可以包括针对每个应用程序(232)的用户配置文件(255)的列表,使得将作为来自应用程序(232)的通知的所有用户界面区域(216)都提供给该列表上的用户配置文件(255)。在那种情况下,应用程序(232)可以将用户界面区域(216)提供给用户界面适应管理器(260),指示用户界面适应管理器(260)将适应的通知发送给注册的用户配置文件(255)以接收来自该应用程序(232)的通知。在任一情况下,都可以将用于用户界面区域(216)和相应的用户配置文件(255)的数据提供给用户界面适应引擎(264)。可以针对不同的用户配置文件(255),对这种用户界面区域(216)进行单独地调整,同时考虑不同的用户配置文件(255)的不同上下文数据(270)。
在接收到用户界面适应请求(218)之后,用户界面适应引擎(264)可以接收应用于用户界面适应请求(218)的当前状态数据(272)和设置数据(276)。可以在针对该请求(218),使用适应模型(280)(例如,将针对其呈现对应用户界面区域(216)的相应用户配置文件(255)的通用或个性化的基于规则的模型(284)和/或机器学习模型(282))对该当前状态数据(272)和设置数据(276)进行操作。举一个例子,可以从用户界面适应服务(240)、一个或多个用户接口设备(210)和/或系统(200)中的其它计算机设备,检索当前状态数据(272)。用户界面适应引擎(264)可以将来自基于规则的模型(284)的过滤规则应用于用户界面区域(216)的当前状态数据(272)和设置数据(276)。如果不应用过滤规则,则可以使用机器学习模型(282)来处理当前状态数据(272)和可能的设置数据(276),从而得出结果。例如,该结果可以指示与要包括在用户界面区域(216)中的一个或多个用户界面组件(234)的一个或多个指示的集合相匹配的模式。所选择的用户界面组件(234)的指示可以包括在响应于用户界面适应请求(218)的用户界面适应指令(219)中。
用户界面适应服务(240)可以将用户界面适应指令(219)发送到将为其呈现用户界面区域(216)的应用程序(232)。应用程序(232)可以使用适应指令(219)来识别在用户界面适应指令(219)中引用的用户界面组件(234)。应用程序(232)可以访问所引用的用户界面组件(234),并使用这些组件来生成用户界面区域(216),其可以包括用于呈现用户界面区域(216)的计算机可读用户界面代码。应用程序可以使用来自应用程序(232)的用于用户界面区域(216)的用户界面代码,将用户界面区域(216)发送到要在显示器(212)上呈现并渲染的用户接口设备(210)。
替代地,在用户界面适应服务(240)有权访问用户界面组件(234)的实施例中,用户界面适应服务(240)可以生成用户界面区域(216)。在一些实施例中,用户界面适应服务(240)可以包括在要为其呈现用户界面区域(216)的应用程序(232)中,作为该应用程序的组成部分或者该应用程序(232)的插件。此外,在这些实施例中的任何一个中,上下文用户界面格式适应系统(200)的组件可以包括在同一计算设备上,和/或分布在彼此远离的不同计算设备上。例如,可以在单个用户接口设备(210)上包括用户界面适应服务(240)和/或应用程序服务(230)。
在呈现了用户界面区域(216)之后,可以监测响应于用户界面区域(216)的用户输入(例如,使用用户接口设备(210)上的用户界面适应管理器(260)的组件),并且可以将表示响应的用户输入(或缺少响应的用户输入)的数据提供回用户界面适应服务(240)。用户界面适应服务(240)可以将这种用户输入响应数据与用于单个用户界面区域(216)的其它上下文数据(270)相关联。可以使用这些数据,以利用诸如上述那些机器学习技术来进一步训练或调整机器学习模型(282)。例如,用于这种用户界面区域(216)的历史数据(274)可以用于调整与呈现用户界面区域(216)相同的用户配置文件(255)的个性化机器学习模型(282),和/或调整可以用于多个用户配置文件(255)的通用机器学习模型(282)。然后,可以使用所获得的更新的机器学习模型(282),利用本文讨论的技术来选择用于后续用户界面区域(216)的用户界面组件(234)。
B.使用上下文用户界面格式适应系统的示例技术
现在将继续参考图2并参考图3或图4来讨论可以使用图2的系统(200)执行的示例技术。参照图3并且仍然参考图2,用于上下文用户界面适应准备的技术(305)可以准备用户界面适应管理器(260)和相关联的数据存储,以在运行时执行上下文用户界面适应。可以在使用上下文用户界面适应对用户界面适应请求(218)进行运行时处理之前执行这些准备动作(305),并且可以在运行时上下文用户界面适应期间继续执行。另外,可以彼此并行和/或串联地执行这些准备动作(305),并且可以与系统(200)的组件执行的其它动作并行地执行这些准备动作(305)。例如,准备(305)可以包括:接收和处理(320)来自应用程序(232)的注册数据(290),并接收和处理(310)来自用户配置文件(255)的注册数据(290),如上所述。准备(305)还可以包括:定义(325)用户界面组件(234)。例如,这可以通过接收和处理用户输入,针对可以在用户界面区域(216)中使用的每一个用户界面组件(234),来选择和/或产生计算机可读指令。这可以包括此类指令的手动输入和/或自动生成,例如手动输入或自动生成用于定义用户界面组件(234)(例如,布局、静态文本和用于指定类型的用户界面区域的用户界面控件(216))的计算机源代码指令。
准备(305)还可以包括:生成和完善(330)适应模型(280),以用于上下文用户界面适应。例如,这可以包括:定义基于规则的模型(284)和/或在机器学习模型(282)上执行机器学习技术。如上所述,定义适应模型(280)可以包括:将用户界面组件(234)的指示符和用户界面区域的类型指示符(216)输入到适应模型(280)中,使得可以选择适当的相应适应模型(280)并用于相应类型的用户界面区域(216),从而适应模型(280)可以引用使用适应模型(280)选择的用户界面组件(234)。准备(305)还可以包括:收集(340)用户界面适应引擎(264)在选择要在用户界面区域(216)中使用的用户界面组件(234)时使用的上下文数据(270)。虽然可以在用户界面区域(216)的运行时处理之前收集一些上下文数据(270)(例如,历史数据(274)和设置数据(276)),但也可以在运行时收集其它上下文数据(270)(例如,当前状态数据(272))(例如,在时间上足够接近以指示在处理用户界面适应请求(218)时的上下文)),如下所述。
现在参照图4并且仍然参考图2,将讨论用于运行时用户界面处理(400)的动作。为了方便和清楚说明起见,将图4的动作示出为用于处理单个用户界面适应请求(218)的例子。然而,系统(200)可以针对多个不同的应用程序(232),彼此串联和/或并联地处理多个不同的用户界面适应请求(216),并且这种处理可以不同于该特定示例。例如,可以针对单个对应的用户配置文件(255)和/或多个用户配置文件(255),使用当前状态数据(272)同时处理多个用户界面适应请求(218)。
运行时用户界面处理(400)的动作可以包括:接收(410)诸如来自应用程序(232)的用户界面区域请求。上下文用户界面格式适应系统(200)可以判断(415)是否要针对用户界面区域(216)使用上下文用户界面适应,例如通过分析对用户界面区域(216)的请求和/或注册数据(290)中的选择加入数据。如果上下文用户界面适应不用于用户界面区域(216),则可以生成(420)用户界面区域(216),或者如果已经生成则选择用户界面区域(216),这可以导致在应用程序(232)的用户接口设备(210)上呈现(430)用户界面区域(216),而无需调整用户界面区域(216)。例如,呈现(430)可以包括:向用户界面显示组件发送命令以呈现用户界面区域(216),还可以包括检索数据以显示来自应用程序(232)和/或系统(200)中的某个其它组件的用户界面区域(216)。
如果系统(200)确定(415)上下文用户界面适应将用于用户界面区域(216),则可以产生用户界面适应请求(218),并将其发送给用户界面适应管理器(260)中的用户界面适应引擎(264)。用户界面适应引擎(264)可以接收上下文数据(270),例如接收(450)与用户界面区域(216)的当前上下文环境有关的当前状态数据(272)。可以在接收(410)用户界面适应请求(216)之前,可能已经接收到一些上下文数据(270)。用户界面适应引擎(264)可以分析(460)上下文数据(270)、以及适用于各个用户界面请求(218)和相应用户界面区域(216)的适应模型(280)。使用该分析的结果,用户界面适应引擎(264)可以执行(470)用户界面格式适应,其包括确定哪些用户界面组件(234)要包括在针对所请求的用户界面区域(216)的计算机可读用户界面适应指令(219)中。
用户界面适应服务(240)可以向相应的应用程序(232)发送(480)用户界面适应指令(219)。应用程序(232)可以使用用户界面组件(234)来生成用户界面区域(420),并且可以将生成的用户界面区域(420)发送到用户接口设备(210)以在显示器(212)上进行呈现。例如,该呈现(430)可以包括:使用渲染引擎来处理该用户界面区域(216)的代码,并产生信号以发送到使用渲染组件和用户接口设备(210)的显示组件进行显示的显示器,其中将在用户接口设备(210)上显示用户界面区域(216)。这样的显示可以使用在显示设备(210)上运行的应用组件(例如,通用Web浏览器和/或应用程序(232)的特定客户端部分)。
如上所述,替代技术可以用于本文所讨论的用户界面适应技术。例如,可以在单个设备上使用应用程序来执行上下文用户界面适应,其中用户界面适应服务则作为该应用程序的一部分包含在内。在其它实施例中,如图2中所示,单个用户界面适应服务(240)可以用于为多个不同的应用程序(232)提供适应服务,所述多个不同的应用程序可以在多个不同的设备上运行,其中一些在用户界面设备(210)上运行和/或与用户接口设备(210)远程地运行。
C.用户界面区域示例
将讨论用户界面区域类型的不同实例的一些示例,提供适合于产生不同用户界面区域的特定示例类型的用户界面区域。现在参考图5,示出了第一电子邮件通知用户界面区域(510)的例子。第一电子邮件通知用户界面区域(510)包括用户界面控件格式(530),该格式包括位于用户界面区域(510)底部的操作按钮形式的用户界面控件(520)。可以通过用户输入选择“打开”标签的按键,以打开引用的电子邮件。可以通过用户输入选择标记为“消除”的另一个按钮以消除该通知。在一个例子中,该第一电子邮件通知用户界面区域(510)可以是该类型的用户界面区域的缺省实例格式。
参照图6,示出了第二电子邮件通知用户界面区域(610)。该用户界面区域(610)包括用户界面控件格式(630),其包括位于用户界面区域底部的操作按钮形式的三个用户界面控件(620)。这些用户界面控件(620)包括上面讨论的“打开”和“取消”按钮。另外,用户界面控件(620)包括“请勿打扰”按钮,可以通过用户输入来选择该按钮以取消通知并打开“请勿打扰”设置,这可以防止将来的通知的显示。举一个例子,当上下文数据(270)指示相应的用户配置文件(255)正在呈现时(这可以由与正在显示用户界面区域(610)的电子邮件应用程序不同的应用程序来完成),第二电子邮件通知用户界面区域(610)可以是用户界面区域适应的结果。在该例子中,只要幻灯片演示应用程序处于演示模式,就可以保留请勿打扰设置。
参照图7,该图示出了第一呼叫用户界面区域(710)。该用户界面区域(710)包括包含用户界面控件(720)的用户界面控件格式(730)。用户界面控件(720)可以包括三个按钮:可以选择“常规呼叫”按钮以进行常规的免提电话呼叫,可以选择免提按钮以进行免提电话呼叫,可以选择取消功能以消除第一呼叫用户界面区域(710)。举一个例子,该第一呼叫用户界面区域(710)可以是缺省用户界面区域。
参照图8,该图示出了第二呼叫用户界面区域(810)。例如,第二呼叫用户界面区域(810)可以是当上下文数据(270)指示用户正在驾驶时选择的调整的用户界面区域。例如,用户界面适应引擎(264)可以使用利用适应模型(280)对来自用户接口设备(210)的全球定位系统数据进行分析的结果,或者通过确定智能手机正在使用与汽车中计算机系统的近距离通信,来做出该驾驶确定。第二呼叫用户界面区域(810)可以包括用户界面控件格式(830),该用户界面控件格式(830)可以包括两个用户界面控件,即上面讨论的“免提呼叫”按钮和“取消”按钮。除了省略“常规呼叫”按钮之外,用户界面控件格式(830)可以包括调整“免提呼叫”按钮以大于用户界面控件格式(730)。因此,如果系统检测到车辆的驾驶模式用于用户配置文件(255),则可以使用于图7-8所示的用户界面的呼叫类型的用户界面适应于第二呼叫用户界面区域(810)。这样的用户界面可以使用户输入更容易呼叫免提电话,而不是在开车时打普通电话。
图5-8的例子仅仅是举例。从本文的其余部分的讨论中显而易见的是,还存在使用上下文数据(270)(包括当前状态数据(272))来适应不同类型的用户界面区域的许多其它方式。作为另一示例,当显示设备处于工作地点时,用于工作相关通知的用户界面区域可以包括诸如主题行之类的细节,而当设备不在工作地点时(例如,在家或在餐厅时),省略细节。在用户界面区域的离开工作位置适应中,用户界面区域可以包括可以被选择以显示省略的细节的按钮,但是在用户界面区域的工作位置适应中可以省略该按钮。可以根据全球定位系统数据、或者设备正在与之通信的本地计算机网络的数据,来确定这种位置信息。
III.上下文用户界面适应技术
现在将讨论几种用户界面适应技术。这些技术中的每一种都可以在计算环境中执行。例如,每种技术都可以在计算机系统中执行,该计算机系统包括至少一个处理器和存储器,存储器包括在其上存储的指令,当指令由至少一个处理器执行时,导致至少一个处理器执行该技术(存储器存储指令(例如,目标代码),并且当处理器执行这些指令时,处理器执行该技术)。类似地,一个或多个计算机可读存储器可以在其上体现计算机可执行指令,当所述计算机可执行指令由至少一个处理器执行时,使至少一个处理器执行该技术。下面讨论的技术可以至少部分地由硬件逻辑来执行。可以以本文所讨论的未排除的任何组合,对下面的每种技术中所讨论的特征进行彼此组合,其包括:将参考附图所讨论的技术的特征组合在参考不同附图所讨论的技术中。而且,计算机系统可以包括用于以不同的组合来执行在这些技术的上下文中讨论的每个动作的单元。
参照图9,将描述上下文用户界面适应技术。该技术可以包括:接收(910)在计算机显示器上显示用户界面区域,以用于在计算机系统中显示计算机应用程序的请求。响应于接收到进行显示的请求,该技术可以包括:调整(920)用户界面区域的一个或多个用户界面控件的用户界面控件格式,以适应计算机系统中的当前上下文用户界面活动状态。用户界面控件格式的这种适应(920)可以产生指示用户界面区域的调整的用户界面控件格式的用户界面适应指令。用户界面控件格式的这种适应(920)可以使用表示计算机系统中的当前上下文用户界面活动状态的数据。此外,当前上下文用户界面活动状态可以是显示的计算机应用程序的状态以外的状态,并且,其还可以是:显示用户界面区域的应用程序的状态以外的状态、显示执行适应(920)的应用程序的状态以外的状态、以及与执行通过选择用户界面区域的用户界面控件而触发的动作的应用程序的状态不同的状态。该技术还可以包括:在生成(930)具有用户界面适应指令中指示的调整的用户界面控件格式的用户界面区域时,使用用户界面适应指令。可以对用户界面的呈现进行控制,使得针对计算机系统中的显示的计算机应用程序,在计算机显示器上以调整的用户界面控件格式来呈现(940)用户界面区域。
用户界面区域的用户界面控件格式的调整(920)可以包括:选择一个或多个用户界面控件,以包含在用户界面区域中。例如,用户界面区域的用户界面控件格式的调整(920)可以包括:从一组可用的用户界面组件中选择一个用户界面组件子集,以包含在用户界面区域中。该组可用的用户界面组件可以包括未包含在该用户界面组件子集中的其它用户界面组件。此外,所述适应指令可以包括将用户界面组件子集包含在用户界面区域中的一个或多个指令。
用户界面控件格式的调整(920)可以包括:使用用户界面适应模型来处理表示计算机系统中的当前上下文用户界面活动状态的数据,以选择用于包含在用户界面区域中的一个或多个用户界面组件。该模型可以包括机器学习模型和/或基于规则的模型。
用户界面控件格式的调整(920)可以包括:通过在计算机系统中运行的用户界面适应管理器来调整用户界面控件格式。当前上下文用户界面活动状态可以是适应管理器在其中运行的应用程序的状态以外的状态。运行适应管理器的应用程序可以是与显示的应用程序不同的应用程序,或者运行适应管理器的应用程序可以是显示的应用程序。
该技术可以包括:经由在计算机系统中运行的用户界面管理器,使用计算机系统中的当前上下文用户界面活动状态,来适应多个计算机应用程序的用户界面区域,其中用户界面区域的适应包括用户界面区域的用户界面控件格式的调整。
用户界面区域可以是来自显示的应用程序的通知的用户界面区域。
该技术还可以包括:接收用户输入,该用户输入在所显示的用户界面区域中选择用户界面控件,并通过经由计算机系统中的显示计算机应用程序执行所请求的动作来响应于用户输入的接收。
此外,计算机系统中的当前上下文用户界面活动状态可以包括计算机系统中的上下文用户界面活动状态,该状态特定于要向其呈现用户界面区域的用户配置文件。
参照图10,该图描述了另一种上下文用户界面适应技术。该技术可以包括:接收(1010)使计算机系统中的计算机应用程序里的计算机显示器上的用户界面区域适应当前上下文用户界面活动状态的请求。响应于接收到(1010)进行适应的请求,该技术可以包括:调整(1020)用户界面区域的用户界面控件格式,以适应计算机系统中的当前上下文用户界面活动状态。这种适应(1020)可以包括:从一组可用的用户界面控件中选择一个用户界面控件的子集以包含在用户界面区域中。该组可用的用户界面控件可以包括未包含在该用户界面控件的子集中的其它用户界面控件。所述用户界面控件的子集的选择可以使用表示计算机系统中的当前上下文用户界面活动状态的数据,其中当前上下文用户界面活动状态是所述计算机应用程序的状态以外的状态。图10的技术还可以包括:向计算机应用程序发送(1030)用户界面适应指令。该适应指令可以包括:在用户界面区域中包含所述用户界面控件的子集以显示在计算机系统中的计算机显示器上的一个或多个指令。
用户界面控件格式的调整(1020)可以包括:使用用户界面适应模型来处理表示计算机系统中的当前上下文用户界面活动状态的数据,以选择用于包含在用户界面区域中的一个或多个用户界面组件,其中用户界面适应模型包括机器学习模型和基于规则的模型中的一个或多个。
该技术可以包括:经由计算机系统中运行的用户界面管理器,使用计算机系统中的当前上下文用户界面活动状态,来调整多个计算机应用程序的用户界面区域。所述多个用户界面区域的这种调整可以包括上面讨论的用户界面区域的用户界面控件格式的调整(1020)。
现在参照图11,该图将描述另一种上下文用户界面适应技术。该技术可以包括:接收(1110)针对在计算机系统中的显示的计算机应用程序,在计算机显示器上显示一种类型的用户界面区域的第一用户界面区域的第一请求。响应于接收到(1110)进行显示的第一请求,该技术可以包括:执行(1120)所述类型的用户界面区域的一个或多个用户界面控件的用户界面控制格式的第一调整,以适应计算机系统中的第一当前上下文用户界面活动状态。用户界面控件格式的第一调整可以产生指示所述类型的用户界面区域的用户界面控件格式的第一用户界面适应指令,其中第一用户界面适应指令适于适应第一当前上下文用户界面活动状态。用户界面控件格式的第一调整可以使用表示计算机系统中的第一当前上下文用户界面活动状态的数据,并且其中第一当前上下文用户界面活动状态是所显示的计算机应用程序的状态以外的状态。图11的技术还可以包括:使用第一用户界面适应指令,以第一用户界面适应指令中指示的用户界面控件格式的第一调整来生成所述类型的用户界面区域的第一用户界面区域。可以对所生成的第一用户界面区域的呈现进行控制,使得针对计算机系统中的所显示的计算机应用程序,在在计算机显示器上呈现(1140)所生成的第一用户界面区域。可以接收(1160)针对在计算机系统中的计算机应用程序,在计算机显示器上显示第二用户界面区域的第二请求。响应于接收到(1160)进行显示的第二请求,可以执行(1170)所述类型的用户界面区域的一个或多个用户界面控件的用户界面控件格式的第二调整,以在第一当前上下文用户界面活动状态之后的时间,适应计算机系统中的第二当前上下文用户界面活动状态。用户界面控件格式的第二调整可以产生指示所述类型的用户界面区域的用户界面控件格式的第二用户界面适应指令,其中第二用户界面适应指令适于适应第二当前上下文用户界面活动状态。用户界面控件格式的第二调整可以使用表示计算机系统中的第二当前上下文用户界面活动状态的数据,并且其中第二当前上下文用户界面活动状态是所显示的计算机应用程序的状态以外的状态。第二用户界面适应指令可以与第一用户界面适应指令不同,可以使用第二用户界面适应指令以第二用户界面适应指令中指示的用户界面控件格式的第二调整来生成(1180)所述类型的用户界面区域的第二用户界面区域。用户界面控件格式的第二调整可以与用户界面控件格式的第一调整不同。可以对所生成的第二用户界面区域的呈现进行控制,使得计算机系统针对计算机系统中的显示的计算机应用程序,在计算机显示器上呈现(1190)生成的第二用户界面区域。
在图11的技术中,第一用户界面区域和第二用户界面区域之间的差异,可以通过第一当前上下文用户界面活动状态和第二当前上下文用户界面活动状态之间的差异来决定。可以对该方法、计算机系统和/或存储器进行配置,使得第一用户界面区域和第二用户界面区域不同,但是如果第一当前上下文用户界面活动状态和第二当前上下文用户界面活动状态是相同的,则第一用户界面区域和第二用户界面区域相同。
虽然利用特定于结构特征和/或方法动作的语言来描述了本发明主题,但应当理解的是,所附权利要求书中定义的主题并不是必需限于上面所描述的这些特定特征或动作。相反,只是将上面所描述的特定特征和动作公开成实现本发明的示例形式。

Claims (10)

1.一种计算机系统,其包括:
至少一个处理器;以及
存储器,其包括存储在其上的指令,当所述指令由至少一个处理器执行时,使至少一个处理器执行使用户界面区域适应当前上下文用户界面活动状态的动作,其中所述动作包括:
接收针对在所述计算机系统中的显示的计算机应用程序,在计算机显示器上显示所述用户界面区域的请求;
响应于接收到进行显示的所述请求,调整所述用户界面区域的一个或多个用户界面控件的用户界面控件格式,以适应所述计算机系统中的当前上下文用户界面活动状态,其中所述用户界面控件格式的所述调整用于产生指示所述用户界面区域的所调整的用户界面控件格式的用户界面适应指令,其中所述用户界面控件格式的所述调整使用表示所述计算机系统中的所述当前上下文用户界面活动状态的数据,并且其中所述当前上下文用户界面活动状态是所述显示的计算机应用程序的状态以外的状态,其中,所述用户界面区域的所述用户界面控件格式的所述调整包括:选择一个或多个用户界面控件以包含在所述用户界面区域中;
使用所述用户界面适应指令,生成具有所述用户界面适应指令中指示的所调整的用户界面控件格式的所述用户界面区域;以及
针对所述计算机系统中的所述显示的计算机应用程序,控制在所述计算机显示器上以所调整的用户界面控件格式来呈现所述用户界面区域。
2.根据权利要求1所述的计算机系统,其中,所述用户界面控件格式的所述调整包括:从一组可用的用户界面控件中选择用户界面控件的子集,以包含在所述用户界面区域中,其中,所述一组可用的用户界面控件包括未包括在所述用户界面控件的子集中的其它用户界面控件,其中,所述适应指令包括将所述用户界面控件的子集包括在所述用户界面区域中的一个或多个指令。
3.根据前述权利要求中的一项或多项所述的计算机系统,其中,所述用户界面控件格式的所述调整包括:使用用户界面适应模型来处理表示所述计算机系统中的所述当前上下文用户界面活动状态的所述数据,以选择用于包含在所述用户界面区域中的一个或多个用户界面组件。
4.根据权利要求3所述的计算机系统,其中,所述模型包括机器学习模型。
5.根据权利要求3所述的计算机系统,其中,所述模型包括基于规则的模型。
6.根据前述权利要求中的一项或多项所述的计算机系统,其中,所述用户界面控件格式的所述调整包括:通过在所述计算机系统中运行的用户界面适应管理器来调整所述用户界面控件格式,其中,所述当前上下文用户界面活动状态是所述适应管理器在其中运行的应用程序的状态以外的状态。
7.根据前述权利要求中的一项或多项所述的计算机系统,其中,所述计算机系统中的所述当前上下文用户界面活动状态包括所述计算机系统中的特定于用户配置文件的上下文用户界面活动状态,其中将针对所述用户配置文件来呈现所述用户界面区域。
8.一种使用户界面区域适应当前上下文用户界面活动状态的计算机实现的方法,包括:
接收使计算机系统中的计算机应用程序里的计算机显示器上的用户界面区域适应当前上下文用户界面活动状态的请求;
响应于接收到进行适应的所述请求,调整所述用户界面区域的用户界面控件格式,以适应所述计算机系统中的当前上下文用户界面活动状态,其中所述用户界面控件格式的所述调整包括:从一组可用的用户界面控件中选择用户界面控件的子集以包含在所述用户界面区域中,其中所述一组可用的用户界面控件包括未包含在所述用户界面控件的子集中的其它用户界面控件,其中使用表示所述计算机系统中的当前上下文用户界面活动状态的数据来选择所述用户界面控件的子集,并且所述当前上下文用户界面活动状态是所述计算机应用程序的状态以外的状态;以及
向所述计算机应用程序发送用户界面适应指令,其中所述适应指令包括:在所述用户界面区域中包括所述用户界面控件的子集以显示在所述计算机系统中的计算机显示器上的一个或多个指令。
9.根据权利要求8所述的方法,其中,所述用户界面控件格式的所述调整包括:使用用户界面适应模型来处理表示所述计算机系统中的所述当前上下文用户界面活动状态的所述数据,以选择用于包含在所述用户界面区域中的一个或多个用户界面组件,其中所述用户界面适应模型包括机器学习模型和基于规则的模型中的一个或多个。
10.具有在其上体现的计算机可执行指令的一个或多个计算机可读存储器,当所述计算机可执行指令由至少一个处理器执行时,使至少一个处理器执行使用户界面区域适应当前上下文用户界面活动状态的动作,其中所述动作包括:
接收针对在计算机系统中的显示的计算机应用程序,在计算机显示器上显示一种类型的用户界面区域的第一用户界面区域的第一请求;
响应于接收到进行显示的所述第一请求,执行所述类型的用户界面区域的用户界面控件格式的第一调整,以适应所述计算机系统中的第一当前上下文用户界面活动状态,其中所述用户界面控件格式的所述第一调整用于产生指示所述类型的用户界面区域的所述用户界面控件格式的第一用户界面适应指令,其中所述第一用户界面适应指令适于适应所述第一当前上下文用户界面活动状态,所述用户界面控件格式的所述第一调整使用表示所述计算机系统中的所述第一当前上下文用户界面活动状态的数据,并且其中所述第一当前上下文用户界面活动状态是所述显示的计算机应用程序的状态以外的状态,其中,所述用户界面控件格式的所述第一调整包括:选择一个或多个用户界面控件以包含在所述用户界面区域中;
使用所述第一用户界面适应指令,以所述第一用户界面适应指令中指示的所述用户界面控件格式的所述第一调整来生成所述类型的用户界面区域的所述第一用户界面区域;以及
针对所述计算机系统中的所述显示的计算机应用程序,控制所生成的第一用户界面区域在所述计算机显示器上的呈现;
接收针对在所述计算机系统中的所述显示的计算机应用程序,在所述计算机显示器上显示所述类型的用户界面区域的第二用户界面区域的第二请求;
响应于接收到进行显示的所述第二请求,执行所述类型的用户界面区域的所述用户界面控件格式的第二调整,以在所述第一当前上下文用户界面活动状态之后的时间,适应所述计算机系统中的第二当前上下文用户界面活动状态,其中所述用户界面控件格式的所述第二调整用于产生指示所述类型的用户界面区域的所述用户界面控件格式的第二用户界面适应指令,其中所述第二用户界面适应指令适于适应所述第二当前上下文用户界面活动状态,所述用户界面控件格式的所述第二调整使用表示所述计算机系统中的所述第二当前上下文用户界面活动状态的数据,并且其中所述第二当前上下文用户界面活动状态是所述显示的计算机应用程序的状态以外的状态;
使用所述第一用户界面适应指令以外的所述第二用户界面适应指令,以所述第二用户界面适应指令中指示的所述用户界面控件格式的所述第二调整来生成所述类型的用户界面区域的所述第二用户界面区域,其中与在所述第一用户界面区域中相比,在所述第二用户界面区域中不同地调整所述用户界面控件格式;以及
针对所述计算机系统中的所述显示的计算机应用程序,控制所生成的第二用户界面区域在所述计算机显示器上的呈现。
CN201980044559.5A 2018-07-02 2019-03-28 基于上下文状态的用户界面格式适应 Pending CN112384888A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/024,992 US10254945B1 (en) 2018-07-02 2018-07-02 Contextual state-based user interface format adaptation
US16/024,992 2018-07-02
PCT/US2019/024446 WO2020009733A1 (en) 2018-07-02 2019-03-28 Contextual state-based user interface format adaptation

Publications (1)

Publication Number Publication Date
CN112384888A true CN112384888A (zh) 2021-02-19

Family

ID=65998071

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980044559.5A Pending CN112384888A (zh) 2018-07-02 2019-03-28 基于上下文状态的用户界面格式适应

Country Status (4)

Country Link
US (2) US10254945B1 (zh)
EP (1) EP3818434A1 (zh)
CN (1) CN112384888A (zh)
WO (1) WO2020009733A1 (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10200237B1 (en) 2018-05-09 2019-02-05 Microsoft Technology Licensing, Llc Contextual state-based user interface notification triggering
US10254945B1 (en) * 2018-07-02 2019-04-09 Microsoft Technology Licensing, Llc Contextual state-based user interface format adaptation
US11429266B2 (en) * 2020-12-03 2022-08-30 Sap Se Master data-dependent user interface adaptation
US20220353304A1 (en) * 2021-04-30 2022-11-03 Microsoft Technology Licensing, Llc Intelligent Agent For Auto-Summoning to Meetings
US11934974B2 (en) * 2021-10-05 2024-03-19 Bank Of America Corporation Intelligent integrated remote reporting system
WO2023235659A1 (en) * 2022-05-31 2023-12-07 Sonos, Inc. Contextual user interface element detection

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103997510A (zh) * 2013-02-14 2014-08-20 福特全球技术公司 用于人机界面的系统和方法
CN106716354A (zh) * 2014-09-24 2017-05-24 微软技术许可有限责任公司 使用户界面适应交互准则和组件特性
US20170201592A1 (en) * 2016-01-13 2017-07-13 Sap Se Contextual user experience
CN107256109A (zh) * 2017-05-27 2017-10-17 北京小米移动软件有限公司 信息显示方法、装置及终端

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9612847B2 (en) 2008-02-05 2017-04-04 Microsoft Technology Licensing, Llc Destination list associated with an application launcher
US8972878B2 (en) 2009-09-21 2015-03-03 Avaya Inc. Screen icon manipulation by context and frequency of Use
US20120143694A1 (en) 2010-12-03 2012-06-07 Microsoft Corporation Using behavioral data to manage computer services
US8468164B1 (en) 2011-03-09 2013-06-18 Amazon Technologies, Inc. Personalized recommendations based on related users
US9854084B2 (en) 2013-03-06 2017-12-26 Google Llc Contextual alarm and notification management
US9031812B2 (en) 2014-02-27 2015-05-12 Fitbit, Inc. Notifications on a user device based on activity detected by an activity monitoring device
US10136247B2 (en) 2015-10-20 2018-11-20 Microsoft Technology Licensing, Llc Physical and virtual phone mobility
US10200237B1 (en) * 2018-05-09 2019-02-05 Microsoft Technology Licensing, Llc Contextual state-based user interface notification triggering
US10254945B1 (en) * 2018-07-02 2019-04-09 Microsoft Technology Licensing, Llc Contextual state-based user interface format adaptation

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103997510A (zh) * 2013-02-14 2014-08-20 福特全球技术公司 用于人机界面的系统和方法
CN106716354A (zh) * 2014-09-24 2017-05-24 微软技术许可有限责任公司 使用户界面适应交互准则和组件特性
US20170201592A1 (en) * 2016-01-13 2017-07-13 Sap Se Contextual user experience
CN107256109A (zh) * 2017-05-27 2017-10-17 北京小米移动软件有限公司 信息显示方法、装置及终端

Also Published As

Publication number Publication date
US10254945B1 (en) 2019-04-09
US10444970B1 (en) 2019-10-15
EP3818434A1 (en) 2021-05-12
WO2020009733A1 (en) 2020-01-09

Similar Documents

Publication Publication Date Title
US10545648B2 (en) Evaluating conversation data based on risk factors
US11409961B2 (en) System for minimizing repetition in intelligent virtual assistant conversations
US10444970B1 (en) Contextual state-based user interface format adaptation
US10809876B2 (en) Virtual assistant conversations
US10200237B1 (en) Contextual state-based user interface notification triggering
US11729316B1 (en) Call center interface
US10832274B1 (en) Automated teller machine (ATM) interface
US11455600B1 (en) Mobile device interface
US11546283B2 (en) Notifications based on user interactions with emails
US11016640B2 (en) Contextual user profile photo selection
WO2018057203A1 (en) Notifications of action items in messages
US20150135101A1 (en) Function based interface
US20150135067A1 (en) Intelligent data presentation
US11436265B2 (en) System for presenting tailored content based on user sensibilities
US20150130811A1 (en) Banking interface
CN107431732B (zh) 一种计算机实现的方法、提供扫描选项的系统和存储介质
CN112749214A (zh) 交互内容展示方式的更新方法、装置、介质及电子设备
US11809472B2 (en) Service providing system, information processing apparatus, information processing method
EP4085352A1 (en) Controlling application use based on context

Legal Events

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